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

7652 Commits

Author SHA1 Message Date
Bartłomiej Dach
d964b4f23c
Fix uneven spacing when some mod columns are hidden 2022-05-08 15:40:21 +02:00
Bartłomiej Dach
6bdcf893b7
Move alpha management closer to screen level
Felt bad messing with alpha at the column level.
2022-05-08 15:40:10 +02:00
Bartłomiej Dach
92ccec20d7
Hide mod columns if all mods within are filtered out 2022-05-08 14:53:59 +02:00
Dean Herbert
b8cb2c1b82 Increase scroll amount slightly 2022-05-08 19:57:03 +09:00
Dean Herbert
778497b9e2 Scroll mod select slightly into view on first display 2022-05-08 18:58:54 +09:00
Bartłomiej Dach
b92d95a17a
Fix mod panels playing samples when hidden at a higher level 2022-05-08 10:39:49 +02:00
Bartłomiej Dach
81ca534f87
Implement ISamplePlaybackDisabler in mod select 2022-05-08 10:39:49 +02:00
Dean Herbert
230c4e27b8 Simplify and centralise hiding logic for mod overlay
Behaviourally, this also always toggles via button triggering to add the
button flash animation.
2022-05-08 13:03:28 +09:00
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
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
fe69bd7ed9
Merge branch 'master' into change-mod-scroll-behaviour 2022-05-07 13:29:02 +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
8ee3fdd0aa Change mod scrolling behaviour to not scroll horizontally on columns/settings 2022-05-07 12:15:11 +03: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
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
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
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
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
Salman Ahmed
1409f8ca96
Merge branch 'master' into fix-toolbox-expansion 2022-05-06 18:00:01 +03:00
Bartłomiej Dach
c533c93ffd
Remove leftover border thickness spec in mod settings area
Was never supposed to be there, it was a vestige of a previous design
iteration that went by unnoticed.
2022-05-06 15:34:49 +02:00
Bartłomiej Dach
e527574ede
Merge branch 'master' into fix-toolbox-expansion 2022-05-06 13:47:36 +02:00
Dean Herbert
98eab9668d
Merge pull request #18119 from bdach/mod-overlay/broken-hover
Fix mod panels not hovering correctly after closing customisation area via mouse on new mod select
2022-05-06 20:42:33 +09:00
Bartłomiej Dach
e9d52aa954
Remove not-accessed field 2022-05-06 13:09:37 +02:00
Bartłomiej Dach
a915b7333c
Remove unused using directive 2022-05-06 13:08:54 +02:00
Dean Herbert
88c190f3e3 Change colour denoting expanded state to be gray rather than yellow
I always found the yellow colour very non-descript in this case. Gray
seems to work better?
2022-05-06 19:45:17 +09:00
Dean Herbert
b432885e5f Tidy up ordering of SettingsToolboxGroup 2022-05-06 19:39:09 +09:00
Dean Herbert
59add66632 Remove unnecessary autosize workaround (was fixed long ago) 2022-05-06 19:39:00 +09:00
Dean Herbert
949e30c4b4 Remove auto-expansion of individual toolbox groups when parent expanding container expands 2022-05-06 19:36:41 +09:00
Bartłomiej Dach
08fd0ea086
Fix click-to-return container still handling hover when inactive 2022-05-06 12:28:53 +02:00
Dean Herbert
be960eb092 Move dangerous hold specification to base class 2022-05-06 14:34:31 +09:00