1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-15 23:17:51 +08:00
Commit Graph

10077 Commits

Author SHA1 Message Date
Salman Ahmed
2fcc61edfa
Merge branch 'master' into audio-ducking-fx 2024-07-08 12:50:46 +03:00
Bartłomiej Dach
14a93bfc1a
Merge pull request #28553 from frenzibyte/mod-select-customisation-panel
Detach mod customisation area from the footer and replace with an overlay panel display
2024-07-08 11:26:21 +02:00
Salman Ahmed
784a9ae743
Merge branch 'master' into audio-ducking-fx 2024-07-08 12:26:10 +03:00
Joseph Madamba
73d164e0d0 Add chevron transition to CommentRepliesButton 2024-07-08 00:32:54 -07:00
Dean Herbert
03bd6069d8
Add slight animation when revert to default button is displayed
This also fixes the transforms running too often (could make the initial
transform take longer than expected if adjusting a slider bar, for
instance).
2024-07-08 15:50:27 +09:00
Joseph Madamba
9532146978 Fix content overflowing to border
The +2 for the top isn't really needed for the original purpose as content fades out now, but visually, having the header and content spacing looks more correct.
2024-07-07 23:12:20 -07:00
Salman Ahmed
58e236a247 Add transition to dropdown chevrons 2024-07-08 08:48:52 +03:00
Salman Ahmed
4c2ae07eba Use scale instead of rotation in ChevronButton (used in top-right of comments section) 2024-07-08 08:48:07 +03:00
Salman Ahmed
dc630ddc9d Use scale instead of rotation in news month sidebar 2024-07-08 08:45:44 +03:00
Salman Ahmed
be039b85ad Use scale instead of rotation in profile cover toggle button 2024-07-08 08:32:29 +03:00
Salman Ahmed
5223e0aeae Use scale instead of rotation for overlay scroll button 2024-07-08 08:31:33 +03:00
Salman Ahmed
22f2f83695 Rescale chevron up and down instead 2024-07-08 08:07:57 +03:00
Salman Ahmed
a0ffe9bcbc Remove unnecessary HandlePositionalInput override 2024-07-08 07:58:40 +03:00
Salman Ahmed
0c5a1410d3 Add fade transition to content during open/close 2024-07-08 07:54:37 +03:00
Dean Herbert
3650f3c479
Allow multiple ducks with same parameters 2024-07-08 13:52:40 +09:00
Dean Herbert
0067450b22
Change volume parameter to double 2024-07-08 13:47:57 +09:00
OliBomby
5da8bb5bec prevent volume control from eating inputs 2024-07-07 21:33:27 +02:00
Dean Herbert
5907e0d1eb
Make DuckDuration non-zero by default 2024-07-05 18:39:13 +09:00
Dean Herbert
7efb4ce30a
Fix multiple disposals resulting in assert being hit 2024-07-05 18:39:12 +09:00
Dean Herbert
717f7ba9f0
Better support multiple concurrent ducking operations 2024-07-05 18:12:40 +09:00
Dean Herbert
20ba6ca867
Add mention of return type for Duck method 2024-07-05 15:11:11 +09:00
Dean Herbert
554740af10
Adjust ducking API to use a parameters record 2024-07-05 15:04:40 +09:00
Dean Herbert
0d858ce8f8
Change default easings to In/Out for all ducking operations 2024-07-05 13:51:41 +09:00
Dean Herbert
ec4623d49f
Reduce duck length slightly on toolbar ruleset selector 2024-07-05 13:51:29 +09:00
Dean Herbert
0696e2df32
Apply nullability to ducking methods 2024-07-05 12:58:34 +09:00
Dean Herbert
7f84e377ab
Merge branch 'music-controller-nullability' into audio-ducking-fx 2024-07-05 12:57:39 +09:00
Dean Herbert
d21eec9542
Apply nullability to MusicController 2024-07-05 12:50:15 +09:00
Jamie Taylor
a5077fcb3f
Rename TimedDuck -> DuckMomentarily 2024-07-04 17:22:33 +09:00
Jamie Taylor
82e4e884d7
Change overlapping Duck() usages to be a noop instead of a throw 2024-07-04 15:51:50 +09:00
Jamie Taylor
753463fadb
Fix code style 2024-07-04 15:01:37 +09:00
Jamie Taylor
681398059e
Merge branch 'master' into audio-ducking-fx 2024-07-04 14:28:37 +09:00
Jamie Taylor
d948193757
Change Duck() to be IDisposable and prevent overlapping usages 2024-07-04 14:23:35 +09:00
Salman Ahmed
585e09981f Allow scrollbar to overlap content
The content is already padded enough to have the scrollbar sit on top.
Having the content change padding when the scrollbar appears gives an
unpleasent experience (especially when the scrollbar is hidden at first
but the user increases the content's height by clicking on a dropdown or
something)
2024-07-04 07:36:31 +03:00
Salman Ahmed
8658389854 Clarify how the panel blocks input 2024-07-04 07:34:19 +03:00
OliBomby
d0715c5f12 scale along rotated axis 2024-07-03 16:23:19 +02:00
Bartłomiej Dach
e73faaefd2
Merge branch 'master' into editor-test-play 2024-07-03 13:54:47 +02:00
Jamie Taylor
d29d114133
Match prior ducking behaviour 2024-07-03 13:52:20 +09:00
Jamie Taylor
b972632e4f
Change default easing to match prior behaviour 2024-07-03 13:50:35 +09:00
Jamie Taylor
153138cdac
Use null to disable audio filter instead 2024-07-03 13:47:59 +09:00
Salman Ahmed
f1012070c4
Merge branch 'master' into mod-select-customisation-panel 2024-07-03 07:36:52 +03:00
Dean Herbert
5350945340
Update HasFlag usages 2024-07-03 00:19:04 +09:00
Bartłomiej Dach
d85c467856
Implement quick exit hotkeys for editor test play 2024-07-02 14:34:36 +02:00
Salman Ahmed
1d94c96a8e Display customisation header in disabled state when no customisable mod selected 2024-07-02 14:40:16 +03:00
Salman Ahmed
a65af8249c Fix first-run setup buttons reset after reopening from dismiss 2024-06-30 07:27:35 +03:00
Salman Ahmed
e57a0029f1 Remove local footer from ShearedOverlayContainer 2024-06-30 06:50:36 +03:00
Salman Ahmed
5dd822ea38 Migrate first-run setup overlay footer content 2024-06-30 06:50:36 +03:00
Salman Ahmed
48bf3f1385 Migrate mod select overlay footer content 2024-06-30 06:50:36 +03:00
Salman Ahmed
467d7c4f54 Refactor game-wide layout order of footer to fix depth issues with overlays and improve UX
With this new order, the logo can be easily moved to display in front of the footer in `SongSelectV2` without breaking experience when footer-based overlays are present. Such overlays (i.e. mod select overlay) will also be dimmed alongside the current screen when a game-wide overlay is open (e.g. settings).
2024-06-30 06:50:36 +03:00
Salman Ahmed
b8816bfc28 Update colour scheme of footer in line with visible overlay 2024-06-30 04:32:36 +03:00
Salman Ahmed
2319fa11ec Support performing custom overlay-specific action with back button 2024-06-30 04:32:36 +03:00
Salman Ahmed
916d0bfcc2 Temporarily show screen footer if hidden while overlay is present 2024-06-30 04:32:36 +03:00
Salman Ahmed
68b8a4fb2a Use ScreenFooter for displaying footer buttons from overlays 2024-06-30 04:32:36 +03:00
Salman Ahmed
c6c75ae48d Merge branch 'master' into footer-v2-side-buttons 2024-06-29 08:19:49 +03:00
Bartłomiej Dach
007bd3973a
Merge pull request #28653 from peppy/featured-artist-even-more-visible
Update beatmap listing filter overlay to better imply selected filters
2024-06-28 09:50:21 +02:00
Bartłomiej Dach
030bbf2641
Fix vertical overlaps on multiselection filters when they wrap 2024-06-28 09:07:29 +02:00
Dean Herbert
fa1527f446
Update design for selected filters to better imply that they are selected 2024-06-28 15:45:09 +09:00
Dan Balasescu
77b00dac7e
Fix low pass filter sometimes not applied in dialog overlays 2024-06-28 15:20:55 +09:00
Dean Herbert
c1bec7a7c3
Simplify colour logic for beatmap overlay filter rows 2024-06-28 14:55:55 +09:00
Salman Ahmed
86b8357b8b Improve UX & input handling when customisation panel is open 2024-06-28 08:53:31 +03:00
Dean Herbert
d370f50cc1
Syncrhronise colours across mod and preset tooltips 2024-06-28 13:16:54 +09:00
Dean Herbert
28d5278935
Show preset description text in tooltip popup
As proposed in https://github.com/ppy/osu/discussions/28610.
2024-06-28 13:16:53 +09:00
Salman Ahmed
167ffac218 Reorder container layout for popovers to recognize clicks on customisation panel
Basically moves `PopoverContainer` to cover both the columns and the customisation panel, so that if the customisation panel is clicked on, the popover container will notice that and hide popovers like the mod preset popover.
2024-06-28 06:35:21 +03:00
Dean Herbert
d722be16e3
Add missing base calls for safety 2024-06-25 23:41:43 +09:00
Salman Ahmed
a277d9df13 Kill focus from components when clicking on an empty space in the panel 2024-06-25 07:13:36 +03:00
Salman Ahmed
3f06a0ef9e Block certain operations when customisation panel is open
Normally I would just block keyboard input from going past `ModCustomisationPanel`, but it's a little complicated here since I'm dealing with global action key binding presses, and I also still want actions like `GlobalAction.Back` to get past the customisation panel even if it's expanded.
2024-06-25 06:16:46 +03:00
Salman Ahmed
57ee794398 Add extra margin to avoid 1px artifacts 2024-06-25 06:08:13 +03:00
Salman Ahmed
0a72394c8a Fix customisation panel conflicting with beatmap attributes when collapsed 2024-06-25 06:04:39 +03:00
Salman Ahmed
e23da93c09 Use new display on mod select overlay and remove old display 2024-06-23 08:22:50 +03:00
Salman Ahmed
04efa61156 Add different display for mod customisation 2024-06-23 08:22:13 +03:00
Jamie Taylor
2ffeb1b361
Add fallback behaviour for custom rulesets 2024-06-23 02:20:51 +09:00
Jamie Taylor
0d11b2b91c
Replace manual usages of AudioFilter with new ducking methods 2024-06-22 01:57:14 +09:00
Jamie Taylor
a56751511e
Apply a ducking effect to the currently playing track when switching ruleset 2024-06-22 01:36:30 +09:00
Bartłomiej Dach
659505f711
Adjust calls to GetContainingInputManager() 2024-06-18 07:41:19 +02:00
Bartłomiej Dach
8a4ae5d23d
Null-propagate all calls to GetContainingFocusManager() 2024-06-18 07:30:46 +02:00
Bartłomiej Dach
3afe98612c
Add RestoreState() to IEditorChangeHandler 2024-06-11 11:31:30 +02:00
Dean Herbert
dd3f4bcdab
Fix code quality and null handling 2024-06-07 00:01:50 +08:00
Xesquim
860afb8123 Creating method in ModUtils to calculate the rate for the song 2024-06-06 10:06:07 -03:00
Bartłomiej Dach
cb72630ce1
Fix compile failures 2024-05-31 08:09:06 +02:00
Dean Herbert
5dfeaa3c4a
Move dialog strings to more common class name 2024-05-31 11:46:32 +09:00
Bartłomiej Dach
7b7e439d03
Merge branch 'master' into scale-tool 2024-05-29 10:15:48 +02:00
Bartłomiej Dach
4c881b5633
Use better name if we're renaming 2024-05-29 09:40:29 +02:00
OliBomby
a89ba33b47 rename CanScaleSelectionOrigin/PlayfieldOrigin to make clear its not the origin being scaled 2024-05-28 16:14:16 +02:00
Dean Herbert
4408039b3e
Merge branch 'master' into footer-v2-back-button 2024-05-28 15:50:34 +09:00
Dean Herbert
b6471f0b9c
Allow previewing audio of playlist items 2024-05-27 17:09:37 +09:00
Bartłomiej Dach
c800bb5339
Merge branch 'master' into lazer-speedkeys 2024-05-24 13:19:26 +02:00
Bartłomiej Dach
cab8cf7410
Move mod speed hotkey handler to user mod select overlay
The very base class is the wrong place for it because
`FreeModSelectOverlay` inherits from it, and that one has different
assumptions and rules than "user" selection. In particular, in non-user
selection, more than one rate adjust mod may be active, which breaks the
mod speed hotkey's basic assumptions.
2024-05-24 13:14:06 +02:00
Bartłomiej Dach
b1b207960a
Actually use return value 2024-05-24 13:09:44 +02:00
Bartłomiej Dach
8cac87e496
Fix speed controls in mod select overlay not handling repeat 2024-05-24 13:09:07 +02:00
Bartłomiej Dach
345fb60679
Fix toast strings 2024-05-24 13:08:17 +02:00
Bartłomiej Dach
63406b6feb
Rewrite implementation 2024-05-24 13:03:42 +02:00
Bartłomiej Dach
8a2dd4d816
Merge branch 'master' into scaling 2024-05-23 15:10:40 +02:00
Bartłomiej Dach
ac5c031a3a
Simplify original state management in skin selection scale handler 2024-05-23 15:01:28 +02:00
Dean Herbert
66ceda1d67
Update focus specifications in line with framework changes 2024-05-22 21:32:49 +08:00
Fabian van Oeffelt
57da4229ff Add speed value to Toast 2024-05-22 13:58:59 +02:00
Dean Herbert
d0b1ebff5a
Revert "Temporary rollback of framework / SDL3"
This reverts commit d7d569cf4e.
2024-05-22 16:29:39 +08:00
Dean Herbert
f979200712
Use null conditional rather than implicit not-null 2024-05-22 12:06:51 +08:00
Dean Herbert
1fdebe94ac
Merge branch 'master' into lazer-speedkeys 2024-05-22 12:05:04 +08:00
Dean Herbert
02a388cba6
Fix enum not being at end (and adjust naming) 2024-05-22 12:03:48 +08:00
Fabian van Oeffelt
148afd1201 Change Speedchange behaviour to keep changing while holding key, Add Toast to nofity user what just happend 2024-05-21 14:47:34 +02:00
Dean Herbert
d7d569cf4e
Temporary rollback of framework / SDL3 2024-05-21 14:36:16 +08:00
Dean Herbert
e740b8bcc3
Fix single frame glitching in skin editor
https://github.com/ppy/osu/pull/28257#discussion_r1606999574
2024-05-21 14:36:11 +08:00
Dean Herbert
3b86da443b
Merge pull request #28257 from bdach/fix-skin-editor-spaz
Fix closest anchor selection spazzing out in multiple scenarios
2024-05-21 14:35:29 +08:00
Bartłomiej Dach
3da3b91be5
Improve closest origin selection to include effects of rotation/flip
Closes https://github.com/ppy/osu/issues/28237.

