1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 20:22:55 +08:00
Commit Graph

51287 Commits

Author SHA1 Message Date
Bartłomiej Dach
46d3220c07
Isolate sample screens from global mods bindable
Fixes scenario wherein entering the first run setup overlay, exiting at
the "UI scale" step (which shows a song select), then moving to actua
song select and trying to select a mod would lead to a crash.

The crash was caused by two active mod screen instances attempting to
swap the global mod bindable's mod instances for ones they owned. This
logic - while generally problematic and hard to maintain - was fixing
several issues with mod reference management and setting copying, so I'm
letting it live another day.

This change will mean that the song select preview on the "UI scale"
step will not receive the same mods that the actual game has enabled.
That said, it already doesn't use the same beatmap or ruleset, so this
looks fine to break.
2022-05-07 21:44:58 +02:00
Dean Herbert
3bb22dece6
Merge pull request #18111 from bdach/mod-overlay/integration
Replace old mod overlay with new design
2022-05-08 02:44:50 +09:00
Dean Herbert
2278da563e Add various xmldoc for nested classes 2022-05-08 02:03:28 +09:00
Dean Herbert
03c80d9197 Reorder methods / properties in ModSelectScreen for legibility 2022-05-08 01:58:37 +09:00
Dean Herbert
1d27ef18dc Add xmldoc for IsValidMod 2022-05-08 01:49:29 +09:00
Dean Herbert
0d32bf91eb Hardcode hide key handling in ModSelectScreen 2022-05-08 01:35:11 +09:00
Bartłomiej Dach
0c2b4a6c0b
Fix invalid IsLoaded check
Would fail when `availableMods` would be changed from a different thread
while the columns aren't loaded.
2022-05-07 15:44:22 +02:00
Bartłomiej Dach
528342411e
Merge branch 'master' into mod-overlay/integration 2022-05-07 13:52:19 +02:00
Bartłomiej Dach
c907dbe56f
Merge pull request #18133 from frenzibyte/change-mod-scroll-behaviour
Change mod scrolling behaviour to not scroll horizontally on columns/settings
2022-05-07 13:51:13 +02:00
Bartłomiej Dach
fe69bd7ed9
Merge branch 'master' into change-mod-scroll-behaviour 2022-05-07 13:29:02 +02:00
Salman Ahmed
6326216a6a
Merge pull request #18132 from bdach/mod-overlay/back-button
Add local back button to new mod select design
2022-05-07 14:27:18 +03:00
Bartłomiej Dach
5d6d7bb324
Fix incorrect assert in multiplayer song select test scene 2022-05-07 13:15:16 +02:00
Bartłomiej Dach
9a56f6db44
Merge branch 'mod-overlay/back-button' into mod-overlay/integration 2022-05-07 13:15:13 +02:00
Bartłomiej Dach
a716f62a6a
Flash back button when keyboard back binding is pressed 2022-05-07 13:01:36 +02:00
Salman Ahmed
d4c9de8596 Move button width in mod select to constant 2022-05-07 13:23:48 +03:00
Salman Ahmed
9a7aeec098
Merge branch 'master' into mod-overlay/back-button 2022-05-07 13:05:25 +03:00
Salman Ahmed
1fe6749baa
Merge pull request #18131 from bdach/mod-overlay/localisation-strings
Add basic localisation strings for new mod select
2022-05-07 13:04:58 +03:00
Salman Ahmed
8ee3fdd0aa Change mod scrolling behaviour to not scroll horizontally on columns/settings 2022-05-07 12:15:11 +03:00
Salman Ahmed
a44e21d1b2
Merge branch 'master' into mod-overlay/localisation-strings 2022-05-07 12:13:28 +03:00
Bartłomiej Dach
e8518a3a1a
Merge pull request #18117 from peppy/distance-snap-grid-current-tiume
Highlight distance snap grid rings that are close to the current time value
2022-05-07 11:13:13 +02:00
Bartłomiej Dach
fd75963ca2
Dismiss mod select if select binding is pressed 2022-05-07 11:01:05 +02:00
Bartłomiej Dach
e7e7486a8e
Merge branch 'mod-overlay/back-button' into mod-overlay/integration 2022-05-07 10:59:30 +02:00
Bartłomiej Dach
b72cf4cd5d
Merge branch 'mod-overlay/localisation-strings' into mod-overlay/back-button 2022-05-07 10:58:09 +02:00
Bartłomiej Dach
f761d4d4d4
Reuse "select/deselect all" localisable string on column toggle 2022-05-07 10:56:03 +02:00
Bartłomiej Dach
fa0a256f48
Add localisable string for difficulty multiplier display 2022-05-07 10:48:15 +02:00
Salman Ahmed
db04bcf1ce
Merge branch 'master' into distance-snap-grid-current-tiume 2022-05-07 11:47:38 +03:00
Salman Ahmed
e9b0ae6da5
Merge branch 'master' into mod-overlay/localisation-strings 2022-05-07 11:33:18 +03:00
Dean Herbert
2752bdf04f
Merge pull request #18130 from bdach/mod-overlay/bulk-select-buttons
Add back select/deselect all mods buttons to new mod select design
2022-05-07 17:32:10 +09:00
Bartłomiej Dach
9d3e67b10d
Update free mod select/deselect all test after back button addition 2022-05-07 10:25:23 +02:00
Bartłomiej Dach
1c029552d7
Add test coverage for mod select back button 2022-05-07 10:23:49 +02:00
Bartłomiej Dach
271d64fd54
Add back button to mod select overlays 2022-05-07 10:17:32 +02:00
Bartłomiej Dach
6ad990dfc3
Add basic localisation strings for new mod select 2022-05-07 10:17:24 +02:00
Bartłomiej Dach
4ff96f82be
Dim other buttons if customisation panel is open 2022-05-07 09:50:09 +02:00
Bartłomiej Dach
18e4c3ed0f
Update mod columns even if they're not present/offscreen
Important to make "select/deselect all" operations work on all columns
simultaneously, even if they're offscreen. Unfortunately by the nature
of how the existing selection animation works, it is hard-tied to the
update loop, so we need to compensate.
2022-05-07 09:50:09 +02:00
Bartłomiej Dach
9514a5cef7
Only load panels asynchronously outside of BDL 2022-05-07 09:50:09 +02:00
Bartłomiej Dach
9f96dd47d1
Remove schedule in panel load
It was causing selection/deselection of all mods to work improperly if a
select/deselect all operation was requested before the panel was
scrolled into view.

