Commit Graph

1154 Commits

Author SHA1 Message Date
Bartłomiej Dach
994fb966b6
Remove Host ctor param from SkinModelManager
No longer used since 29d074bdb8.
2022-02-01 21:37:19 +01:00
Dean Herbert
cd71ec0edd Remove ILive<> interface (and use abstract Live<> instead) 2022-01-26 13:38:56 +09:00
Dean Herbert
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
Dean Herbert
d7342880f5 Update remaining cases of clashes with realm.Write and realm.RegisterForNotifications 2022-01-25 13:09:48 +09:00
Dean Herbert
e23b10e6a5 Update remaining cases of clashing variable name in realm.Run(realm.. 2022-01-25 13:04:05 +09:00
Dean Herbert
3e5c9e8436 Fix cases of Access instead of Realm 2022-01-25 12:58:15 +09:00
Dean Herbert
6eb2c28e41 Rename RealmContextFactory to RealmAccess 2022-01-24 20:38:07 +09:00
Dean Herbert
114c9e8c1f Update all usages of CreateContext to use either Run or Write 2022-01-21 17:27:08 +09:00
Dean Herbert
a5d2047f05 Fix various cases of creating realm contexts from update thread when not necessary 2022-01-21 01:44:56 +09:00
Dean Herbert
0bd7486a83 Avoid constructor overhead for realm SkinInfo parameterless constructor 2022-01-20 17:29:07 +09:00
Dean Herbert
5601f6f1fe Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-17 12:29:02 +09:00
Bartłomiej Dach
cbaa3de548
Strip @2x scale modifiers when looking up legacy skin textures 2022-01-16 19:46:15 +01:00
Dean Herbert
bdb2979b2e Remove async from Populate method 2022-01-13 16:36:54 +09:00
Dean Herbert
1a29098f3b Change default value and add comment explaining why skins are never "locally available" 2022-01-13 12:50:18 +09:00
Dean Herbert
b2d09b7b10 Fix further warnings 2022-01-12 23:42:12 +09:00
Dean Herbert
08da948afc
Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-12 19:22:55 +09:00
Dean Herbert
8c8c5f4c33 Fix skin hash repopulation not working since realm migration 2022-01-12 18:32:51 +09:00
Dean Herbert
a4de0f93fa Move manager Update methods to be explicit to where they are still used by legacy code
Also fixes skin hash repopulation being completely broken.
2022-01-12 17:49:11 +09:00
Dean Herbert
d8e75a9de4 Reimplmeent IsAvailableLocally as an abstract method 2022-01-12 17:49:10 +09:00
Dean Herbert
667cdb2475 Fix skin lookup when there's no beatmap file available 2022-01-12 17:00:16 +09:00
Dean Herbert
4763fe54d6 Remove unused store classes 2022-01-12 16:39:36 +09:00
Dean Herbert
3cd996eb4a Merge branch 'master' into async-deadlock-safety 2022-01-07 17:28:59 +09:00
Dean Herbert
00177a3ae1 Update usages to new naming 2022-01-06 22:54:43 +09:00
Dean Herbert
243a1a3cf7 Fix incorrect origin specification for SkinSelectionHandler flips 2022-01-06 14:47:44 +09:00
Dean Herbert
866ae3472b Add global flip hotkeys 2022-01-05 16:48:07 +09:00
Dean Herbert
73b40e6833 Replace usage of .Result with .WaitSafelyForResult 2022-01-04 11:51:41 +09:00
Dean Herbert
089b756f93 Invert logic to make reading easier 2021-12-30 16:03:16 +09:00
Dean Herbert
ef49f2ed0e Add extra extra safety against attempting to load a previously expired editor 2021-12-30 16:02:31 +09:00
Dean Herbert
b1a444180f Fix Show then Reset potentially resulting in incorrect load target 2021-12-29 21:46:34 +09:00
Dean Herbert
471eea750a Fix calling SkinEditorOverlay.Show before the overlay is loaded causing an exception
As seen at https://github.com/ppy/osu/runs/4652969942?check_suite_focus=true.
2021-12-29 21:18:17 +09:00
Bartłomiej Dach
724b601d2a
Rename AllowSampleLookup argument to something saner 2021-12-26 14:29:07 +01:00
Bartłomiej Dach
dc21c8901e
Always allow looking up storyboard samples from beatmap skin 2021-12-26 14:25:28 +01:00
Dean Herbert
9d85beddbe Fix null reference in some tests due to missing realm context factory 2021-12-15 11:16:37 +09:00
Dean Herbert
441b7baa93 Provide a realm factory to usages of ToLive/RealmLive 2021-12-14 14:26:34 +09:00
Dean Herbert
8d9c37a825 Merge branch 'master' into primary-key-consistency 2021-12-08 21:34:38 +09:00
Dan Balasescu
7ef960839b
Merge pull request #15898 from peppy/skin-export-instntiation-info
Serialise and deserialise `SkinInfo.InstantiationInfo` to allow for more correct imports
2021-12-06 22:08:20 +09:00
Dean Herbert
07abcf04b4
Merge branch 'master' into realm-integration/skins-filename-lookup-performance 2021-12-06 17:13:33 +09:00
Dean Herbert
68b482fc48
Merge branch 'master' into skin-export-instntiation-info 2021-12-06 17:12:42 +09:00
Dean Herbert
452fa93444 Merge branch 'master' into realm-integration/skins-rebase 2021-12-06 15:21:02 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dean Herbert
e4b296e16e Use OptIn serialisation on SkinInfo to avoid writing unnecessary information 2021-12-03 16:36:27 +09:00
Dean Herbert
cdf2fa9930 Serialise and deserialise SkinInfo.InstantiationInfo to allow for more correct imports
Until now, skins were always imported using the `LegacySkin`
instantiation type. For cases where a user has edited the lazer or
classic default (via the new skin editor), which would result in
incorrect fallback paths after exporting and importing the edited skin.
2021-12-02 18:05:16 +09:00
Dean Herbert
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
Dean Herbert
fe99d4e984 Standardise parameter naming across all file IO methods 2021-12-02 17:19:53 +09:00
Dean Herbert
505608ab12 Merge branch 'realm-integration/skins-rebase' into realm-integration/skins-filename-lookup-performance 2021-12-02 14:01:39 +09:00
Dean Herbert
0a14acfd83 Fix incorrect conditional on export/mutate feasability of skin 2021-12-02 13:41:58 +09:00
Dean Herbert
4f826589e5 Remove subscription logic for the time being 2021-12-02 12:20:07 +09:00
Dean Herbert
1cf1543866 Fix test failures due to attempting to subscribe to non-managed instances 2021-12-01 13:50:19 +09:00
Dean Herbert
9411b42d0a Cache skin filename to path mapping to reduce realm lookups during gameplay skin changes 2021-12-01 02:27:41 +09:00
Dean Herbert
0efd565c8b Remove forgotten using statement 2021-11-30 15:41:07 +09:00