Dean Herbert
1c4e02fae8
Explicitly order default skins in dropdown to get correct order
2022-09-18 00:12:43 +09:00
Dean Herbert
d368f37c3a
Remove redundant second Current
set operation
2022-09-13 13:50:59 +09:00
Dean Herbert
f31deaef7c
Simplify skin bindable flow
...
Now, nothing touches the configuration apart from `OsuGame`, making
everything else flow better and avoid weird cyclic set bugs.
Closes https://github.com/ppy/osu/issues/20234 .
2022-09-12 19:51:50 +09:00
Dean Herbert
d88fd8a5b0
Allow searching for "skins" to find current skin setting
2022-07-07 18:26:04 +09:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dan Balasescu
3a90aa0b9b
Fix code styling
2022-06-08 17:57:59 +09:00
theangryepicbanana
6c05329144
Close #5820 (Ability to delete a single skin)
2022-06-07 18:01:40 -04:00
Dean Herbert
7c97719db1
Move Schedule
to only drawable pieces
2022-05-29 21:28:09 +09:00
Dean Herbert
c7570fbce5
Fix potential ObjectDisposedException
on realm notification in SkinSection
2022-05-29 15:15:03 +09:00
Dean Herbert
2f18c512cd
Convert SkinEditorOverlay
to an OverlayContainer
to allow it to block input
2022-03-21 17:33:56 +09:00
Dean Herbert
a2ef086c1f
Fix potential crash on rare incorrect firing of skin dropdown update methods
...
As brought to light by https://gist.github.com/smoogipoo/56eda7ab56b9d1966556f2ca7a80a847 .
There's a chance that the dropdown is not populated by the time
`updateSelectedSkinFromConfig` is fired via an external means (config
changes).
2022-03-09 01:08:13 +09:00
Dean Herbert
45636ce04b
Remove collection ToLive
helper method to avoid confusion
2022-01-26 18:26:37 +09:00
Dean Herbert
d1a2256262
Refactor SkinSection
to avoid unnecessary realm queries
2022-01-26 17:48:11 +09:00
Dean Herbert
cd71ec0edd
Remove ILive<>
interface (and use abstract Live<>
instead)
2022-01-26 13:38:56 +09:00
Dean Herbert
d7342880f5
Update remaining cases of clashes with realm.Write
and realm.RegisterForNotifications
2022-01-25 13:09:48 +09:00
Dean Herbert
6eb2c28e41
Rename RealmContextFactory
to RealmAccess
2022-01-24 20:38:07 +09:00
Dean Herbert
40aa873190
Rename register methods to better explain their purpose
2022-01-24 14:37:36 +09:00
Dean Herbert
e9e3e024a1
Update all usages of QueryAsyncWithNotifications
to use new Register
pathway
2022-01-23 20:28:04 +09:00
Dean Herbert
1f157d729d
Update existing subscriptions to new style
...
Fix missing detach calls in `MusicController`
2022-01-21 20:05:03 +09:00
Dean Herbert
441b7baa93
Provide a realm factory to usages of ToLive
/RealmLive
2021-12-14 14:26:34 +09:00
Dean Herbert
e855a49833
Add test coverage of default skin edit and export
2021-12-02 14:01:18 +09:00
Dean Herbert
0a14acfd83
Fix incorrect conditional on export/mutate feasability of skin
2021-12-02 13:41:58 +09:00
Dean Herbert
c82195390f
Update usage of SubscribeForNotifications
2021-12-02 13:24:16 +09:00
Dean Herbert
8ce7467e97
Fix ordering of skins in dropdown being reverse of expected
2021-12-01 12:50:47 +09:00
Dean Herbert
6877867467
Make default fallback logic more robust
2021-11-29 18:28:25 +09:00
Dean Herbert
f6a3709060
Store default skins to database
2021-11-29 18:28:25 +09:00
Dean Herbert
c629a7a36f
Fix random selection and avoid using legacy events for handling skin import/deletion
2021-11-29 18:28:25 +09:00
Dean Herbert
744a5b33f5
Rewrite SkinSection
to use realm subscriptions and databased defaults
2021-11-29 18:28:25 +09:00
Dean Herbert
3db5646fa8
Create Guid constants for system skins (and store skin choice to configuration as guid)
2021-11-29 18:28:25 +09:00
Dean Herbert
e2ebcf7a26
Remove unnecessary manager parameter
...
Confused why I added this in the first place..
2021-11-25 18:36:03 +09:00
Dean Herbert
cc1b91e4bd
Split out legacy model export logic into LegacyModelExporter
classes
2021-11-25 16:41:12 +09:00
Dean Herbert
729f681938
Update cases where equality can be used instead of primary key equality
2021-11-24 12:49:57 +09:00
Dean Herbert
54f72d68ca
Revert weird event flow in model manager/importers
2021-11-05 19:12:49 +09:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Dean Herbert
59202d27c7
Add some missing labels
2021-10-12 15:09:59 +09:00
Dean Herbert
8285f065c2
Reorganise gameplay settings into more sections
2021-10-12 14:58:43 +09:00
Dean Herbert
1d3d67c5f1
Move gameplay cursor settings to gameplay section
2021-10-12 13:56:10 +09:00
Bartłomiej Dach
855a74b8a0
Adjust vertical spacings in individual subsections
2021-10-10 00:34:11 +02:00
kj415j45
e26ccf786e
code style format
2021-08-14 11:04:38 +08:00
kj415j45
61502e977a
Add SkinSettingsStrings
2021-08-12 12:34:08 +08:00
Bartłomiej Dach
986910a7e4
Annotate dependency as possibly-null
2021-07-22 22:43:35 +02:00
Dean Herbert
9c4fbf45e9
Add the ability to enter and exit the skin editor via on-screen buttons
2021-07-20 19:36:12 +09:00
Dean Herbert
8a97e2e28d
Update LocalisedString usages to RomanisedString
2021-02-22 19:01:42 +09:00
Dean Herbert
1fd76ea3fb
Apply changes to UI components overriding functions with changing signatures
2021-02-22 19:01:42 +09:00
Dean Herbert
18e6afbec0
Ensure the item is present before trying to select it
2021-01-29 19:17:12 +09:00
Dean Herbert
1ce383fc20
Merge branch 'master' into fix-skin-dropdown-update-crash
2021-01-29 19:16:20 +09:00
Bartłomiej Dach
3b49b7461e
Schedule entire operation for safety
...
Also removes a redundant list copy.
2021-01-19 19:35:53 +01:00
Bartłomiej Dach
78e590d25d
Refactor skin sorting method
...
* Rename to `sortUserSkins` to convey meaning better.
* Sort in-place instead of slicing the list.
* Change to `void` to avoid misleading users that the method returns
a new list instance.
* Fix typo in comment.
2021-01-19 18:36:42 +01:00
Bartłomiej Dach
b00c6a1d60
Make first non-default skin index a property
...
The previous code was very brittle - it was not always updating
properly, and seems to have worked either by a carefully crafted set of
circumstances, or just plain coincidence.
Having this be a get-only property avoids potential error in the future
caused by not updating the index properly, at the expense of an added
linear lookup.
2021-01-19 18:31:37 +01:00