1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-08 15:27:25 +08:00
Commit Graph

30756 Commits

Author SHA1 Message Date
Bartłomiej Dach
838a9f69ed
Fix saved beatmap filename depending on ToString() implementation 2022-01-23 20:28:30 +01:00
Bartłomiej Dach
bd748686fa
Adjust spacing of time signature numerator input box 2022-01-23 15:21:32 +01:00
Bartłomiej Dach
4e5a1f27a8
Initialise Simple{Triple,Quadruple} only once ever rather than create every time 2022-01-23 15:21:25 +01:00
Dean Herbert
351c766ea1 Fix one remaining instance of realm query as property 2022-01-23 23:20:03 +09:00
Dean Herbert
deb1670862 Use Array.Empty instead of constructed list 2022-01-23 23:18:50 +09:00
Dean Herbert
249f0f9697
Add more lengthy comment explaining cyclic avoidance
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-01-23 23:15:39 +09:00
Dean Herbert
5e7993c35a Post disposal to synchronisation context 2022-01-23 20:43:25 +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
61cef42be9 Proof of concept realm subscriptions via Register 2022-01-23 20:28:04 +09:00
Dean Herbert
f39ff1eacb Add unregistration on blocking
This is the first part of the requirement of sending a `ChangeSet` event
to ensure correct state during blocking time
2022-01-23 20:27:57 +09:00
Dean Herbert
bd0eda7e90 Use method instead of property for realm query retrieval 2022-01-23 18:01:39 +09:00
Dean Herbert
70a120ea8a Add missing lock coverage when using subscriptionActions dictionary 2022-01-23 18:00:24 +09:00
Dean Herbert
a5493ce0d1 Fix incorrect nesting of statements causing completely broken logic 2022-01-23 17:51:32 +09:00
Salman Ahmed
e4758c9dbb Mark LabelledTimeSignature as public 2022-01-23 10:14:37 +03:00
Bartłomiej Dach
54f7b1b8d0
Use new time signature control on timing screen 2022-01-22 20:50:32 +01:00
Bartłomiej Dach
f39f2c93b5
Add control for arbitrary-numerator time signatures 2022-01-22 20:50:31 +01:00
Bartłomiej Dach
735414bc49
Replace TimeSignatures enum with struct for storage of arbitrary meter 2022-01-22 20:50:31 +01:00
mk-56
955bab926f Separate the settings for each modes radiuses 2022-01-22 19:38:56 +01:00
MK56
b5f813a949
Merge branch 'ppy:master' into Liswiera-FL-changes 2022-01-22 19:04:39 +01:00
Dean Herbert
33d3a10708
Merge branch 'master' into fix-intro-realm-usage 2022-01-22 23:28:43 +09:00
Bartłomiej Dach
7e68371d28
Move log statement about migration completed closer to rest of migration code 2022-01-22 14:20:28 +01:00
Bartłomiej Dach
1b2cca4a0d
Merge branch 'master' into realm-migration-ui 2022-01-22 13:52:19 +01:00
Bartłomiej Dach
c99f227879
Remove no longer used resolved storage 2022-01-22 13:48:49 +01:00
Dean Herbert
1a591beb7d Merge branch 'realm-context-use-update-when-feasible' into fix-intro-realm-usage 2022-01-22 16:30:07 +09:00
Dean Herbert
287d70d728 Merge branch 'realm-stable-subscriptions' into music-controller-less-population 2022-01-22 14:37:39 +09:00
Dean Herbert
8470fcf135
Merge branch 'master' into music-controller-less-population 2022-01-22 13:25:43 +09:00
Dean Herbert
6a076a684e Merge branch 'realm-context-use-update-when-feasible' into realm-stable-subscriptions 2022-01-22 13:14:25 +09:00
Dean Herbert
25dbe6b27c Fix unused null assignment 2022-01-22 12:58:30 +09:00
Dean Herbert
cdcf0947e6 Merge branch 'master' into realm-context-use-update-when-feasible 2022-01-22 12:09:18 +09:00
Dean Herbert
7025191fdd
Move target field outside of Run usage
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-01-22 12:02:44 +09:00
Dean Herbert
b23f4674b1
Update outdated exception message
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-01-22 12:02:18 +09:00
Dean Herbert
daed0b04dc Remove using statements 2022-01-22 11:54:40 +09:00
Dean Herbert
855ef3fa92 Create backup before any realm contexts are used 2022-01-22 11:52:46 +09:00
Dean Herbert
9946003069
Update osu.Game/Screens/Menu/IntroScreen.cs
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-01-22 05:09:40 +09:00
Dean Herbert
8ef50ff42d Add safety to ensure RealmLiveUnmanaged is not used with managed instances 2022-01-22 02:13:08 +09:00
Dean Herbert
ad3a01dc06 Use a more reliable method of reviving the update thread realm after blocking 2022-01-21 22:44:56 +09:00
Susko3
529610ee2e Call the UserPanel Action when clicking on the flag 2022-01-21 14:01:49 +01:00
Dean Herbert
3b11235d3c Fix potentially cyclic subscription registration if a subscription's delegate accesses Context 2022-01-21 20:45:10 +09:00
Dean Herbert
a86c0014fe Remove unnecessary exception/check 2022-01-21 20:07:43 +09:00
Dean Herbert
63226f7def Remove pointless initial MusicController beatmap set population
Looks to pass tests and all usages look safe enough.
2022-01-21 20:05:35 +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
45aea9add5 Implement full subscription flow 2022-01-21 19:06:23 +09:00
Dean Herbert
18bf690a30 Add Register method for subscription purposes and update safeties 2022-01-21 19:06:18 +09:00
Dean Herbert
2006620a2c Fix IntroScreen retrieving and iterating all realm beatmap sets 2022-01-21 18:03:16 +09:00
Dean Herbert
8f1dfa33a2 Merge branch 'master' into realm-context-use-update-when-feasible 2022-01-21 18:03:09 +09:00
Dean Herbert
495636538f Add forced refresh on GetAllUsableBeatmapSets()
This is commonly used in tests in a way where it's not feasible to
guarantee correct results unless a refresh is called. This method
shouldn't really be used outside of tests anyway, but that's for a
folow-up effort.
2022-01-21 17:33:29 +09:00
Dean Herbert
81b5717ae7 Fix RealmLive failing to retrieve due to lack of refresh 2022-01-21 17:33:03 +09:00
Dean Herbert
d2655c0825 Fix RealmLive not necessarily being in refreshed state due to potentially using update context 2022-01-21 17:27:30 +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
da0a803e6c Add RealmContextFactory.Write helper method 2022-01-21 17:08:05 +09:00
Dean Herbert
a59105635e Make CreateContext private 2022-01-21 16:40:20 +09:00
Dean Herbert
dde10d1ba2 Remove unused IRealmFactory interface 2022-01-21 16:38:07 +09:00
Dean Herbert
3bcdce128c Use dictionary add for safety 2022-01-21 15:29:21 +09:00
Dean Herbert
ff4f40db8a Merge branch 'master' into carousel-performance-n 2022-01-21 15:27:42 +09:00
Dan Balasescu
c4f24ef96c
Merge pull request #16542 from peppy/carousel-search-performance-less-simple
Avoid performing full filter when updating carousel beatmap sets
2022-01-21 15:05:30 +09:00
Dean Herbert
5622d2ba4f Show realm migration progress at Loader 2022-01-21 14:56:49 +09:00
Dean Herbert
5be41a189b Expose EF context factory for use in external migration logic 2022-01-21 14:56:28 +09:00
Dan Balasescu
d6d9efae60
Merge pull request #16541 from peppy/carousel-search-performance-simple
Avoid performing keyword filtering at song select unless keywords are specified
2022-01-21 13:35:43 +09:00
Dean Herbert
bed7b69464 Apply NRT to CarouselGroup 2022-01-21 13:26:29 +09:00
Dean Herbert
5b24800b0e Avoid applying filter in UpdateBeatmapSet flow 2022-01-21 13:26:25 +09:00
Dean Herbert
45bf35c425 Avoid performing keyword filtering at song select unless keywords are specified 2022-01-21 12:26:24 +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
0c9eb3ad61 Add realm factory helper methods to run work on the correct context
Avoids constructing a new `Realm` instance when called from the update
thread without worrying about disposal.
2022-01-21 01:33:47 +09:00
Dean Herbert
7aad2780b1 Add retry logic for realm backup creation 2022-01-21 00:46:53 +09:00
Dean Herbert
079b2dfc42 Create backup of databases before opening contexts
Attempt to avoid file IO issues.

