1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-26 16:31:00 +08:00

27749 Commits

Author SHA1 Message Date
Dean Herbert
8cd972a9fe Merge branch 'master' into pinned-comment 2021-08-24 14:37:31 +09:00
Salman Ahmed
847726547a Move mod value change callback inside wedge info text component 2021-08-24 07:53:49 +03:00
Dan Balasescu
dfd61e413a
Merge branch 'master' into difficulty-cache-difficulty-adjust 2021-08-24 12:08:52 +09:00
Dean Herbert
3c9718339c
Merge pull request #14444 from frenzibyte/decouple-ruleset-bindables
Decouple rankings overlay's ruleset selector from the game-wide ruleset bindable
2021-08-24 11:58:13 +09:00
Salman Ahmed
13a24ed36f
Merge branch 'master' into update-section-selection-childcount 2021-08-23 20:43:46 +03:00
Bartłomiej Dach
ccf337bdc2
Merge branch 'master' into editor-setup-file-selector-popovers 2021-08-23 18:28:44 +02:00
Davran Dilshat
6bea744e34 invalidate scroll position 2021-08-23 17:13:25 +01:00
Davran Dilshat
20222f09c4 oops redundant default value 2021-08-23 16:55:31 +01:00
Davran Dilshat
9a507ed273 update selected section on children count change 2021-08-23 16:27:29 +01:00
Salman Ahmed
bd42d7aada Hide popover on file selection 2021-08-23 18:01:01 +03:00
Salman Ahmed
f8a7e0bdb6 Update rankings overlay ruleset bindable with parent on initial display 2021-08-23 13:50:39 +03:00
Salman Ahmed
d3958eb3fb Revert initial ruleset value logic 2021-08-23 13:28:21 +03:00
Salman Ahmed
f4b69ceb8a Remove unused using embedded in reverted changes 2021-08-23 12:40:20 +03:00
Salman Ahmed
257934a144 Revert "Revert ruleset when not applied filters (includes scope change)"
This reverts commit 9fa39cd34e867be4d1258b52f427cfb5eb0cbb6b.
2021-08-23 12:38:30 +03:00
Salman Ahmed
eeeaefbd7d Revert "Store default ruleset value for ability to revert"
This reverts commit cb7c2f713be7cfeb6e667df1404a843773ae83ca.
2021-08-23 12:38:24 +03:00
Dean Herbert
34b51100ff
Merge pull request #14448 from bdach/basic-design-settings
Add basic design settings to editor setup screen
2021-08-23 18:19:58 +09:00
Dean Herbert
c2c9a93e2c Show editor file choosers in a popover rather than inline
Supersedes and closes #14370.
Closes #14367.
2021-08-23 18:12:36 +09:00
Dean Herbert
2f6b95da39 Add descriptions for the remaining settings 2021-08-23 17:41:03 +09:00
Dean Herbert
d17f7b5c8b Side WidescreenStoryboard to on by default for new beatmaps 2021-08-23 17:40:41 +09:00
Dean Herbert
1de84e1c98
Change description to include mention of video
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2021-08-23 17:34:19 +09:00
Dean Herbert
eaa4d479ac
Merge pull request #14408 from smoogipoo/remove-current-room
Remove the global "selected room" from online screens
2021-08-23 17:29:31 +09:00
Salman Ahmed
9fa39cd34e Revert ruleset when not applied filters (includes scope change) 2021-08-23 11:11:06 +03:00
Salman Ahmed
cb7c2f713b Store default ruleset value for ability to revert 2021-08-23 11:09:26 +03:00
Salman Ahmed
1d89d757af Fix beatmap ruleset selector selecting initial ruleset 2021-08-23 09:57:05 +03:00
Dean Herbert
99bb3032a5 Move gradient to be part of the background for now 2021-08-23 15:27:32 +09:00
Salman Ahmed
2ba88923b6 Select user preferred ruleset on overlay ruleset selectors initially 2021-08-23 08:58:54 +03:00
Dean Herbert
58fb0c042b Remove background scale altogether
I'm not sure why this is required. Seems like something which was meant
to exist to handle parallax, but that is already handled elsewhere now.
2021-08-23 14:34:27 +09:00
smoogipoo
4f3a5fbad5 Fix test failure 2021-08-23 14:29:15 +09:00
Dan Balasescu
ead1b47e0e
Merge branch 'master' into localise-beatmap-set-overlay 2021-08-23 13:22:52 +09:00
Dan Balasescu
2ad5914fec
Merge branch 'master' into decouple-ruleset-bindables 2021-08-23 12:40:57 +09:00
Bartłomiej Dach
2e80e2be51
Reword epilepsy warning description text 2021-08-22 21:47:37 +02:00
Bartłomiej Dach
9538a32b5e
Explicitly update beatmap info wedge on mod change
This used to already be the case prior to b419ea7, but in a very
roundabout way. Changes to the value of the star difficulty bindable -
including indirect changes via the set of active mods changing - would
trigger the wedge display to regenerate and load asynchronously.

