Commit Graph

403 Commits

Author SHA1 Message Date
4ad79a8a0a Move IsLoaded check inside BeatmapCarousel 2023-01-18 12:00:47 +09:00
93038ce496 Use OfType instead of forceful nullability 2023-01-10 17:52:21 +09:00
6abbc7dc28 Further fix nullability 2023-01-09 20:59:28 +01:00
69260ca3c3 remove unnecessary usages of nullable forgiveness, add asserts for debugging 2023-01-09 18:36:55 +01:00
47fb467012 Remove nullable disabling in carousel 2023-01-08 19:02:48 +01:00
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
7b274083d3 Fix phantom beatmap sets appearing on carousel after delete/update
Regressed in c40c70509e.

As it turns out, `item.Item.Filtered.Value` is not the only condition
that should be checked to determine if a carousel item should be hidden
or not - `item.Item.State.Value != CarouselItemState.Collapsed` should
also be true. This was even available as the `item.Item.Visible`
convenience property, which is used in this commit.

Failing to check `item.Item.State.Value` led to setting non-zero alpha
on collapsed carousel items, leading to phantom beatmap sets appearing,
as the alpha was set in the entire carousel's `Update()` method, thus
firing every frame.
2022-11-20 10:08:34 +01:00
c40c70509e Improve song select transition to gameplay 2022-11-04 15:24:37 +09:00
5a118cfdc3 Merge branch 'master' of https://github.com/ppy/osu into carousel-perform-selection
 Conflicts:
	osu.Game.Tests/Visual/SongSelect/TestSceneBeatmapCarousel.cs
2022-10-24 21:40:48 +03:00
f3bda4e040 Fix weird edge case of nullability in CarouselRoot
A bit unfortunately, but it's what we get for having ctor level bindings..
2022-09-07 14:27:25 +09:00
e18b524f8e Fix missing null checks on selectedBeatmap fields in BeatmapCarousel 2022-09-07 14:12:35 +09:00
241d33d415 Apply NRT to BeatmapCarousel 2022-09-07 14:07:53 +09:00
a3e595a9aa Update comment to include inserted indices 2022-08-26 14:51:19 +03:00
81c0a641b4 Fix selection fallback path not updated to check inserted indices 2022-08-26 14:51:08 +03:00
a146db0e35 Merge branch 'master' into carousel-perform-selection 2022-08-26 19:29:00 +09:00
9d2c2b71cf Change conditional to check for insertions in addition to modifications
It is possible that the import process itself marks the previous
beatmaps as deleted due to an overlap in metadata or otherwise.
2022-08-16 16:21:36 +09:00
e6a3659581 Guard against NewModifiedIndices being empty 2022-07-27 14:23:47 +09:00
24d75612e2 Always attempt to follow selection, even if difficulty name / metadata change 2022-07-27 14:18:53 +09:00
8105d4854a Fix beatmap carousel not maintaining selection if currently selected beatmap is updated 2022-07-27 13:33:48 +09:00
fc0c9f76bd Fix UpdateBeatmapSetButton intermittent test failure
Carousel would only expire items when off-screen. This meant that for a
case (like a test) where items are generally always on-screen,
`UpdateBeatmapSet` calls would result in panels remaining hidden but not
cleaned up.
2022-07-21 16:24:48 +09:00
3cfe624af1 Fix one more missed method with incorrect terminology 2022-07-21 16:16:41 +09:00
a05d7f4d8c Change carousel terminology to not use Children / InternalChildren 2022-07-21 16:06:06 +09:00
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
c43670fcd9 Merge pull request #18603 from peppy/fix-import-dialog
Add placeholder when no results are visible at song select
2022-06-08 15:22:31 +09:00
2e0b888410 Fix song select carousel invalidating every frame during global overlay dimming 2022-06-07 23:46:53 +09:00
0d32c94104 Add initial implementation of beatmap carousel no-results-placeholder 2022-06-07 17:25:06 +09:00
9416346c94 Globalise beatmap selection key bindings as "group" selection 2022-05-04 16:46:32 +03:00
d52a1a5d23 Add key binding for beatmap selection in song select 2022-05-04 03:52:10 +03:00
eb25730b61 Revert "Merge pull request #16716 from peppy/carousel-less-invalidations"
This reverts commit 8d13e0514b, reversing
changes made to 95582a9023.
2022-02-05 16:12:58 +09:00
0f48c0131c Layer playback of beatmap-changed and random-beatmap samples 2022-02-04 19:57:54 +09:00
6d6327d3da Fix test beatmap loading potentially performing selection before carousel itself is loaded 2022-02-03 18:40:16 +09:00
4f3e55a0ce Merge branch 'master' into songselect-random-sfx 2022-02-02 17:18:24 +09:00
8917ab78f4 Reduce unnecessary container nesting and adjust empty state opacity slightly 2022-01-31 14:46:20 +09:00
f59828e2d9 Add audio feedback to song select 'random' 2022-01-28 13:43:37 +09:00
449e9bcf5c Ensure beatmap carousel scroll position is maintained during deletion operations 2022-01-27 16:52:02 +09:00
0a45aa80cb Remove unnecessary double-schedule in UpdateBeatmapSet 2022-01-27 16:52:02 +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
40aa873190 Rename register methods to better explain their purpose 2022-01-24 14:37:36 +09:00
e9e3e024a1 Update all usages of QueryAsyncWithNotifications to use new Register pathway 2022-01-23 20:28:04 +09:00
61cef42be9 Proof of concept realm subscriptions via Register 2022-01-23 20:28:04 +09:00
1f157d729d Update existing subscriptions to new style
Fix missing detach calls in `MusicController`
2022-01-21 20:05:03 +09:00
8f1dfa33a2 Merge branch 'master' into realm-context-use-update-when-feasible 2022-01-21 18:03:09 +09:00
114c9e8c1f Update all usages of CreateContext to use either Run or Write 2022-01-21 17:27:08 +09:00
3bcdce128c Use dictionary add for safety 2022-01-21 15:29:21 +09:00
ff4f40db8a Merge branch 'master' into carousel-performance-n 2022-01-21 15:27:42 +09:00
5b24800b0e Avoid applying filter in UpdateBeatmapSet flow 2022-01-21 13:26:25 +09:00
ba31ddee01 Revert beatmapSets reference to fix tests
New version changed order.
2022-01-21 00:34:12 +09:00