1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-18 03:05:10 +08:00
Commit Graph

14973 Commits

Author SHA1 Message Date
Salman Ahmed
5f8f6caedd Use OsuGame.SHEAR 2024-06-07 22:45:22 +03:00
Salman Ahmed
6f729be573 Merge branch 'master' into LeaderBoardScore_clean 2024-06-07 22:42:49 +03:00
Salman Ahmed
f59d94bba4 Move transitions inside ScreenFooterButton and re-use Content from base implementation instead
The point is to apply the transitions against a container that's inside of `ScreenFooterButton`, because the `ScreenFooterButton` drawable's position is being controlled by the flow container it's contained within, and we cannot apply the transitions on it directly.
2024-06-07 22:07:39 +03:00
Bartłomiej Dach
4cd1ccc4d4
Merge branch 'master' into add-rank-display 2024-06-07 09:33:03 +02:00
Bartłomiej Dach
e13e9abda9
Disallow running save-related operations concurrently
Closes https://github.com/ppy/osu/issues/25426.

Different approach to prior ones, this just disables the relevant
actions when something related to save/export is going on. Still ends up
being convoluted because many things you wouldn't expect to touch save
do touch save, so it's not just a concern between export and save
specifically.
2024-06-07 08:13:51 +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
OliBomby
e873698221 Add some in-depth xmldoc to GetSamples 2024-06-06 14:57:25 +02:00
OliBomby
fcc8671cbd undo useless change 2024-06-06 14:50:24 +02:00
OliBomby
71ce400359 Fix wasteful recreating of container 2024-06-06 14:48:17 +02:00
Bartłomiej Dach
7a8a37dae6
Use established constants 2024-06-06 13:42:31 +02:00
Bartłomiej Dach
86b13074a0
Merge branch 'master' into edit-nodesample 2024-06-06 13:42:25 +02:00
OliBomby
4f8c167cf9 clean up to match logic in CircularDistanceSnapGrid 2024-06-05 18:56:18 +02:00
OliBomby
d8994786f6 Merge remote-tracking branch 'upstream/master' into grids-2 2024-06-05 17:18:48 +02:00
Dean Herbert
212be6b9a7
Merge branch 'master' into grids-1 2024-06-05 15:20:04 +09:00
Bartłomiej Dach
ecfcf7a2c0
Add xmldoc mention about performance overhead of PerformOnSelection() 2024-06-04 10:36:30 +02:00
Bartłomiej Dach
f13ca28d5e
Fix performance overhead from ternary state bindable callbacks when selection is changing
Closes https://github.com/ppy/osu/issues/28369.

The reporter of the issue was incorrect; it's not the beat snap grid
that is causing the problem, it's something far stupider than that.

When the current selection changes,
`EditorSelectionHandler.UpdateTernaryStates()` is supposed to update the
state of ternary bindables to reflect the reality of the current
selection. This in turn will fire bindable change callbacks for said
ternary toggles, which heavily use `EditorBeatmap.PerformOnSelection()`.

The thing about that method is that it will attempt to check whether any
changes were actually made to avoid producing empty undo states, *but*
to do this, it must *serialise out the entire beatmap to a stream* and
then *binary equality check that* to determine whether any changes were
actually made:

	7b14c77e43/osu.Game/Screens/Edit/EditorChangeHandler.cs (L65-L69)

As goes without saying, this is very expensive and unnecessary, which
leads to stuff like keeping a selection box active while a taiko beatmap
is playing under it dog slow. So to attempt to mitigate that, add
precondition checks to every single ternary callback of this sort to
avoid this serialisation overhead.

And yes, those precondition checks use linq, and that is *still* faster
than not having them.
2024-06-04 10:32:12 +02:00
Bartłomiej Dach
4fcb902341
Merge branch 'master' into grids-1 2024-06-03 12:33:51 +02:00
Dean Herbert
96514132c1
Fix occasional test failures on new menu content tests
Scheduled data transfer could still overwrite test data.
2024-06-03 12:24:56 +09:00
Bartłomiej Dach
69990c35cb
Add commentary on presence of IsPresent override 2024-05-31 08:47:19 +02:00
Dean Herbert
53b7c29488
Add test coverage of menu banner link opening 2024-05-31 03:15:26 +09:00
Bartłomiej Dach
50bd0897f6
Fix main menu button backgrounds not covering their entire width sometimes
I thought I had fixed this already once but it still looks broken.
Basically when hovering over main menu buttons every now and then it
will look like their backgrounds are not covering their entire width
when they expand.