Closes #16531.
2022-01-21 00:46:53 +09:00
Dean Herbert
ba31ddee01 Revert beatmapSets reference to fix tests
New version changed order.
2022-01-21 00:34:12 +09:00
Dean Herbert
80f3a67876 Use for instead of foreach to avoid enumerator overhead 2022-01-20 22:21:00 +09:00
Dean Herbert
0b93f3c88f Add <Guid,CarouselBeatmapSet> dictionary to speed up update operations in carousel 2022-01-20 22:12:49 +09:00
Dean Herbert
9a864267d2 Fix CarouselGroupEagerSelect not invoking subclassed AddChild from AddChildren calls 2022-01-20 21:57:16 +09:00
Dean Herbert
a8ce2c5edf Detach before sending BeatmapSetInfo to any handling method 2022-01-20 21:14:10 +09:00
Dan Balasescu
1a20725162
Merge pull request #16529 from peppy/fix-realm-subscription-overhead
Remove all calls to `Realm.Refresh` to fix blocking overhead from subscriptions
2022-01-20 20:58:11 +09:00
Dan Balasescu
c986c1b702
Merge pull request #16523 from peppy/realm-async-carousel-load
Use asynchronous loading for beatmap carousel again
2022-01-20 20:55:48 +09:00
Dean Herbert
5df46d0a54 Remove all calls to Realm.Refresh to fix blocking overhead from subscriptions
Turns out this is not required if realm is aware of a
`SynchronizationContext`. See
https://github.com/realm/realm-dotnet/discussions/2775#discussioncomment-2005412
for further reading.
2022-01-20 20:23:18 +09:00
Dean Herbert
b1cf3befa6 Fix incorrect query in comment 2022-01-20 18:36:20 +09:00
Dan Balasescu
cab63830a1
Merge pull request #16527 from peppy/remove-parameterless-beatmapinfo-ctor-usage
Avoid constructor allocation/GC overhead in realm implicit constructors
2022-01-20 18:11:35 +09:00
Dean Herbert
3ba712703b Add a note about hidden beatmap check 2022-01-20 17:50:17 +09:00
Dean Herbert
4235fb317d Remove unnecessary detach operation 2022-01-20 17:35:32 +09:00
Dean Herbert
0bd7486a83 Avoid constructor overhead for realm SkinInfo parameterless constructor 2022-01-20 17:29:07 +09:00
Dean Herbert
70cc03fe43 Avoid constructor overhead for realm RealmKeyBinding parameterless constructor 2022-01-20 17:29:07 +09:00
Dean Herbert
6c10531df2 Avoid constructor overhead for realm BeatmapMetadata parameterless constructor 2022-01-20 17:14:51 +09:00
Dean Herbert
deb108816c Fix some regressions in json output (we need to make all these explicit instead) 2022-01-20 17:09:31 +09:00
Dean Herbert
ccddf9b47d Avoid constructor overhead for realm BeatmapSetInfo parameterless constructor 2022-01-20 17:03:44 +09:00
Dean Herbert
3c852e6d02 Avoid constructor overhead for realm ScoreInfo parameterless constructor 2022-01-20 16:47:27 +09:00
Dean Herbert
3faf980fed Avoid constructor overhead for realm BeatmapInfo parameterless constructor 2022-01-20 16:47:27 +09:00
Dean Herbert
1dabf6c8a5 Fix BeatmapCarousel signalling it is finished loading before catching up on realm changes 2022-01-20 16:39:42 +09:00
Dan Balasescu
64fe7d8dd3
Merge pull request #16520 from peppy/refresh-after-migrate
Improve realm migration performance further
2022-01-20 14:38:23 +09:00
Dan Balasescu
7509b31176
Merge pull request #16519 from peppy/fix-legacy-score-import-classic-mod
Fix legacy score imports not correctly getting classic mod assigned
2022-01-20 14:28:29 +09:00
Dan Balasescu
4f86a2cb61
Merge pull request #16525 from bdach/beatmap-listing-overflow-and-scrolling
Improve usability of expanded card content on beatmap listing
2022-01-20 14:14:44 +09:00
Bartłomiej Dach
b8184a3005
Fix news sidebar assuming returned posts are always from given year 2022-01-19 23:13:30 +01:00
Bartłomiej Dach
4cad5890c6
Add test coverage for news sidebar showing wrong headers 2022-01-19 23:12:35 +01:00
Bartłomiej Dach
247c557eaf
Fix expanded content scrollbar inadvertently hiding expanded content 2022-01-19 22:30:49 +01:00
Bartłomiej Dach
77748a5f93
Show scrollbar on expanded card content where applicable 2022-01-19 22:21:08 +01:00
Bartłomiej Dach
33ab356dc5
Fix expanded card content being clipped on beatmap listing overlay 2022-01-19 22:10:05 +01:00
Dean Herbert
a27a3b308c Remove duplicate setters 2022-01-20 04:34:00 +09:00
Dean Herbert
6c46fd6931 Fix some failing tests due to realm beatmaps overwriting test beatmaps 2022-01-20 00:19:16 +09:00
Dean Herbert
9435464eb3
Merge branch 'master' into realm-async-carousel-load 2022-01-19 18:25:31 +09:00
Dean Herbert
4b127d5029
Merge pull request #16522 from peppy/detach-before-hidden-check
Detach beatmap set before checking hidden state
2022-01-19 18:25:23 +09:00
Dean Herbert
2789986699 Use asynchronous loading for beatmap carousel again 2022-01-19 18:15:43 +09:00
Dan Balasescu
ddd1699621
Merge pull request #16521 from peppy/backup-collections
Backup collections alongside main databases when migrating to realm
2022-01-19 17:02:49 +09:00
Dean Herbert
200fcb6f83 Detach beatmap set before checking hidden state 2022-01-19 16:59:49 +09:00