In general the schedule was an over-optimisation - the game-global set
of available mods shouldn't be changing so often as to warrant such an
aggressive debounce.
2022-05-07 09:50:09 +02:00
Bartłomiej Dach
e1953c484c
Add test coverage for selecting/deselecting all mods on free mod select 2022-05-07 09:50:08 +02:00
Bartłomiej Dach
35c106efaa
Add test coverage for deselecting all mods on user mod select 2022-05-07 09:29:33 +02:00
Bartłomiej Dach
852e4a9766
Add select/deselect all buttons to free mod select screen 2022-05-07 09:29:33 +02:00
Bartłomiej Dach
0b95594f60
Add some more padding between footer and column scroll 2022-05-07 09:29:33 +02:00
Bartłomiej Dach
0c6de331f3
Move footer button padding to a higher level 2022-05-07 09:29:32 +02:00
Bartłomiej Dach
202a603d72
Merge branch 'master' into distance-snap-grid-current-tiume 2022-05-07 08:49:30 +02:00
Dean Herbert
dd63657dfb
Merge pull request #18065 from huoyaoyuan/code-style
Enforce code style analysis shipped with .NET SDK
2022-05-07 14:58:19 +09:00
Dean Herbert
2dd9899cd7
Merge pull request #18126 from bdach/mod-overlay/fix-broken-mod-reference-logic
Fix several issues with new mod select reference replacement logic
2022-05-07 14:36:05 +09:00
Dean Herbert
34237fd05e
Merge pull request #18125 from frenzibyte/fix-overlay-horizontal-offset-overlays
Fix side overlay offset not affecting fullscreen overlays
2022-05-07 14:02:22 +09:00
Dean Herbert
ce14fddcb2 Use above-1 offset instead for more correct feeling parallax 2022-05-07 14:02:07 +09:00
Dean Herbert
71758390b5 Fix time based distance grid alpha not correctly accounting for distance spacing multiplier 2022-05-07 13:37:36 +09:00
Bartłomiej Dach
8c73ed7207
Fix sequence equality check not using reference comparison 2022-05-06 21:47:04 +02:00
Bartłomiej Dach
621f746789
Do not modify selected mods through panel state change during external update 2022-05-06 21:47:04 +02:00
Bartłomiej Dach
c199b8fcb6
Simplify state management in ModColumn
Bad sign when you can't follow your own code.

All of the various state changing methods were flattened into one
because it was too hard to follow what was calling what and why.
2022-05-06 21:46:16 +02:00