The removed X position set looks wrong to me when inspecting the draw
visualiser with the element because the element looks to be off centre
horizontally, and removing it fixes that.
2024-05-30 10:38:22 +02:00
Dean Herbert
fdb47f8dfa
Fix incorrect handling of nested objects when inside parent object's duration 2024-05-29 23:30:47 +09:00
Dean Herbert
126837fadd
Apply results rather than fake a replay frame 2024-05-29 23:28:37 +09:00
Dean Herbert
3b5b7b2f88
Fix the majority of cases where gameplay stil doesn't end due to judgement count mismatch 2024-05-29 22:57:17 +09:00
Dean Herbert
d2c86b0813
Avoid passing beatmap in from editor when it's already present 2024-05-29 21:32:55 +09:00
Dean Herbert
16e2fa2c6a
Merge branch 'master' into fix/editor-test-exit 2024-05-29 21:08:36 +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
d143a697d2 refactor CanScaleFromPlayfieldOrigin and GetClampedScale to derived class 2024-05-28 17:12:16 +02:00
OliBomby
8eb23f8a60 remove redundant CanScaleFromSelectionOrigin 2024-05-28 16:19:57 +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
8c4931eeec
Merge branch 'master' into footer-v2-transitions 2024-05-28 18:49:39 +09:00
Dean Herbert
4408039b3e
Merge branch 'master' into footer-v2-back-button 2024-05-28 15:50:34 +09:00
Bartłomiej Dach
405c72c0d6
Fix mod display not being aligned with mapper text 2024-05-27 13:36:44 +02:00
Dean Herbert
75d961e6f2
Pass the same thing in twice for better maybe 2024-05-27 20:30:01 +09:00
Dean Herbert
d976224912
Standardise padding on both sides of difficulty icon 2024-05-27 19:59:25 +09:00
Bartłomiej Dach
1e2cac3e92
Remove unused using directive 2024-05-27 11:44:55 +02:00
Dean Herbert
740a3377fa
Merge branch 'master' into LeaderBoardScore_clean 2024-05-27 17:18:41 +09:00
Dean Herbert
b6471f0b9c
Allow previewing audio of playlist items 2024-05-27 17:09:37 +09:00
Bartłomiej Dach
bdfce4b9da
Fix xmldoc reference 2024-05-27 08:26:00 +02:00
Dean Herbert
11c3d11db9
Fix cinema mod not hiding playfield skin layer 2024-05-27 14:52:28 +09:00
Joseph Madamba
8e14c24ee3 Follow slanted flow logic precedent in test
See `ModSelectOverlay` components.
2024-05-26 00:24:03 -07:00
OliBomby
37530eebcc Enable scale buttons at the correct times 2024-05-25 20:35:06 +02:00
OliBomby
4eeebdf60c calculate max scale bounds for scale slider 2024-05-25 20:17:27 +02:00
Salman Ahmed
2c18c10ac8 Move to SelectV2 namespace 2024-05-25 17:20:10 +03:00
OliBomby
497701950d fix nitpick 2024-05-24 18:11:28 +02:00
Dean Herbert
2134ff7a1b
Merge pull request #28071 from Fabiano1337/lazer-speedkeys
Make ctrl-up/down change speed modifier of mods
2024-05-24 23:20:04 +09:00
Bartłomiej Dach
9f19ab092d
Merge branch 'master' into grids-1 2024-05-24 14:39:55 +02:00
Bartłomiej Dach
c800bb5339
Merge branch 'master' into lazer-speedkeys 2024-05-24 13:19:26 +02:00
Bartłomiej Dach
b1b207960a
Actually use return value 2024-05-24 13:09:44 +02:00
Bartłomiej Dach
63406b6feb
Rewrite implementation 2024-05-24 13:03:42 +02:00
Bartłomiej Dach
7255cc3344
Fix tests dying on a nullref 2024-05-24 11:25:29 +02:00
Bartłomiej Dach
807d982a72
Move workaround to subscreen 2024-05-24 10:35:33 +02:00
Bartłomiej Dach
a80dbba9d0
Update to not use obsoleted method 2024-05-24 10:35:31 +02:00
Bartłomiej Dach
4089071299
Merge branch 'master' into fix-editor-didnt-save 2024-05-24 10:16:46 +02:00
Bartłomiej Dach
8a2dd4d816
Merge branch 'master' into scaling 2024-05-23 15:10:40 +02:00
Bartłomiej Dach
128029e2af
Fix aspect ratio lock applying when shift pressed on a non-corner anchor
It doesn't make sense and it wasn't doing the right thing.
2024-05-23 15:08:43 +02:00
Bartłomiej Dach
9e86a08405
Simplify scale origin computation 2024-05-23 14:07:43 +02:00
Bartłomiej Dach
070668c96f
Use ShiftPressed instead of explicitly checking both physical keys
Not only is this simpler, but it also is more correct (for explanation
why, try holding both shift keys while dragging, and just releasing one
of them - the previous code would briefly turn aspect ratio off).
2024-05-23 13:57:34 +02:00
Bartłomiej Dach
bfa23ec7a4
Fix main menu button animation not playing on initial show 2024-05-23 11:46:48 +02:00
Dean Herbert
357e55ae1f
Make gradient layer a bit more dynamic 2024-05-23 17:39:59 +08:00
Dean Herbert
a3639e0ce3
Remove unused field 2024-05-23 17:19:11 +08:00
Dean Herbert
88a2f74326
Adjust animation 2024-05-23 16:00:23 +08:00
Dean Herbert
f85a1339d9
Unload daily challenge background less aggressively 2024-05-23 14:23:02 +08:00
Dean Herbert
6c37560842
Merge branch 'master' into daily-challenge-mvp 2024-05-23 10:57:05 +08:00
Dean Herbert
66ceda1d67
Update focus specifications in line with framework changes 2024-05-22 21:32:49 +08:00
Fabian van Oeffelt
0df634574f Improve readability 2024-05-22 13:59:33 +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
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
Dean Herbert
99d99cede0
Basic cleanup
Before I gave up on attempting to fix the method.
2024-05-22 11:59:34 +08:00
Fabian van Oeffelt
3403789c6f Toast now only shows when speed is actually changed 2024-05-21 16:11:20 +02: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
Fabian van Oeffelt
3fdbd735ce change to single Function,
Nightcore now switches into Daycore, keep Adjustpitch after change
2024-05-18 18:40:51 +02:00
Salman Ahmed
0a391d5c4e Remove duplicate back button class 2024-05-18 08:39:45 +03:00
Bartłomiej Dach
c9b7aaf442
Fix formatting 2024-05-17 11:50:23 +02:00
Bartłomiej Dach
a4f8ed2a0e
Add button to access daily challenge playlist from main menu 2024-05-17 11:15:52 +02:00
Salman Ahmed
8b285f5b1e Add dummy SongSelectV2 screen to house new footer buttons (and new components going forward) 2024-05-16 07:48:58 +03:00
Salman Ahmed
2b5818a4d7 Fix DI crash in beatmap options popover 2024-05-16 07:48:58 +03:00
Salman Ahmed
03220598b8 Move screen footer to OsuGame 2024-05-16 07:48:58 +03:00
Salman Ahmed
921be3ca01 Add back receptor, logo tracking, and own colour provider to screen footer 2024-05-16 07:48:58 +03:00
Salman Ahmed
d0e8632fbf Refactor ScreenFooter to prepare for global usage and add transitions 2024-05-16 07:48:10 +03:00
Salman Ahmed
a2794922d5 Add TopLevelContent layer for applying external transforms on footer buttons 2024-05-16 07:48:10 +03:00
Salman Ahmed
820cfbcb00 Remove unused using directives 2024-05-16 07:47:57 +03: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
7fce4cc494 Make ScreenFooterButtonMods share shear factor with base class 2024-05-16 05:30:28 +03:00
Salman Ahmed
9446f45acf Fix shear factor of ScreenFooterButtons not matching anything else
When shear factors differ between components that are close to each other (`BackButtonV2` and `ScreenFooterButton` in this case), they look completely ugly.
2024-05-16 05:30:28 +03:00
Salman Ahmed
7e8d5a5b0a Add new footer back button 2024-05-16 05:30:28 +03:00
Salman Ahmed
21f5d891bb Rename and move footer classes to appropriate places 2024-05-16 04:41:16 +03:00
OliBomby
c4ac6d20a0 fix code quality 2024-05-15 23:40:51 +02:00
OliBomby
8df5f22b4e Merge remote-tracking branch 'upstream/master' into scaling 2024-05-15 23:05:19 +02:00
Dean Herbert
cff865b556
Continue loading even when osu! logo is being dragged at loading screen
Closes https://github.com/ppy/osu/issues/28130.
2024-05-14 23:54:07 +08:00
Bartłomiej Dach
ee9144c3bd
Apply NRT to results statistics displays 2024-05-14 15:21:12 +02:00
Bartłomiej Dach
414f023817
Apply NRT to RankText 2024-05-14 15:21:05 +02:00
Bartłomiej Dach
b937b94bd2
Apply NRT to RankBadge 2024-05-14 15:20:56 +02:00
Bartłomiej Dach
ced1c79490
Apply NRT to AccuracyCircle 2024-05-14 15:20:47 +02:00
Bartłomiej Dach
e7721b073c
Apply NRT to ContractedPanelTopContent 2024-05-14 15:20:36 +02:00
Bartłomiej Dach
8e16b57d09
Apply NRT to SimpleStatisticTable 2024-05-14 15:20:26 +02:00
Bartłomiej Dach
237ae8b46a
Apply NRT to SimpleStatisticsItem 2024-05-14 15:20:17 +02:00
Bartłomiej Dach
2f2257f6ce
Apply NRT to PerformanceBreakdownChart 2024-05-14 15:20:07 +02:00
Bartłomiej Dach
77a7f475ee
Apply NRT to ScorePanel 2024-05-14 15:19:58 +02:00
Bartłomiej Dach
10a8e84046
Apply NRT to StatisticsPanel 2024-05-14 15:19:46 +02:00
Bartłomiej Dach
cb49147d1e
Apply NRT to ScorePanelList 2024-05-14 15:19:43 +02:00
Dean Herbert
5a362be190
Merge branch 'master' into glow 2024-05-12 12:58:57 +08:00
Salman Ahmed
fa6ccc854d Revert behavioural changes on options button 2024-05-12 05:24:45 +03:00
Thomas Mok
5e8f6df799
Add glow to footerV2 buttons 2024-05-12 01:55:18 +01:00
Dean Herbert
69d699a218
Merge branch 'master' into footer-v2-button-animation 2024-05-11 21:41:50 +08:00
Dean Herbert
6cfe1356cd
Merge pull request #28141 from frenzibyte/footer-v2-mods-display
Add mod display and unranked indicator to new song select footer
2024-05-11 21:41:25 +08:00
Dean Herbert
a988bbd3cb
Tidy up UnrankedBadge implementation 2024-05-11 20:58:51 +08:00
Dean Herbert
ac7598cb68
Move localisation to existing file to avoid silly new class 2024-05-11 20:25:47 +08:00
Salman Ahmed
da096376af Fix DI error in mod tooltip 2024-05-11 09:31:36 +03:00
Salman Ahmed
f64cf5c037 Fix button extending beyond unranked indicator width 2024-05-11 09:29:09 +03:00
Salman Ahmed
09c52f03d8 Fix "options" button behaving weirdly when clicking on it while open 2024-05-10 08:25:16 +03:00
Salman Ahmed
b6d6a8940b Improve animation of new song select footer buttons 2024-05-10 08:24:39 +03:00
Salman Ahmed
0392f7b04c Add tooltip to unranked indicator 2024-05-10 07:37:08 +03:00
Salman Ahmed
f5ab9a7ff8 Make unranked indicator orange to match mod select overlay 2024-05-10 07:12:28 +03:00
Salman Ahmed
e5b2023155 Remove unappealing fade transition between mod display and count text
Fading out the mod display looks quite ugly, since alpha is applied per mod sprite, introducing bad visual on the intersection between mods.
2024-05-10 07:05:36 +03:00
Salman Ahmed
6ddf8f8498 Few cleanups 2024-05-10 06:55:02 +03:00
Salman Ahmed
c1ea9d2c9f Adjust unranked badge height 2024-05-10 06:48:18 +03:00
Salman Ahmed
bff34a1c04 Add localisation and tooltip for mods count text 2024-05-10 06:48:18 +03:00
Salman Ahmed
49692e168e Fix ModDisplay expanding on load with "always contracted/expanded" modes
This is especially visible when reloading `SongSelectFooterV2` while multiple mods are already selected. The mods will appear expanded then contract.
2024-05-10 06:48:18 +03:00
Salman Ahmed
6b91b4abf4 Add simple implementation for extended mods display in new footer design 2024-05-10 02:20:48 +03:00
Dan Balasescu
3b8b56cbcb
Apply required changes after framework masking updates 2024-05-09 20:18:53 +09:00
Dean Herbert
0ddd3cbdc5
Randomise which menu content is shown on arriving at the menu 2024-05-07 17:02:25 +08:00
Joseph Madamba
1665c5e0e1 Use existing AutomaticallyDownloadMissingBeatmaps localisation on solo spectator screen 2024-05-05 14:41:48 -07:00
Bartłomiej Dach
221b4cd599
Remove unused cache 2024-05-03 11:37:09 +02:00
Dean Herbert
42e49067e5
Move Room.Status updates to a common location 2024-05-03 17:10:59 +08:00
Fabian van Oeffelt
4b5ea6bd0b Fix Code Inspection 2024-05-02 19:41:00 +02:00
Fabian van Oeffelt
fa0b6311b0
Merge branch 'master' into osu-lazer-speedkeys 2024-05-02 19:17:15 +02:00
Fabian van Oeffelt
7527ddbc68 Comment, make code more readable, functions are now private 2024-05-02 19:05:43 +02:00
Fabian van Oeffelt
f534c4aada Initial implementation 2024-05-02 18:42:35 +02:00
Dean Herbert
f9ef689492
Don't hide playfield layer with HUD 2024-05-02 15:36:40 +08:00
Salman Ahmed
16bae4f004 Update naming of enum fields in StartMode 2024-05-01 17:22:42 +03:00
Bartłomiej Dach
fe9e6168fe
Merge pull request #28050 from peppy/delay-resume-visibility
Tweak resume overlay to allow better visibility of hit objects underneath
2024-05-01 15:49:31 +02:00
Bartłomiej Dach
72b59c01f7
Merge branch 'master' into preserve-storyboard 2024-05-01 15:21:45 +02:00
Dean Herbert
b8209b92f6
Add delay before delayed resume starts
It was previously a bit sudden after dismissing the pause screen. Now
there's a short delay before the actual countdown begins.
2024-05-01 20:30:48 +08:00
Dean Herbert
87e814e201
Fix incorrect xmldoc and adjust colour provider to match Player 2024-05-01 20:30:36 +08:00
Dean Herbert
67c0d7590a
Decrease alpha of delayed resume overlay as count approaches zero
Allows better visibility of playfield underneath it.
2024-05-01 20:29:28 +08:00
Dean Herbert
ff108416d8
Fix incorrect background being loaded due to async race
If the API login (and thus user set) completed between `load` and
`LoadComplete`, the re-fetch on user change would not yet be hooked up,
causing an incorrect default background to be used instead.

