Commit Graph

43954 Commits

Author SHA1 Message Date
f390e9a156 Merge pull request #14443 from peppy/update-resources
Update resources
2021-08-22 13:38:27 +03:00
81e3c9d40f Update resources 2021-08-22 19:13:21 +09:00
82f3e947dd Merge pull request #14442 from TheShadowEevee/android-ruleset-error-fix
Add null check for Android ruleset loading
2021-08-22 19:07:37 +09:00
956112eb10 Reword comment and remove brackets 2021-08-22 12:40:41 +03:00
9b1720bd6c Merge branch 'master' into localise-beatmap-set-overlay 2021-08-22 10:53:31 +03:00
9cd0a182f6 Add null check for Android ruleset loading 2021-08-22 00:38:48 -05:00
3795030ebb Merge branch 'master' into mod-incompatibility-ui 2021-08-22 11:14:24 +08:00
0bbddd297c Remove unused code 2021-08-22 11:05:53 +08:00
e213562b2a Add a red tint on mods incompatible with the current selection 2021-08-22 11:01:17 +08:00
ef6faf04be Use FirstOrDefault in TooltipContent 2021-08-22 10:22:18 +08:00
3d402d9e78 List incompatible mods in tooltip of mod button 2021-08-22 10:13:34 +08:00
2877b43824 split multiplayer and playlist activity 2021-08-22 09:54:07 +08:00
37c0550921 Merge pull request #14418 from LittleEndu/editor-regex
Change editor timestamp regex to not match non-editor ones
2021-08-21 20:20:36 +02:00
7ab12959a0 Merge branch 'master' into editor-regex 2021-08-21 19:57:26 +02:00
c2c0ff3327 Merge pull request #14425 from frenzibyte/fix-screen-offsetting-on-scaling
Fix screen offsetting not handling scaled game content properly
2021-08-22 02:51:17 +09:00
77f3668751 Merge branch 'master' into fix-screen-offsetting-on-scaling 2021-08-22 02:28:06 +09:00
43b3845970 Remove redundant string interpolation 2021-08-21 16:35:40 +02:00
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
f642546d6a Add failing test case 2021-08-21 15:50:33 +02:00
479401e533 Add option to set own computation function in test 2021-08-21 15:50:32 +02:00
9a6ff29951 Reword comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-08-21 15:39:57 +03:00
b2ee777ceb Merge pull request #14431 from peppy/fix-setting-section-clickability
Fix bottom area of a settings section not being clickable
2021-08-21 15:31:50 +03:00
1729d43cec Add explanatory comment 2021-08-21 15:18:03 +03:00
df5354eba6 Merge branch 'master' into fix-setting-section-clickability 2021-08-21 14:25:28 +03:00
a7e513faed Merge pull request #14430 from peppy/gameplay-chat-mouse-cursor
Use the UI mouse cursor when hovering gameplay chat in an interactive state
2021-08-21 14:25:09 +03:00
216ff07497 Merge branch 'master' into fix-setting-section-clickability 2021-08-21 14:11:55 +03:00
76e1d88028 Merge branch 'master' into gameplay-chat-mouse-cursor 2021-08-21 14:01:30 +03:00
21cc24c1d0 Merge pull request #14429 from peppy/improve-chat-username-effect
Improve highlighted chat username shadow effect
2021-08-21 13:57:32 +03:00
ae47c5cdb3 Fix bottom area of a settings section not being clickable 2021-08-21 15:08:42 +09:00
15d443f6b7 Use the UI mouse cursor when hovering gameplay chat in an interactive state 2021-08-21 14:44:54 +09:00
36352d1de4 Improve highlighted chat username shadow effect 2021-08-21 14:34:35 +09:00
318f830cd2 Expand test coverage for different scaling modes
Intentionally not using `[Values]` as the scale modes can be applied to
the running game instance directly, rather than recreating it all over
again.

The same could be said for the notification overlay but not sure, seems
like something that should be considered at an `OsuGameTestScene` level
instead (whether the same game instance can be reused for further
testing).
2021-08-21 04:19:55 +03:00
20f193c1c2 Fix screen offsetting not handling scaled game instances
By using `Content` instead, now the logic will get the X of the settings
overlay at the `Content` space, which can be scaled in the
`ScalingMode.Everything` mode.

And in the case of `ScalingMode.ExcludeOverlays`, a subcontainer
somewhere inside `Content` that's holding the screen stack would be scaled,
but `Content` won't be affected which is what we want in that case.
2021-08-21 04:16:12 +03:00
058d2d2a49 Use nekodex's regex from osu-web 2021-08-20 23:01:06 +03:00
8745fe9e34 Change editor timestamp regex to not match non-editor ones 2021-08-20 22:32:04 +03:00
d3dba296d6 Update resources 2021-08-20 23:47:35 +09:00
9de0729bfc Merge pull request #14377 from peppy/temporary-directory-test-storage
Update test scenes in line with temporary directory changes framework-side
2021-08-20 23:27:39 +09:00
e13b516f31 Fix excess blank lines 2021-08-20 22:26:38 +09:00
0c936aec4b Merge branch 'master' into temporary-directory-test-storage 2021-08-20 22:09:42 +09:00
5e234fb746 Add try catch to avoid test failures on windows 2021-08-20 22:07:13 +09:00
f85d3665d8 Cleanups 2021-08-20 21:45:24 +09:00
5192ee3b57 Fix initial display in room background 2021-08-20 21:40:35 +09:00
5c8ca32ea4 Simplify lounge implementation 2021-08-20 21:33:21 +09:00
b1a732b9b7 Remove selectedRoom from OnlinePlayScreen 2021-08-20 21:28:48 +09:00
ceb07826d7 Merge branch 'master' into remove-current-room 2021-08-20 21:10:41 +09:00
9458cd5a31 Make DrawableMatchRoom background load instantly 2021-08-20 21:07:51 +09:00
b190020c4b Block lounge background screen from exiting 2021-08-20 21:02:25 +09:00
30d7817aad Merge pull request #14384 from peppy/settings-dim-other-sections
Dim all but the current settings section
2021-08-20 20:52:07 +09:00
0aea39f5f1 Merge branch 'master' into temporary-directory-test-storage 2021-08-20 20:41:54 +09:00
0a6b678059 Merge branch 'master' into settings-dim-other-sections 2021-08-20 20:22:22 +09:00