1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 14:52:56 +08:00
osu-lazer/osu.Game/Screens/Select
Bartłomiej Dach 5e5bb49cd8
Fix rate change hotkeys sometimes losing track of adjust pitch setting
Fixes https://osu.ppy.sh/community/forums/topics/1983327.

The cause of the bug is a bit convoluted, and stems from the fact that
the mod select overlay controls all of the game-global mod instances if
present. `ModSpeedHotkeyHandler` would store the last spotted instance
of a rate adjust mod - which in this case is a problem, because on
deselection of a mod, the mod select overlay resets its settings to
defaults:

	a258059d43/osu.Game/Overlays/Mods/ModSelectOverlay.cs (L424-L425)

A way to defend against this is a clone, but this reveals another issue,
in that the existing code was *relying* on the reference to the mod
remaining the same in any other case, to read the latest valid settings
of the mod. This basically only mattered in the edge case wherein Double
Time would swap places with Half Time and vice versa (think [0.95,1.05]
range). Therefore, track mod settings too explicitly to ensure that the
stored clone is as up-to-date as possible.
2024-09-30 08:47:02 +02:00
..
Carousel Use for with exposed IReadOnlyList rather than making internal container public 2024-09-04 15:25:36 +09:00
Details Creating method in ModUtils to calculate the rate for the song 2024-06-06 10:06:07 -03:00
Filter Automated pass 2023-06-24 01:00:03 +09:00
Leaderboards Fix song select leaderboard tab ordering not matching stable 2023-12-28 14:13:35 +09:00
Options Use new overlay pop-in/pop-out samples 2023-08-17 18:36:36 +09:00
BeatmapCarousel.cs Remove unused parameter in applyActiveCriteria 2024-09-18 17:22:09 +09:00
BeatmapClearScoresDialog.cs make ResetConfirmDialog properly utilise its parent's logic 2023-03-05 20:57:26 +01:00
BeatmapDeleteDialog.cs make ResetConfirmDialog properly utilise its parent's logic 2023-03-05 20:57:26 +01:00
BeatmapDetailArea.cs functionality is done 2023-09-03 02:09:01 +03:00
BeatmapDetailAreaDetailTabItem.cs Automated pass 2023-06-24 01:00:03 +09:00
BeatmapDetailAreaLeaderboardTabItem.cs Automated pass 2023-06-24 01:00:03 +09:00
BeatmapDetailAreaTabControl.cs Partial everything 2022-11-27 00:00:27 +09:00
BeatmapDetailAreaTabItem.cs Automated #nullable processing 2022-06-17 16:37:17 +09:00
BeatmapDetails.cs Apply padding to GridContainers directly 2024-02-20 23:18:37 +03:00
BeatmapInfoWedge.cs Adjust song select info icon size slightly 2024-08-05 17:21:50 +09:00
BeatmapInfoWedgeBackground.cs Automated pass 2023-06-24 01:00:03 +09:00
BeatmapInfoWedgeV2.cs Add comment explaining the max width 2023-09-06 15:01:55 -07:00
FilterControl.cs Adjust calls to GetContainingInputManager() 2024-06-18 07:41:19 +02:00
FilterCriteria.cs Add mods to FilterCriteria, pass to ruleset method 2024-03-28 23:03:26 +09:00
FilterQueryParser.cs Add 'yes'/'no' acronyms to the played= filter 2024-09-06 18:04:39 +09:00
Footer.cs Partial everything 2022-11-27 00:00:27 +09:00
FooterButton.cs Partial everything 2022-11-27 00:00:27 +09:00
FooterButtonMods.cs Swap the low and high multiplier color 2024-06-26 21:39:14 +08:00
FooterButtonOptions.cs Automated pass 2023-06-24 01:00:03 +09:00
FooterButtonRandom.cs Show "rewind" text on random button when beginning a right mouse press 2023-05-17 14:51:40 +09:00
LocalScoreDeleteDialog.cs Make ScoreInfo.BeatmapInfo nullable 2023-07-04 14:50:34 +09:00
ModSpeedHotkeyHandler.cs Fix rate change hotkeys sometimes losing track of adjust pitch setting 2024-09-30 08:47:02 +02:00
NoResultsPlaceholder.cs Partial everything 2022-11-27 00:00:27 +09:00
PlayBeatmapDetailArea.cs Fix song select leaderboard tab ordering not matching stable 2023-12-28 14:13:35 +09:00
PlaySongSelect.cs Adjust calls to GetContainingInputManager() 2024-06-18 07:41:19 +02:00
SkinDeleteDialog.cs make ResetConfirmDialog properly utilise its parent's logic 2023-03-05 20:57:26 +01:00
SongSelect.cs Also ensure filter is applied when returning to song select 2024-09-18 17:22:08 +09:00
SongSelectTouchInputDetector.cs Rename touch "input handlers" to detectors 2023-11-06 10:08:19 +01:00
WedgeBackground.cs Only apply dim changes when background blur is disabled 2023-02-15 14:16:34 +09:00