Of note, moving this out of async load doesn't really affect load
performance as the bulk of the load operation is already scheduled and
`LoadComponentAsync`ed anyway
2024-05-01 00:05:14 +08:00
Dean Herbert
fd3f4a9e7b
Preserve storyboard events when saving a beatmap in the editor
Until we have full encoding support for storyboards, this stop-gap
measure ensures that storyboards don't just disappear from existence.
2024-04-30 00:01:56 +08:00
Dean Herbert
fb2d28f7e0
Fix audio being paused in a spectator session when all players finish playing 2024-04-26 15:30:26 +08:00
Dean Herbert
21d6556865
Remove managed clocks from SpectatorSyncManager on gameplay completion / abort 2024-04-26 15:29:59 +08:00
Dean Herbert
e0e790fa94
Fix a couple of xmldoc typos 2024-04-26 15:28:52 +08:00
Dan Balasescu
459f97891d
Merge pull request #27994 from bdach/timing-distribution-graph-only-basic
Do not show non-basic results in timing distribution graph
2024-04-26 01:36:16 +09: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
5ccc745235
Merge pull request #27997 from bdach/refetch-when-entering-editor
Fully refetch working beatmap when entering editor
2024-04-25 22:20:33 +08:00
Dean Herbert
387fcb8781
Add a brief inline comment to make sure we don't undo the fix 2024-04-25 21:31:36 +08:00
Dean Herbert
6a8a6fa79d
Merge pull request #27996 from bdach/delete-dirty-difficulty-droken
Fix deleting modified difficulty via editor leaving user in broken state
2024-04-25 21:20:09 +08:00
Bartłomiej Dach
c1107d2797
Fully refetch working beatmap when entering editor
Closes https://github.com/ppy/osu/issues/21794.