b419ea7 accidentally broke this by moving down the bindable retrieval to
a lower level, at which point `WedgeInfoText` would only receive the set
of mods selected at the time at which a given beatmap was selected, and
not receive any further updates, breaking the BPM display updating in
real time (as `WedgeInfoText` could not be aware that rate-changing mods
were even in effect).

To resolve, explicitly reload the wedge's contents on mod changes.
2021-08-22 19:16:46 +02:00
Bartłomiej Dach
e4a8f72167
Add failing test case 2021-08-22 19:16:43 +02:00
Bartłomiej Dach
d602dc9d90
Enable epilepsy warning setting persistence in encoder 2021-08-22 17:43:20 +02:00
Bartłomiej Dach
9816af688e
Add basic design settings to setup screen 2021-08-22 17:43:20 +02:00
Salman Ahmed
45b8bd175c Decouple rankings overlay's ruleset bindable from game-wide bindable 2021-08-22 16:25:35 +03:00
Salman Ahmed
d164529be8 Fix ruleset selector not updating to the first ruleset item until after LoadComplete()
This fixes the whole issue behind `Ruleset.Value` being null, by
updating `Current` on BDL rather than waiting for the base logic which
executes at `LoadComplete`.

This seems like something that should happen at the base `TabControl` class itself, by switching `Current` right after the first added tab item, rather than doing it on `LoadComplete`, but I'm not sure about changing framework logic outright, so fixing this locally until it occurs on other places.
2021-08-22 16:25:34 +03:00
Dean Herbert
81e3c9d40f Update resources 2021-08-22 19:13:21 +09:00
Salman Ahmed
956112eb10 Reword comment and remove brackets 2021-08-22 12:40:41 +03:00
Salman Ahmed
9b1720bd6c Merge branch 'master' into localise-beatmap-set-overlay 2021-08-22 10:53:31 +03:00
Michael Malloy
9cd0a182f6
Add null check for Android ruleset loading 2021-08-22 00:38:48 -05:00
Bartłomiej Dach
7ab12959a0
Merge branch 'master' into editor-regex 2021-08-21 19:57:26 +02:00
Dean Herbert
77f3668751
Merge branch 'master' into fix-screen-offsetting-on-scaling 2021-08-22 02:28:06 +09:00
Bartłomiej Dach
995338029c
Fix difficulty cache lookups sharing underlying mod instances
`DifficultyCacheLookup`s were storing raw `Mod` instances into their
`OrderedMods` field. This could cause the cache lookups to wrongly
succeed in cases of mods with settings. The particular case that
triggered this fix was Difficulty Adjust.

Because the difficulty cache is backed by a dictionary, there are two
stages to the lookup; first `GetHashCode()` is used to find the
appropriate hash bucket to look in, and then items from that hash bucket
are compared against the key being searched for via the implementation
of `Equals()`.

As it turns out, the first hashing step ended up being the saving grace
in most cases, as the hash computation included the values of the mod
settings. But the Difficulty Adjust failure case was triggered by the
quirk that `GetHashCode(0) == GetHashCode(null) == 0`.

In such a case, the `Equals()` fallback was used. But as it turns out,
because the `Mod` instance stored to lookups was not cloned and
therefore potentially externally mutable, it could be polluted after
being stored to the dictionary, and therefore breaking the equality
check. Even though all of the setting values were compared, the hash
bucket didn't match the actual contents of the lookup anymore (because
they were mutated externally, e.g. by the user changing the mod setting
values in the mod settings overlay).

To resolve, clone out the mod structure before creating all difficulty
lookups.
2021-08-21 15:50:33 +02:00
Salman Ahmed
9a6ff29951
Reword comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-08-21 15:39:57 +03:00
Salman Ahmed
1729d43cec Add explanatory comment 2021-08-21 15:18:03 +03:00
Salman Ahmed
df5354eba6
Merge branch 'master' into fix-setting-section-clickability 2021-08-21 14:25:28 +03:00
Salman Ahmed
216ff07497
Merge branch 'master' into fix-setting-section-clickability 2021-08-21 14:11:55 +03:00
Salman Ahmed
76e1d88028
Merge branch 'master' into gameplay-chat-mouse-cursor 2021-08-21 14:01:30 +03:00
Dean Herbert
ae47c5cdb3 Fix bottom area of a settings section not being clickable 2021-08-21 15:08:42 +09:00