1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-15 05:42:56 +08:00
Commit Graph

8871 Commits

Author SHA1 Message Date
Dean Herbert
be15d07b17 Tidy up various implementation details 2023-05-03 18:59:39 +09:00
Dean Herbert
b932e4d986 Rename DrawableUsername to DrawableChatUsername and only pass message ID 2023-05-03 18:53:22 +09:00
Dean Herbert
4f55afb60d Merge branch 'master' into chat-report 2023-05-03 18:50:38 +09:00
Joseph Madamba
1c74f6e8ea
Fix regressed button hover fade in 2023-05-02 22:54:42 -07:00
Joseph Madamba
bede1292de
Fix overlay scroll back button not absorbing hover from behind 2023-05-02 22:40:37 -07:00
Dean Herbert
4a97c2c105
Merge pull request #23038 from cdwcgt/scale-background-dim
Add feature to adjust `ScalingContainer` background dim
2023-05-02 15:36:52 +09:00
Dean Herbert
ce4a6c38a0
Merge pull request #22950 from Joehuu/fix-initial-playlist-highlight
Fix now playing playlist not highlighting selected item on initial open
2023-05-02 15:36:34 +09:00
Dean Herbert
ab4f66fad3 Minor readability refactors 2023-05-02 14:31:39 +09:00
Dean Herbert
7a840e1d82 Remove unnecessary TransferValue spec 2023-05-02 14:29:26 +09:00
Dean Herbert
7efaa299bd Merge branch 'master' into scale-background-dim 2023-05-02 14:24:54 +09:00
Dean Herbert
736be6a73b Refactor slightly for readability 2023-05-02 14:11:16 +09:00
Dean Herbert
e808e7316b Mark delegate value unused and add comment to avoid future regression 2023-05-02 13:29:30 +09:00
Bartłomiej Dach
7cedbca9be
Merge branch 'master' into multiplier-doesnt-update-with-preset-mod 2023-04-30 17:36:00 +02:00
Bartłomiej Dach
2e3daf0a54
Fix leak of ModSettingChangeTracker instances
The `SelectedMods.BindValueChanged()` callback in `ModSelectOverlay` can
in some instances run recursively. This is most heavily leaned on in
scenarios where `SelectedMods` is updated by an external component. In
such cases, the mod select overlay needs to replace the mod instances
received externally with mod instances which it owns, so that the changes
made on the overlay can propagate outwards.

This in particular means that prior to this commit, it was possible to
encounter the following scenario:

	modSettingChangeTracker?.Dispose();
	updateFromExternalSelection(); // mutates SelectedMods to perform the replacement
	                               // therefore causing a recursive call

		modSettingChangeTracker?.Dispose();
		// inner call continues
		modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

	// outer call continues
	modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

This leaks one `modSettingChangeTracker` instance from the inner call,
which is never disposed.

To avoid this, move the disposal to the same side of the recursion that
the creation happens on, changing the call pattern to:

	updateFromExternalSelection(); // mutates SelectedMods to perform the replacement
	                               // therefore causing a recursive call

		modSettingChangeTracker?.Dispose();
		// inner call continues
		modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

	modSettingChangeTracker?.Dispose();
	// outer call continues
	modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

which, while slightly wasteful, does not cause any leaks.

The solution is definitely suboptimal, but addressing this properly
would entail a major rewrite of the mod instance management in the mods
overlay, which is probably not the wisest move to make right now.
2023-04-30 17:31:41 +02:00
Bartłomiej Dach
646d4965b9
Merge branch 'master' into fix-exclusive-fullscreen-detection 2023-04-29 14:39:34 +02:00
_ltn
2d6c0d2900 use of Child instead of Children 2023-04-28 19:24:07 +03:00
Dean Herbert
6929be49b7 Change condition for exclusive fullscreen notice to only show when using the correct renderer
This avoids the notice showing when running on windows, but using the
newer renderers (where the underlying logic hasn't been tested properly
and can result in false-positives).