I'm not actually super sure as to what the exact mode of failure is
here, but it's 99% to do with working beatmap cache invalidation. Likely
this can be even considered as another case of
https://github.com/ppy/osu/issues/21357, but because this is a one-liner
"fix," I'm PRing it anyways.

The issue is confusing to understand when working with the swap scenario
given in the issue, but it's a little easier to understand when
performing the following:

1. Have a beatmap set with 2 difficulties. Let's call them "A" and "B".
2. From song select, without ever exiting to main menu, edit "A". Change
   the difficulty name to "AA". Save and exit back to song select; do
   not exit out to main menu.
3. From song select, edit "B". Change the difficulty name to "BB". Save
   and exit back to song select.
4. The difficulty names will be "A" and "BB".

Basically what I *think* is causing this, is the fact that even though
editor invalidates the working beatmap by refetching it afresh on exit,
song select is blissfully unaware of this, and continues working with
its own `BeatmapInfo` instances which have backlinks to
`BeatmapSetInfo`.

When editing the first of the two difficulties and then the second,
the editing of the first one only invalidates the first one rather than
the entire set, and the second difficulty continues to have a stale
reference to the first one via the beatmap set, and as such ends up
overwriting the changes from the first save when passed into the editor
and modified again.
2024-04-25 14:31:13 +02:00
Bartłomiej Dach
19d006d818
Fix deleting modified difficulty via editor leaving user in broken state
Closes https://github.com/ppy/osu/issues/22783.

