Add support for "freestyle" in multiplayer
Always select the closest control point group regardless of whether it has a timing point on entering timing screen
Implement "form button" control
Add expanded state tracking to beatmap carousel v2
Noticed during testing.
Fix carousel tests failing due to dependency on depth ordering
Scheduler.AddOnce
updateSpecifics
To keep things simple, let's not bother debouncing this. The debouncing was causing spectating handling to fail because of two interdependent components binding to `BeatmapAvailability`: Binding to update the screen's `Beatmap` after a download completes: https://github.com/ppy/osu/blob/58747061171c4ebe70201dfe4d3329ed7f4343f5/osu.Game/Screens/OnlinePlay/Match/RoomSubScreen.cs#L266-L267 Binding to attempt a load request: https://github.com/ppy/osu/blob/8bb7bea04e56fab9247baa59ae879e16c8b4bd9b/osu.Game/Screens/OnlinePlay/Multiplayer/MultiplayerMatchSubScreen.cs#L67 The first must update the beatmap before the second runs, else gameplay will not load due to `Beatmap.IsDefault`.
Add group support to beatmap carousel v2
Fix multi-segment-type sliders getting mangled on legacy export
Fix depth ordering in new carousel not being relative to selected item
Avoid accessing `WorkingBeatmap.Beatmap` every update call
Make distance snap settings mutually exclusive
WorkingBeatmap
ctor
Avoid moving already placed objects temporally when "limit distance snap to current time" is active
Fix distance snap time part ceasing to work when grid snap is also active
Fix results screen sounds persisting after exit
WorkingBeatmap.Beatmap
Notice in passing. Comes with overheads that can be easily avoided. Left a note for a future (slightly more involved) optimisation.