Solution as proposed here:
https://github.com/ppy/osu/pull/28089#issuecomment-2095372157

For flips and rotations by 90 degrees this does what you would expect it
to. For arbitrary rotations it *sort of kind of* attempts to do this but
the results are a bit wonky - probably still better than what was there
before, though?
2024-05-20 10:23:12 +02:00
Bartłomiej Dach
c03f68413a
Fix skin editor closest origin selection spazzing out on scaled sprites
Closes https://github.com/ppy/osu/issues/28215.

`drawable.Position` is a location in the parent's coordinate space, and
`drawable.OriginPosition` is in the drawable's local space and
additionally does not take scale into account.
2024-05-20 10:23:07 +02:00
Susko3
04acc58b74 Don't show warning on android
Unsure about iOS.
2024-05-19 14:12:21 +02:00
Fabian van Oeffelt
80064c4b98 Speedchange now also works in Modselect 2024-05-18 18:38:23 +02:00
Salman Ahmed
310b4d90cc Move SHEAR constant to OsuGame and revert back to 0.2x (i.e. master)
Discussed in [discord](https://discord.com/channels/188630481301012481/188630652340404224/1240490608934653984).
2024-05-16 07:28:02 +03:00
Salman Ahmed
9265290acf Change shear factor everywhere to 0.15x 2024-05-16 05:33:01 +03:00
Salman Ahmed
e3afd89dc8 Allow specifying height of ShearedButtons
Also includes a test case in `TestSceneShearedButton`s to ensure the buttons' shear factors don't change on different heights (I've encountered issues with that previously).
2024-05-16 05:02:56 +03:00
OliBomby
8df5f22b4e Merge remote-tracking branch 'upstream/master' into scaling 2024-05-15 23:05:19 +02:00
Dean Herbert
e887f93eca
Always show placeholder on unknown / missing country 2024-05-10 22:45:59 +08:00
Dean Herbert
b026309e36
Add setting to allow hiding all country flags
There have been enough requests for this at this point to implement it.
2024-05-10 20:32:21 +08:00
Dean Herbert
88b20b357a
Increase padding around text in dialogs 2024-05-09 14:38:10 +08:00
Ekischleki
e4bfa6f46b
Merge branch 'master' into Make-deletion-confirmation-less-confusing 2024-05-07 18:45:02 +02:00
Dean Herbert
1d6915478f
Add message letting users know that beatmaps are donwloading in the background 2024-05-07 14:26:49 +08:00
Susko3
f824bd1441 Fix userTriggered not being passed to private helper 2024-05-06 21:52:03 +02:00
Erik Wolfschläger
32444e0e30 Make deletion confirmation content less confusing 2024-05-06 18:11:40 +02:00
Bartłomiej Dach
d7a0fdce07
Merge pull request #28089 from peppy/use-closest-origin
Automatically choose origin (along with anchor) to make skin editor placement easier for users
2024-05-06 14:57:34 +02:00
Dean Herbert
29eef26a69
Merge pull request #28118 from bdach/scaling-mode-does-not-affect-skin-editor
Fix sizing of gameplay preview in skin editor not updating on scaling mode change
2024-05-06 18:46:48 +08:00
Bartłomiej Dach
353a07f7a5
Fix code quality inspection 2024-05-06 12:23:11 +02:00
Bartłomiej Dach
f066026503
Fix sizing of gameplay preview in skin editor not updating on scaling mode change
Closes https://github.com/ppy/osu/issues/28115.
2024-05-06 11:55:51 +02:00
Bartłomiej Dach
cf87e9cd40
Do not show integration settings on mobile
Closes https://github.com/ppy/osu/issues/28097.

The settings weren't actually doing anything at all there anyway.
2024-05-06 11:24:42 +02:00
Bartłomiej Dach
71776a583c
Merge branch 'master' into preset-td-autoplay 2024-05-06 09:02:08 +02:00
Bartłomiej Dach
4c7e6b125c
Add clarification comment 2024-05-06 08:49:30 +02:00
Dean Herbert
12cd3bbe1c
Fix incorrect scale handling due to selection point changes 2024-05-06 11:34:37 +08:00
Joseph Madamba
359238395f Fix now playing overlay text scroll breaking when toggling metadata language setting 2024-05-05 15:43:46 -07:00
cdwcgt
1f92f1d19b
remove blank line
nt
2024-05-04 20:41:36 +08:00
cdwcgt
fe30ca3d39
fix linq logic 2024-05-04 20:18:31 +08:00
cdwcgt
f9be9ed479
remove incompatible system mods before enable preset 2024-05-04 19:58:32 +08:00
Dean Herbert
2cb367fdce
Disable "origin" menu when in "Closest" placement mode 2024-05-04 13:29:05 +08:00
Dean Herbert
e7ca02ffde
Fix position changing when origin updates during a drag 2024-05-04 13:28:33 +08:00
Dean Herbert
0b61e2cd42
Use closest origin along with closest anchor 2024-05-04 13:09:51 +08:00
Dean Herbert
ecb9173e51
Merge pull request #28017 from Joehuu/scrollable-text
Scroll now playing overlay text when overflowing
2024-05-03 20:05:58 +08:00
Bartłomiej Dach
3840e92576
Merge pull request #28075 from peppy/fix-chat-ui-scale
Fix chat overlay being far too large
2024-05-03 09:04:07 +02:00
Bartłomiej Dach
53b9159a01
Merge pull request #28078 from peppy/default-beatmap-background-be-gone
Stop using visually noisy `bg4` for default backgrounds
2024-05-03 08:06:22 +02:00
Dean Herbert
c935d3bf6c
Reduce font size in channel listing too 2024-05-03 14:00:28 +08:00
Joseph Madamba
c21b7c7df9 Use IsLoaded instead of Schedule 2024-05-02 22:46:42 -07:00
Dean Herbert
058bd5ced6
Stop using visually noisy bg4 for default backgrounds
This has always really annoyed me.
2024-05-03 13:38:27 +08:00
Dean Herbert
3249ecee27
Fix chat overlay being far too large 2024-05-03 12:31:19 +08:00
Dean Herbert
aa4d16bdb8
Fix beatmap listing cards being far too large 2024-05-03 12:13:52 +08:00
Joseph Madamba
c15a685071 Remove unused usings 2024-05-02 17:07:49 -07:00
Joseph Madamba
381ddb0676 Fix weird formatting 2024-05-02 17:06:11 -07:00
Joseph Madamba
269077f854 Only support centre anchors 2024-05-02 17:06:11 -07:00
Joseph Madamba
2f075e3247 Apply half margin of tolerance on both sides before text scrolls 2024-05-02 17:06:11 -07:00
Bartłomiej Dach
f78abf801c
Autosave edited skin on change 2024-04-29 14:38:53 +02:00
Joseph Madamba
d4951a093f Scroll now playing overlay text when overflowing 2024-04-27 20:18:49 -07:00
Joseph Madamba
48c608e016 Make player width a const 2024-04-27 20:06:09 -07:00
Taevas
694e3900db
Add missing space in setup wizard 2024-04-27 23:43:27 +02:00
Dan Balasescu
52addc775e
Merge pull request #27965 from bdach/generic-math
Apply generic math-related changes
2024-04-26 01:33:54 +09:00
Dean Herbert
999c8fdc38
Merge pull request #27969 from bdach/enter-to-confirm-keybinding-conflict
Allow confirming keybinding overwrite on conflict via "select" binding
2024-04-23 23:38:50 +08:00
Dean Herbert
221af74f95
Merge branch 'master' into generic-math 2024-04-23 22:21:31 +08:00
Bartłomiej Dach
f7626aba18
Fix mod select overlay columns not displaying properly sometimes
Closes https://github.com/ppy/osu/issues/26504.

As far as I can tell the issue is basically another manifestation of
https://github.com/ppy/osu-framework/issues/5129, i.e. presence
overrides causing dropped invalidations and thus completely bogus
hierarchy state. The fix is to raise the appropriate invalidation
manually.
2024-04-23 13:36:12 +02:00
Bartłomiej Dach
1e0db1ab9f
Allow confirming keybinding overwrite on conflict via "select" binding 2024-04-23 12:44:16 +02:00
Bartłomiej Dach
09b0f3005e
Apply generic math-related changes 2024-04-22 10:15:56 +02:00
Bartłomiej Dach
1344ca4e19
Merge pull request #27780 from mafarrica/27105-fix-mod-search-box-focus-changes
Fix mod search box not tracking external changes to focus state
2024-04-19 17:00:06 +02:00
Bartłomiej Dach
509862490e
Revert unnecessary changes 2024-04-19 11:11:18 +02:00
Bartłomiej Dach
2dcbb823ef
Use textbox focus state directly rather than trying to track it independently 2024-04-19 11:08:34 +02:00
Salman Ahmed
a7e043bdbe Fix beatmap rulest selector playing sound for initial ruleset selection 2024-04-17 11:20:17 +03:00
Salman Ahmed
24e8b88320 Add inline comment to the custom implementation of multiple-selection tab items 2024-04-17 11:20:17 +03:00
Salman Ahmed
42892acc1a Fix multiple selection filter tab items no longer playing sounds
These tab items are not managed by a `TabControl`, activation events are manually served by the class itself toggling `Active` when clicked.
2024-04-17 11:20:17 +03:00
Salman Ahmed
50a21fb727 Change ToolbarRulesetSelector to use SelectItem to trigger new sound feedback path 2024-04-17 11:20:17 +03:00
Salman Ahmed
2a3ae6bce1 Update all TabItem implementations to play select sample on OnActivatedByUser 2024-04-17 11:20:17 +03:00
Bartłomiej Dach
6c943681b0
Fix preview tracks playing after their owning overlay has hidden
RFC. Closes https://github.com/ppy/osu/issues/27883.

The idea here is that `PopOut()` is called _when the hide is requested_,
so once an overlay trigger would hide, the overlay would
`StopAnyPlaying()`, but because of async load things, the actual track
would start playing after that but before the overlay has fully hidden.
(That last part is significant because after the overlay has fully
hidden, schedules save the day.)

Due to the loose coupling between `PreviewTrackManager` and
`IPreviewTrackOwner` there's really no easy way to handle this locally
to the usages of the preview tracks. Heck, `PreviewTrackManager` doesn't
really know which preview track owner is to be considered _present_ at
any time, it just kinda works on vibes based on DI until the owner tells
all of its preview tracks to stop.

This solution causes the preview tracks to stop a little bit later but
maybe that's fine? Just trying to not overthink the issue is all.

No tests because this is going to suck to test automatically while it is
pretty easy to test manually (got it in a few tries on master).

The issue also mentions that the track can sometimes resume playing
after the overlay is pulled up again, but I don't see that as a problem
necessarily, and even if it was, it's not going to be that easy to
address due to the aforementioned loose coupling - to fix that, play
buttons would have to know who is the current preview track owner and
cancel schedules upon determining that their preview track owner has
gone away.
2024-04-16 16:19:26 +02:00
Ondřej Vajďák
ed6680a61d Fixed type inconsistency and rounding 2024-04-14 15:10:05 +02:00
Ondřej Vajďák
9833dd955f Fix toolbar volume bar masking 2024-04-14 01:30:59 +02:00
Dean Herbert
c0dce94f15
Fix newly placed items in skin editor not getting correct anchor placement 2024-04-12 17:08:49 +08:00
Mafalda Fernandes
16276dfcd6 Fix #27105: Mod search box doesnt track external focus changes
In the Mod selection area, the search bar's focus could be changed by pressing TAB.
However, when clicking outside of the search bar, the focus would be killed but two TABs were required to get the focus back on the search bar.
This happened because the action of clicking in an empty area would trigger the search bar to change its appearence, but not its internal state.
In my solution, I made the OnClick function aware of the search bar's state, so it would not only change its appearance, but also its state.
Now, after clicking in an empty area, there is only needed one TAB to select the search box again, as expected.
2024-04-03 14:06:11 +01:00
Bartłomiej Dach
05fe8968d8
Only interact with clipboard via bound copy 2024-04-03 11:39:12 +02:00
Dan Balasescu
ce68f6adb7
Fix SkinEditor binding event to external bindable 2024-04-03 17:46:26 +09:00
Dean Herbert
94cbe1838f
Replace usages of is null with == null 2024-04-03 01:50:39 +08:00
Nguyên Minh Hồ
113dbcd10f
Merge branch 'master' into fix-rotate-editor-button-disabled 2024-03-30 13:56:31 +07:00
Dean Herbert
d9cf5b5440
Fix bindable not being correctly re-bound across local user changes 2024-03-29 15:50:10 +08:00
Dean Herbert
fef8afb833
Fix double binding causing game crash after API enters failing state
See https://sentry.ppy.sh/organizations/ppy/issues/33406/?alert_rule_id=4&alert_timestamp=1711655107332&alert_type=email&environment=production&project=2&referrer=alert_email
2024-03-29 12:19:14 +08:00
Bartłomiej Dach
d32f19b546
Fix first word bold not applying correctly after first language change
Closes https://github.com/ppy/osu/issues/27549.

I'm not entirely sure why the old solution failed exactly, but also
think it's unimportant because I think past me was an idiot and was
playing stupid games with the juggling of indices between two callbacks
with no ordering guarantees and expecting not to win stupid prizes.

I'm not sure this requires any follow-up reconsiderations of that entire
text flow API, but if opinions differ, I'll re-examine.
2024-03-13 15:18:20 +01:00
Joseph Madamba
e2e99fc5cc Rearrange rankings overlay tabs to match web 2024-03-12 21:15:59 -07:00
Bartłomiej Dach
09179f99c0
Merge branch 'master' into wrap-beatmap-listing-filters 2024-03-11 14:59:48 +01:00
Bartłomiej Dach
e5e7c8f268
Wrap beatmap listing filter names too
While we're here fixing...

Addresses
https://github.com/ppy/osu/discussions/15452#discussioncomment-2734237.
2024-03-11 14:58:28 +01:00
Andrei Zavatski
26c97ef733 Fix WikiPanelContainer causing poor performance 2024-03-09 00:51:33 +03:00
Joseph Madamba
db1c59475b Wrap beatmap listing filters and match web spacing 2024-03-08 12:13:54 -08:00
Dean Herbert
c9b4c684e5
Merge pull request #27403 from Gabixel/increase-modselect-initial-scroll
Change initial scroll effect to mod columns
2024-03-08 14:00:40 +08:00
Dean Herbert
5e7d9ea04a
Adjust scroll speed back to original 2024-03-08 13:59:04 +08:00
Bartłomiej Dach
644553d5b4
Merge branch 'master' into freemod_mapinfo_fix 2024-03-07 09:24:44 +01:00
Bartłomiej Dach
53fffc6a75
Remove unused using directives 2024-03-06 07:57:59 +01:00
Dean Herbert
06c7483347
Merge branch 'master' into update-framework 2024-03-06 12:36:05 +08:00
Dean Herbert
85364d25dc
Merge pull request #27276 from bdach/medals
Add flow for displaying achieved medals
2024-03-06 12:31:55 +08:00
Dean Herbert
b53b752e54
Update usage of MathUtils 2024-03-06 12:13:12 +08:00
Dean Herbert
6455c0583b
Update usage of CircularProgress.Current 2024-03-06 12:13:10 +08:00
Bartłomiej Dach
09c6c5d79b
Merge pull request #27497 from frenzibyte/mod-select-overlay-fix-ux
Fix mod select overlay settings order not always matching mod panels
2024-03-05 19:40:13 +01:00
Bartłomiej Dach
429fa8dfae
Merge pull request #27242 from Susko3/log-global-statistics
Log `GlobalStatistics` when exporting logs from settings
2024-03-05 19:32:54 +01:00
Salman Ahmed
9543908c7a Fix mod select overlay settings order not always matching panels order 2024-03-04 23:36:45 +03:00
Dean Herbert
f44aadaaa8
Merge pull request #27331 from bdach/statistics-updates-in-multi
Show user statistics updates on multiplayer and playlists results screens
2024-02-29 12:26:48 +08:00
Salman Ahmed
8f97f0503f Move away from Solo namespace 2024-02-29 01:21:17 +03:00
Salman Ahmed
de48c51715 Apply renaming in remaining usages 2024-02-29 01:11:08 +03:00
Salman Ahmed
4a4ef91bc9 Simplify active mods computation
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-02-29 00:42:52 +03:00
Bartłomiej Dach
a5948d38ac
Merge pull request #27380 from frenzibyte/fix-advanced-stats-display
Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps
2024-02-28 18:02:48 +01:00
Bartłomiej Dach
9902dad4c6
Merge branch 'master' into log-global-statistics 2024-02-28 15:09:24 +01:00
Dean Herbert
31f667224f
Merge branch 'master' into medals 2024-02-28 13:48:57 +08:00
Gabriel Del Nero
09dee50372
Change initial scroll animation to mod columns
Starting from the end (which should be fine with the current number of columns, even on different/wider screen resolutions), and with a custom decay value when it reaches zero offset.
2024-02-27 15:35:51 +01:00
Dean Herbert
7f0a552b86
Merge pull request #27366 from EVAST9919/mod-overlay-performnce
Reduce allocations when `ModSelectOverlay` is visible
2024-02-27 08:54:18 +08:00
Salman Ahmed
3f9fbb9318 Introduce the concept of ActiveMods in mod select overlay and rewrite once more 2024-02-26 22:25:06 +03:00
Salman Ahmed
2b73d816a7 Bring back mod setting tracker in BeatmapAttributesDisplay 2024-02-26 22:24:45 +03:00
Dean Herbert
fe59a3b9be
Merge branch 'master' into medals 2024-02-26 22:49:55 +08:00
Dean Herbert
c686dfd361
Apply safeties for AudioFilter usage around drawables which go non-present 2024-02-26 21:22:25 +08:00
Salman Ahmed
5c049feca1 Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps 2024-02-25 21:18:15 +03:00
Andrei Zavatski
081aa84718 Simplify last footer button selection 2024-02-25 10:36:15 +03:00
Andrei Zavatski
6d2187e079 Reduce allocations in ModSelectOverlay 2024-02-24 22:58:23 +03:00
Andrei Zavatski
3b53ed3c3a Reduce allocations in ModColumn 2024-02-24 22:44:58 +03:00
Salman Ahmed
d4bc3090e7 Fix incorrect conflict resolution 2024-02-23 18:42:07 +03:00
Salman Ahmed
618819ba9f Merge branch 'master' into freemod_mapinfo_fix 2024-02-23 18:34:41 +03:00
Salman Ahmed
c1db9d7819 Add test coverage 2024-02-23 18:16:44 +03:00
Salman Ahmed
fdc0636554 General code cleanup 2024-02-23 17:31:54 +03:00
Salman Ahmed
9ce07a96b2 Rewrite mods flow and remove RoomBeatmapAttributesDisplay 2024-02-23 17:30:13 +03:00
Salman Ahmed
323d7f8e2d Change BeatmapAttributesDisplay retrieval to proper method 2024-02-23 16:59:43 +03:00
Salman Ahmed
ae9c58be30 Remove "multiplayer" references from subclass and move to appropriate place 2024-02-23 16:50:33 +03:00
Brandon
6c8204f9a3 Update delete collections message when none 2024-02-22 19:40:02 -08:00
Brandon
d6beae2ce1 Update delete/restore mod presets message when none 2024-02-22 19:10:15 -08:00
Bartłomiej Dach
eac4c5f69d
Rename {Solo -> User}StatisticsWatcher et al.
The "solo" prefix is a bit unbecoming now. The updates are not only
for solo.
2024-02-22 20:36:24 +01:00
Bartłomiej Dach
f9e92c69a8
Merge branch 'master' into fix-skin-editor-init-fail 2024-02-22 14:08:38 +01:00
Bartłomiej Dach
49b7f0e3a7
Merge pull request #26531 from smallketchup82/multiplayer-difficulty-tooltip
Implement difficulty tooltips for multiplayer lobbies
2024-02-22 12:57:35 +01:00
Bartłomiej Dach
46c8560ca5
Merge branch 'master' into multiplayer-difficulty-tooltip 2024-02-22 12:08:29 +01:00
Bartłomiej Dach
d06c67ad8f
Substitute two jank interdependent bool flags for single tri-state enums 2024-02-22 12:05:50 +01:00
Bartłomiej Dach
6770b73e4e
Merge pull request #27192 from smoogipoo/mod-search-ignore-whitespace
Adjust search terms for mods
2024-02-22 11:41:31 +01:00
Bartłomiej Dach
84fdcd24ef
Remove description from mod search terms
Closes https://github.com/ppy/osu/issues/27111.
2024-02-22 11:02:08 +01:00
Bartłomiej Dach
1a831145ce
Merge branch 'master' into fix-bpm-differences 2024-02-22 10:41:22 +01:00
Bartłomiej Dach
81a9908c60
Extract common helper for BPM rounding 2024-02-22 10:27:37 +01:00
Bartłomiej Dach
57bb0b85a1
Merge pull request #27107 from Joehuu/rank-highest-tooltip
Add highest rank tooltip to global rank display
2024-02-22 09:08:22 +01:00
Dean Herbert
9d732bd9b1
Merge branch 'remove-legacy-gl' into update-framework 2024-02-21 21:44:19 +08:00
Andrei Zavatski
2543a48ac8 Apply padding to GridContainers directly 2024-02-20 23:18:37 +03:00
Bartłomiej Dach
33a0dcaf20
NRT-annotate MedalAnimation and fix possible nullref 2024-02-20 17:59:21 +01:00
Bartłomiej Dach
9b938f333d
Fix test failures 2024-02-20 17:25:11 +01:00
Bartłomiej Dach
611e3fe76b
Delay medal display when wanting to show results animation 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
96825915f7
Fix threading failure
Implicitly showing the medal overlay fires off some transforms, and the
websocket listener runs on a TPL thread. That's a recipe for disaster,
so schedule the show call.
2024-02-20 16:31:31 +01:00
Bartłomiej Dach
b334b78b63
Make medal overlay respect overlay disable via activation mode 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
e4971ae121
Add display queueing when multiple medals are granted in quick succession 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
2e5b61302a
Implement basic medal display flow 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
4911f5208b
Demote medal "overlay" to animation
I need the actual overlay to be doing way more things (receiving the
actual websocket events, queueing the medals for display, handling
activation mode), so the pre-existing API design of the overlay just
will not fly.
2024-02-20 16:31:31 +01:00
Givikap120
ed028e8d26 Update MultiplayerModSelectOverlay.cs 2024-02-20 13:13:13 +02:00
Givikap120
8199a49ee2 minor look changes 2024-02-20 13:11:19 +02:00
Givikap120
a4288e7ecc removed unnecessary changes 2024-02-20 13:00:59 +02:00
Givikap120
54ef397d56 Changed override method
now it overrides mods getter instead of calculate fuctions
2024-02-20 12:57:28 +02:00
Dan Balasescu
40d6e8ce85
Remove legacy OpenGL renderer option, it's now just OpenGL 2024-02-20 15:14:30 +09:00
Joseph Madamba
2ff8667dd2 Revert "Centralise global rank display logic to new class"
Also don't show on `LoginOverlay` usage for now.
2024-02-19 12:11:12 -08:00
Susko3
24e3fe79a4 Log GlobalStatistics when exporting logs from settings 2024-02-19 17:02:53 +01:00
Bartłomiej Dach
1ca566c6b0
Disable nested input managers on edited screen when skin editor is open 2024-02-19 10:19:25 +01:00
maromalo
5a448ce02f Turn BPMDisplay to RollingCounter<int> 2024-02-18 19:59:56 -03:00
Givikap120
24171bd02b Update MultiplayerModSelectOverlay.cs 2024-02-18 03:34:02 +02:00
Givikap120
a6b63efe7d Fixed NVika code quality errors 2024-02-18 03:28:24 +02:00
Givikap120
9070e973d3 Update BeatmapAttributesDisplay.cs 2024-02-18 03:16:18 +02:00
Givikap120
4aaf016ee0 quality improvements 2024-02-18 03:15:53 +02:00
Givikap120
6fb3192648 Update BeatmapAttributesDisplay.cs 2024-02-18 03:14:36 +02:00