If the difficulty being edited has unsaved changes, the editor exit flow
would prompt for save *after* the deletion method has run. This is
undesirable from a UX standpoint, and also leaves the user in a broken
state.

Thus, just fake an update of the last saved hash of the beatmap to fool
the editor into thinking that it's not dirty, so that the exit flow will
not show a save dialog.
2024-04-25 12:55:34 +02:00
Bartłomiej Dach
b250a924b1
Do not show non-basic results in timing distribution graph
Closes https://github.com/ppy/osu/issues/24274.

Bit of an ad-hoc resolution but maybe fine? This basically proposes to
bypass the problem described in the issue by just not showing tick hits
at all on the distribution graph.
2024-04-25 11:20:07 +02:00
Bartłomiej Dach
da953b34a7
Apply nullability annotations to ResultsScreen & inheritors 2024-04-25 10:58:28 +02:00
Joseph Madamba
4f7c9f2970 Remove unused using 2024-04-24 01:00:03 -07:00
Joseph Madamba
f97c519451 Add chevron to distinguish all menus with submenus 2024-04-24 00:19:10 -07:00
Dean Herbert
221af74f95
Merge branch 'master' into generic-math 2024-04-23 22:21:31 +08:00
Dean Herbert
436203a8c1
Add a chevron to distinguish editor menus with submenus 2024-04-23 21:37:01 +08:00
Dean Herbert
804b1b0d88
Fix settings colour scheme wrong when viewing gameplay from skin editor button
Closes https://github.com/ppy/osu/issues/27949.
2024-04-23 20:54:48 +08:00
Bartłomiej Dach
12acdeebf1
Merge pull request #27866 from Joehuu/fix-online-score-export
Fix replay export not working correctly from online leaderboards
2024-04-23 09:08:04 +02:00
Joseph Madamba
49154c0e23 Fix code quality 2024-04-22 11:23:38 -07:00
Bartłomiej Dach
09b0f3005e
Apply generic math-related changes 2024-04-22 10:15:56 +02:00
Dan Balasescu
89a4a6878f
Merge pull request #27922 from peppy/quick-exit-from-results
Add ability to quick exit from results screen
2024-04-22 16:01:13 +09:00
Andrei Zavatski
1d3fd65d86 Adjust execution order 2024-04-22 07:02:49 +03:00
Andrei Zavatski
722fa228ce Don't consider editor table content for input 2024-04-21 17:40:35 +03:00
Dean Herbert
4cffc39dff
Don't require hold for quick exit at results screen 2024-04-20 04:53:31 +08:00
Dean Herbert
f92833b588
Add ability to quick exit from results screen 2024-04-18 12:02:49 +08:00
Salman Ahmed
9e69268676 Change editor screen selection logic to use SelectItem for sound feedback 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
Joseph Madamba
514e316b49 Make getDatabasedScoreInfo() private and move to GetScore() and Export() 2024-04-15 20:48:51 -07:00
Dan Balasescu
343b3ba0e6
Don't re-filter unless mods may change the filter 2024-04-15 21:07:36 +09:00
Bartłomiej Dach
7c4c8ee75c
Fix stable scores showing with faded out pp display due to classic mod presence 2024-04-15 11:53:05 +02:00
Joseph Madamba
ed8b596325 Fix replay export not working correctly from online leaderboards 2024-04-14 16:22:58 -07:00
Joseph Madamba
f282152f99 Enable NRT to ScoreManager 2024-04-14 15:53:29 -07:00
Loreos7
5a8b8908dd fix missing underscore 2024-04-13 14:53:51 +03:00
Dean Herbert
9521c1e3e4
Update hit error metre to use new icons
- [ ] Depends on https://github.com/ppy/osu-resources/pull/317.
2024-04-04 14:31:40 +08:00
Dean Herbert
2e1d63a1c2
Merge pull request #27783 from 64ArthurAraujo/add-invalid-beatmap-hash-custom-message
Add custom message in the case of a `invalid beatmap_hash`
2024-04-04 10:47:22 +08:00
Arthur Araujo
9e92ebaa43
Make message more general
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-04-03 19:15:22 -03:00
Arthur Araujo
8e00368f7c Add custom message in the case of a invalid beatmap_hash 2024-04-03 11:30:14 -03:00
Bartłomiej Dach
9d54f1a092
Fix some maps requiring multiple intro skips that weren't there on stable
Closes https://github.com/ppy/osu/issues/25633.