Supersedes https://github.com/ppy/osu-framework/pull/5759 as a more
correct implementation.
2023-04-28 22:36:30 +09:00
_ltn
4b0ee392f6 add OsuHoverContainer 2023-04-28 05:48:54 +03:00
_ltn
17730f05bc remove UpdateableCountryText 2023-04-28 05:47:05 +03:00
_ltn
4d144cd5b5 clearing the code 2023-04-28 02:06:13 +03:00
_ltn
092377fdaa moving UpdateableCountryText 2023-04-28 01:47:14 +03:00
_ltn
e9843f2066 replace country text object 2023-04-28 01:16:50 +03:00
Hy0tic
56ab029a58 fix issue where multipler does not update when adjusting speed for preset mod 2023-04-22 13:30:08 -04:00
Joseph Madamba
776c4cfaad
Ensure selected field is correct in updateSelectionState()
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-04-19 18:34:35 -07:00
Dean Herbert
52c4703261
Merge pull request #23103 from Joehuu/normalise-overlay-padding
Normalise horizontal padding on overlays
2023-04-10 23:48:59 +09:00
Bartłomiej Dach
1f2c96c8e8
Merge branch 'master' into gd-onlinesetoverlay 2023-04-10 15:35:03 +02:00
Bartłomiej Dach
11fd93a2ba
Inline disturbing getGuestMapper() method
Disturbing because name suggests pure method, but it is in fact `void`
and also performs side effects by about the most confusing means
possible.
2023-04-10 15:20:43 +02:00
Joseph Madamba
a86a968fac
Use public BeatmapSet to match other usages 2023-04-07 21:16:36 -07:00
Joseph Madamba
ed208ef127
Fix more typos and adjust font size to match web 2023-04-07 21:10:37 -07:00
Bartłomiej Dach
b5d9284de2
Merge pull request #23108 from peppy/fix-overlay-toggles-during-disclaimer
Fix attempting to show overlay during game intro playing hide sound effects
2023-04-03 20:48:03 +02:00
cdwcgt
9dd30e4b4c
condition fix 2023-04-03 20:24:38 +09:00
cdwcgt
735b48679e
use LinkFlowContainer directly 2023-04-03 20:09:49 +09:00
cdwcgt
41c01d3929
nullable condition 2023-04-03 20:07:21 +09:00
cdwcgt
51240ed46b
typo 2023-04-03 19:51:22 +09:00
Dean Herbert
43d7386623
Merge pull request #22926 from Joehuu/fix-sort-direction-not-resetting
Fix beatmap listing sort direction not resetting when changing criteria
2023-04-03 15:32:10 +09:00
Dean Herbert
e4eb736622
Merge pull request #22929 from Joehuu/fix-loading-blocking-overlay-headers
Fix beatmap listing filter control being blocked by loading layer
2023-04-03 15:29:38 +09:00
Dean Herbert
a097433cb1 Fix overlay toggle keys working during disabled activation modes
Closes #23104.
2023-04-03 15:03:47 +09:00
Joseph Madamba
247d426c8a
Add horizontal padding to currently playing search textbox 2023-04-02 20:50:18 -07:00
Joseph Madamba
436f1e4ae4
Replace other hardcoded horizontal padding with const
- Also add overlay stream item padding const and account for it
2023-04-02 20:50:18 -07:00
Joseph Madamba
af389b1107
Replace all hardcoded 50 horizontal padding with const 2023-04-02 20:50:18 -07:00
Joseph Madamba
7a0edabd5d
Normalise overlay horizontal padding const 2023-04-02 20:24:13 -07:00
Joseph Madamba
63ea17f10e
Update comment vote pill in line with web 2023-04-02 18:17:40 -07:00
Susko3
c3a6a58169 Fix window mode dropdown not showing 2023-04-02 19:23:18 +02:00
cdwcgt
d949ef3ca4
make guestMapperContainer private
tests don't use it
2023-04-02 22:53:15 +09:00
cdwcgt
2cf8636366
show guest diff author in BeatmapPicker 2023-04-02 22:25:58 +09:00
Dean Herbert
4c2b7e7788 Fix random inspection showing up only in CI 2023-04-02 21:05:20 +09:00
Dean Herbert
cf5acbf66e Update usage of SupportedWindowModes 2023-04-02 20:16:14 +09:00
cdwcgt
5d395e6d37
move to ctor 2023-03-29 22:59:54 +09:00
cdwcgt
e85c28031e
change weird name 2023-03-29 22:55:25 +09:00
cdwcgt
46ede27869
add feature to adjust ScalingContainer background dim 2023-03-28 22:41:24 +09:00