Commit Graph

185 Commits

Author SHA1 Message Date
2f0c772dcb Add argon pro skin 2022-12-20 21:18:51 +09:00
b8904fe747 Move ImportParameters to better home 2022-12-13 21:41:26 +09:00
cb16d62700 Hook up ImportParameter flow with IModelImporter caller methods 2022-12-13 21:29:32 +09:00
cf2719d4c0 Convert batchImport parameter to parameters class to allow further import configuration 2022-12-13 19:55:18 +09:00
1aa0e40f2f Add "Component" prefix to lookup naming 2022-11-09 17:46:43 +09:00
c908969d9b Rename ISkinComponent to ISkinLookup 2022-11-09 17:46:43 +09:00
b55aa68177 Remove xmldoc on private fields 2022-09-19 23:16:46 +09:00
0f7b38f4c3 Add new default skin "argon" 2022-09-19 23:16:46 +09:00
d0b8409de5 Apply more renames 2022-09-18 18:19:00 +09:00
41e69fbca6 Remove "default" prefix from naming 2022-09-18 00:15:26 +09:00
51841988bf Rename references to DefaultSkin to have Triangles suffix 2022-09-17 23:57:25 +09:00
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
b4e55f7309 Apply IRenderer changes 2022-08-02 19:50:57 +09:00
8370ca9765 Add ImportAsUpdate method to IModelImporter to avoid otehr changes 2022-07-26 15:49:04 +09:00
dbae4c6f5a PostImport -> PresentImport 2022-06-20 18:36:29 +09:00
92f1a2958c Rename Import(TModel) to ImportModel to differentiate from other import methods 2022-06-20 15:18:07 +09:00
a6c8a832aa Remove Import(ArchiveReader) and redirect existing usages to Import(ImportTask) 2022-06-20 15:14:57 +09:00
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
e66ccfd980 Add back missing notification flow 2022-06-16 19:48:18 +09:00
72c5b9009d Remove local realm fields in manager classes 2022-06-16 18:56:53 +09:00
f3984d98e6 Remove RealmArchiveModelManager from hierarchy 2022-06-16 18:53:13 +09:00
4d9e3d1982 Rename Score/Skin ModelManager classes to Importer for now 2022-06-16 18:11:50 +09:00
88d5e074a8 Rename lowPriority to batchImport 2022-06-15 00:46:00 +09:00
7affef75b0 Remove unused Import method in SkinManager 2022-06-15 00:26:34 +09:00
9f599a5ab4 Remove unused lowPriority flag from one Import method 2022-06-14 19:52:30 +09:00
ca0765a932 Tidy up various delegation implementations 2022-06-14 19:46:59 +09:00
ee99b94940 Fix return condition from EnsureMutableSkin not accounting for "failed" imports 2022-04-29 13:46:18 +09:00
aabe586578 Add return value to EnsureMutableSkin to understand whether a new skin was made 2022-04-28 14:09:30 +09:00
2b59f76b2d Merge pull request #17596 from peppy/skin-editor-sprites
Allow importing sprites into a skin via drag-and-drop
2022-04-05 17:38:58 +09:00
43d03f2825 Put ToArray call in correct place in brackets 2022-04-01 19:30:16 +09:00
01681ee874 Add missing ToArray call
Not sure where this went, was there in my original commit.
2022-04-01 16:19:02 +09:00
762de3cc97 Replace invalidation logic with local realm notification subscription 2022-04-01 16:01:33 +09:00
9c3dad9fbf Add proof of concept flow to ensure RealmBackedResourceStore is invalidated on realm file changes
I'm not at all happy with this, but it does work so let's go with it for
now.
2022-04-01 16:01:33 +09:00
fca9faac9b Add SkinnableSprite for arbitrary sprite additions 2022-04-01 14:36:36 +09:00
69d4f86122 Fix automatically created "(modified)" skins getting conflicting names
Applies the already tested and proven method that is used in the editor
to the mutable skin creation flow.
2022-04-01 14:11:55 +09:00
994fb966b6 Remove Host ctor param from SkinModelManager
No longer used since 29d074bdb8.
2022-02-01 21:37:19 +01:00
cd71ec0edd Remove ILive<> interface (and use abstract Live<> instead) 2022-01-26 13:38:56 +09:00
778d2a71b4 Remove Task from the inner-most Import method in RealmArchiveModelImporter
One of my pending work items for post-realm merge.

The lowest-level import task is no longer asynchronous, as we don't want
it to span multiple threads to allow easier interaction with realm.
Removing the `Task` spec simplifies a heap of usages.

Individual usages should decide whether they want to run the import
asynchronously, by either using an alternative override or spooling up a
thread themselves.
2022-01-25 15:30:29 +09:00
d7342880f5 Update remaining cases of clashes with realm.Write and realm.RegisterForNotifications 2022-01-25 13:09:48 +09:00
e23b10e6a5 Update remaining cases of clashing variable name in realm.Run(realm.. 2022-01-25 13:04:05 +09:00
6eb2c28e41 Rename RealmContextFactory to RealmAccess 2022-01-24 20:38:07 +09:00
114c9e8c1f Update all usages of CreateContext to use either Run or Write 2022-01-21 17:27:08 +09:00
a5d2047f05 Fix various cases of creating realm contexts from update thread when not necessary 2022-01-21 01:44:56 +09:00
00177a3ae1 Update usages to new naming 2022-01-06 22:54:43 +09:00
73b40e6833 Replace usage of .Result with .WaitSafelyForResult 2022-01-04 11:51:41 +09:00
441b7baa93 Provide a realm factory to usages of ToLive/RealmLive 2021-12-14 14:26:34 +09:00
0e82e9355b Ensure skin is saved immediately after becoming mutable
Without doing this, the JSON content is not written to the file. A user
assumption is that as soon as a skin shows up in the skin list as
exportable, it should export correctly, so it makes sense that it should
be in a sane state even if the user has not made any changes in the skin
editor yet.

Going forward, we might move more of the json serialisation logic out,
and run for consistency as part of the import process. This seems like
the simplest way to guarantee things for now, though.
2021-12-02 17:42:17 +09:00
0a14acfd83 Fix incorrect conditional on export/mutate feasability of skin 2021-12-02 13:41:58 +09:00
0d18c83d75 Simplify deletion by adding always present conditionals to Delete method 2021-11-29 18:28:25 +09:00
f6a3709060 Store default skins to database 2021-11-29 18:28:25 +09:00