The reason why that particular beatmap did not have a double skip
on stable is here:

    e53980dd76/osu!/GameModes/Play/Player.cs#L1761-L1770

The particular place of interest is the `leadInTime < 10000` check.
If `leadInTime < 10000`, then `leadIn == leadInTime`, and it turns out
that `AudioEngine.Time` will always be more than or equal to `leadIn`,
because it's also the gameplay start time:

    e53980dd76/osu!/GameModes/Play/Player.cs#L2765

This essentially means that if the `leadInTime` is less than 10000,
that particular check is just dead. So a double skip can only occur
if the gameplay starts at time -10000 or earlier due to the storyboard.
2024-04-03 16:12:20 +02:00
Bartłomiej Dach
cb82fb0487
Merge branch 'master' into mania-key-count-mod-query 2024-04-03 09:29:32 +02:00
Dean Herbert
aa7b357063
Merge pull request #27768 from 64ArthurAraujo/editor-fix-sliders-same-start-time-merge
Fix merging sliders with the same `StartTime` causing a Unhandled Exception
2024-04-03 01:45:55 +08:00
Arthur Araujo
2a2a372595 Check if blueprint is in SelectionBlueprints before changing its depth 2024-04-02 07:45:27 -03:00
Dean Herbert
51e9348d27
Merge pull request #26702 from honguyenminh/fix-rotate-editor-button-disabled
Fix rotate tool button in editor disabled when selecting 1 circle
2024-04-02 14:31:43 +08:00
Dan Balasescu
d12a2e7df7
Replace schedule with SequenceEqual() 2024-04-01 17:02:02 +09:00
Andrei Zavatski
11b1135804 Adjust blurred icons position due to size handling differences 2024-03-31 01:55:34 +03:00
Andrei Zavatski
58a68e94af Simplify glowing icons in break overlay 2024-03-31 01:44:54 +03:00
Nguyên Minh Hồ
5d497ba4a8 Simplify TooltipText for EditorRadioButton 2024-03-30 16:04:22 +07:00
Nguyên Minh Hồ
9950395e5f Merge branch 'fix-rotate-editor-button-disabled' of https://github.com/honguyenminh/osu into fix-rotate-editor-button-disabled 2024-03-30 13:57:44 +07:00
Nguyên Minh Hồ
113dbcd10f
Merge branch 'master' into fix-rotate-editor-button-disabled 2024-03-30 13:56:31 +07:00
Bartłomiej Dach
e06df34a1c
Apply partial fade on pp display on results screen when score will not give pp 2024-03-29 11:16:31 +01:00
Dan Balasescu
6e746a0fa0
Fix carousel reoder on initial enter 2024-03-28 23:56:46 +09:00
Dan Balasescu
9fd6449fd8
Add mods to FilterCriteria, pass to ruleset method 2024-03-28 23:03:26 +09:00
Dan Balasescu
10edb54614
Add ability to query key count with mods 2024-03-28 22:51:12 +09:00
Bartłomiej Dach
bc1ffb0b6e
Merge branch 'master' into shared-menu-content 2024-03-26 13:47:44 +01:00
Dean Herbert
e77d4c8cfa
Remove unnecessary Math.Max 2024-03-26 20:28:03 +08:00
Dean Herbert
fd649edaba
Also don't rotate images during a drag operation 2024-03-26 20:21:48 +08:00
Bartłomiej Dach
56dc6bb192
Merge branch 'master' into feat/support-filtering-for-multiple-types 2024-03-26 12:39:51 +01:00
Bartłomiej Dach
e52d51cd0a
Update OptionalSet implementation to intersect across multiple filters rather than union 2024-03-26 12:32:03 +01:00
Dean Herbert
bb9fa52fda
Fix displayIndex not being correctly set to -1 after last expiry date 2024-03-25 14:53:05 +08:00
Dean Herbert
057f86dd14
Add handling of expiration 2024-03-25 14:31:05 +08:00
Dean Herbert
e9f15534ed
Improve test coverage 2024-03-25 12:33:32 +08:00
Dean Herbert
3847aae57d
Don't rotate when hovering 2024-03-25 12:14:40 +08:00
Dean Herbert
d0b164b44f
Add automatic rotation support 2024-03-25 11:41:50 +08:00
Dean Herbert
a4c619ea97
Add basic support for loading multiple images 2024-03-24 15:14:56 +08:00
Dean Herbert
ec4a9a5fdd
Make work again for simple case 2024-03-24 14:55:45 +08:00
Dean Herbert
ef2a16dd8f
Various renaming and class updates to allow multiple menu banners 2024-03-24 14:55:43 +08:00
Bartłomiej Dach
a1880e89c2
Use title as tiebreaker when sorting beatmap carousel by artist
Closes https://github.com/ppy/osu/issues/27548.

Reference: e53980dd76/osu!/GameplayElements/Beatmaps/BeatmapTreeManager.cs#L341-L347
2024-03-22 08:41:10 +01:00
Dean Herbert
970e45ff24
Merge pull request #26937 from frenzibyte/fix-osu-logo-blocking-load
Stop blocking player load when hovering over osu! logo
2024-03-21 21:52:25 +08:00
Dean Herbert
0589924dc6
Merge pull request #27079 from smoogipoo/tcm-resume
Add delayed resume for taiko/catch/mania
2024-03-21 12:48:53 +08:00
Dean Herbert
55d66d4615
Add sounds to countdown 2024-03-21 11:45:48 +08:00
Dean Herbert
fd509c82f5
Adjust code structure slightly 2024-03-20 12:52:54 +08:00
Bartłomiej Dach
af3f7dcbbf
Retouch update criteria method 2024-03-19 18:33:35 +01:00
Bartłomiej Dach
320373e3e0
Rename method to match convention better 2024-03-19 18:28:13 +01:00
Bartłomiej Dach
feaf59e15f
Use HashSet instead of SortedSet
No need for it to be sorted.
2024-03-19 18:26:58 +01:00
Dean Herbert
0de5ca8d2d
Update incorrect xmldoc 2024-03-20 01:26:39 +08:00
Dean Herbert
35df381717
Merge branch 'master' into tcm-resume 2024-03-20 01:25:40 +08:00
Andrei Zavatski
7ca45c75b3 Don't iterate backwards on children without a reason 2024-03-18 20:46:38 +03:00
Andrei Zavatski
0edc249637 Make Timeline non-nullable 2024-03-18 20:38:19 +03:00
Andrei Zavatski
57399e9899 Merge branch 'master' into editor-performance 2024-03-18 20:34:48 +03:00
Vlad Frangu
77119b2cdb
chore: correct doc string 2024-03-18 16:44:42 +02:00
Vlad Frangu
d0678bfbee
chore: requested changes 2024-03-18 15:30:43 +02:00
Vlad Frangu
e1c1609271
chore: correct equal logic 2024-03-16 21:48:44 +02:00
Vlad Frangu
0a6960296e
feat: Support filtering for multiple statuses 2024-03-16 21:32:55 +02:00
Andrei Zavatski
34a5e2d606 Don't update subtree masking in TimelineTickDisplay 2024-03-16 15:20:37 +03:00
Andrei Zavatski
981ee54cdc Fix transforms overhead in TimelineTickDisplay 2024-03-16 15:05:52 +03:00
Andrei Zavatski
e825db61ee Fix enumerator allocation 2024-03-16 12:26:56 +03:00
Andrei Zavatski
854d7c6fb4 Merge branch 'master' into editor-performance 2024-03-16 12:26:39 +03:00
Andrei Zavatski
ea3a9314f9 Improve TimelineControlPointDisplay performance 2024-03-16 11:57:18 +03:00
Dean Herbert
15c0b1a2ec
Remove redundant cast 2024-03-16 13:18:42 +08:00
Dean Herbert
a49c4ebea6
Match settings panels' backgrounds visually and behaviourally 2024-03-16 10:23:21 +08:00
Dean Herbert
0f8d526453
Adjust timings and delay disclaimers the same as settings 2024-03-16 10:09:49 +08:00
Bartłomiej Dach
a78210c88f
Handle hover so that users can hover disclaimer to block load & read it 2024-03-15 11:45:27 +01:00
Bartłomiej Dach
e6883b8418
Tweak visuals further 2024-03-15 11:38:51 +01:00
Bartłomiej Dach
51568ba06a
Add background to disclaimers 2024-03-15 11:31:45 +01:00
Bartłomiej Dach
5513a72748
Improve hiding transition when multiple disclaimers are visible 2024-03-15 11:01:34 +01:00
Bartłomiej Dach
49a087f7fc
Add localisation support 2024-03-15 10:59:49 +01:00
Bartłomiej Dach
4688a53cf4
Stay on player loader a bit longer if disclaimers are present
Just to make reading the text easier.
2024-03-15 09:53:20 +01:00
Bartłomiej Dach
f3a444b7ac
Add disclaimer for loved/qualified status 2024-03-15 09:53:20 +01:00
Bartłomiej Dach
42ae18976f
Replace existing epilepsy warning with inline display 2024-03-15 09:53:20 +01:00
Bartłomiej Dach
1aa695add9
Implement alternate design of player loader disclaimers 2024-03-15 09:53:18 +01:00
Dean Herbert
23975d4dd1
Add flash and reduce overall time for countdown to 2 seconds 2024-03-14 22:49:53 +08:00
Dean Herbert
2845303a74
Fix non-matching scale outwards animation 2024-03-14 22:45:05 +08:00
Dean Herbert
888245b44f
Reorder methods 2024-03-14 22:44:26 +08:00
Dean Herbert
d7769ec3e2
Adjust animation 2024-03-14 22:44:23 +08:00
Dean Herbert
42bd558d7c
Only update text when necessary (reducing unnecessary string allocadtions) 2024-03-14 22:43:08 +08:00
Salman Ahmed
b4cee12db9 Use defined colours for counter background 2024-03-14 09:22:03 +03:00
Dan Balasescu
b431bb1176
Resolve post-merge issues 2024-03-14 12:24:12 +09:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume 2024-03-14 12:22:46 +09:00
Dan Balasescu
789a9f4dfa
Initial redesign following flyte's design 2024-03-14 11:38:16 +09:00
Andrei Zavatski
6ecef33fd7 Fic incorrect ExtendableCircle gradient 2024-03-10 22:45:29 +03:00
Andrei Zavatski
549a8d678e Reduce allocations in ControlPointList 2024-03-09 20:50:54 +03:00
Dean Herbert
d9cc619693
Merge branch 'master' into argon-pp-counter 2024-03-08 10:32:16 +08:00
Dean Herbert
0ebb12f67f
Move skinnable interface specification to non-abstract classes 2024-03-08 10:23:46 +08:00
Dean Herbert
ae2ef8ee1e
Fix typo in wireframe description 2024-03-08 10:19:00 +08:00
Dean Herbert
87b4406bdc
Pad at minimum three digits for argon pp display 2024-03-08 09:41:28 +08:00
Dan Balasescu
ca92a31cf9
Fix missing event unbinds 2024-03-07 21:10:11 +09:00
Bartłomiej Dach
fba44e67a0
Merge pull request #27214 from Givikap120/freemod_mapinfo_fix
Fix mod selection in online-play rooms not accounting for mods of selected item
2024-03-07 12:45:14 +01:00
Bartłomiej Dach
3d8fdc52a4
Merge pull request #27501 from turbedi/throw_helper
Use ThrowHelper methods in more places
2024-03-07 11:36:21 +01:00
Bartłomiej Dach
e99030c515
Merge pull request #27516 from frenzibyte/editor-screen-selector
Change editor screen switcher control design and behaviour to act like a button
2024-03-07 11:04:18 +01:00
Bartłomiej Dach
644553d5b4
Merge branch 'master' into freemod_mapinfo_fix 2024-03-07 09:24:44 +01:00
Dan Balasescu
1cafb09977
Increase border thickness 2024-03-07 17:22:38 +09:00
Joseph Madamba
c36232bc02 Fix results screen accuracy circle not showing correctly for failed S with no flair 2024-03-07 00:10:30 -08:00
Salman Ahmed
0fe139a189 Adjust editor screen switcher control design and behaviour 2024-03-07 08:20:46 +03:00
Bartłomiej Dach
b740481eaf
Merge pull request #27504 from peppy/replay-state-sanity-1
Never set `waitingOnFrames` if a replay is not attached
2024-03-06 09:51:09 +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
Dean Herbert
57daaa7fed
Add logging for GameplayClockContainer starting or stopping 2024-03-06 04:37:11 +08:00
Bartłomiej Dach
e6f1a722cb
Remove unused field and commented-out code 2024-03-05 18:49:19 +01:00
Berkan Diler
a891303484 Use ArgumentOutOfRangeException throw helper methods 2024-03-05 10:20:30 +01:00
Salman Ahmed
49b3e81e8a Migrate DefaultPerformancePointsCounter and rename it 2024-03-05 04:35:39 +03:00
Salman Ahmed
d7f1e50d66 Add "Argon" performance points counter 2024-03-05 03:34:29 +03:00
Salman Ahmed
3ee57cdfba Refactor performance points test scene to support skinning 2024-03-05 03:34:25 +03:00
Salman Ahmed
92f455f199 Abstractify performance points calculation to a base class 2024-03-05 03:33:48 +03:00
Dan Balasescu
6635d9be04
Add countdown display 2024-03-04 16:50:24 +09:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local 2024-03-04 16:08:17 +09:00
Salman Ahmed
17e167cc1e
Merge branch 'master' into hide-beatmap-details 2024-03-01 16:21:03 +03:00
Dean Herbert
c6201ea5de
Remove unused ruleset parameter when testing beatmap in editor 2024-03-01 20:28:52 +08:00
cdwcgt
4ad8bbb9e2
remove useless DrawablePool 2024-03-01 13:20:37 +09:00
Dean Herbert
4b3a5bde28
Merge pull request #27424 from frenzibyte/taiko-slider-storyboard
Hide osu!taiko scroller when the beatmap has storyboard
2024-03-01 10:49:12 +08:00
Andrei Zavatski
eb0933c3a5 Fix allocations in EffectPointVisualisation 2024-02-29 20:35:20 +03:00
Bartłomiej Dach
ee2dac35e0
Merge branch 'master' into taiko-slider-storyboard 2024-02-29 08:50:58 +01: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
7f5f3804f1 Expose beatmap storyboard as part of GameplayState 2024-02-29 05:39:36 +03:00
Salman Ahmed
a7a758400c
Merge branch 'master' into fix-wireframe 2024-02-29 01:56:50 +03: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
c3a7e99849 Remove unnecessary max operation 2024-02-29 01:01:55 +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
Salman Ahmed
92eb206b49
Merge branch 'master' into spectator-remove-back-button 2024-02-29 00:12:24 +03:00
Joseph Madamba
5ca6e8c68a Fix some NRT changes 2024-02-28 11:03:09 -08: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
6a3a7cca58
Merge branch 'master' into adjust-carousel-padding 2024-02-28 16:00:43 +01:00
Bartłomiej Dach
ce994a7a73
Fix wireframe misalignment in argon accuracy counter
- Closes https://github.com/ppy/osu/issues/27385.
- Supersedes / closes https://github.com/ppy/osu/pull/27392.
2024-02-28 13:42:45 +01:00
Joseph Madamba
6e03384c6b Apply NRT to SoloSpectatorPlayer 2024-02-28 00:01:16 -08:00
Joseph Madamba
8e462fbb38 Apply NRT to touched files 2024-02-27 23:58:28 -08:00