1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 19:02:56 +08:00
Commit Graph

14823 Commits

Author SHA1 Message Date
Bartłomiej Dach
acf4dbb62c
Merge branch 'master' into mutually-exclusive-save-related-actions 2024-06-10 10:30:35 +02:00
Bartłomiej Dach
1d6b7e9c9b
Refactor further to address code quality complaints 2024-06-10 10:30:30 +02:00
Salman Ahmed
6201220994
Merge branch 'master' into footer-v2-become-global 2024-06-08 14:13:05 +03:00
Dean Herbert
daf85c320a
Merge pull request #22237 from mk56-spn/LeaderBoardScore_clean
New leaderboard score card design implementation
2024-06-08 20:06:17 +09:00
Dean Herbert
7fc6ad5340
Merge pull request #28184 from frenzibyte/footer-v2-transitions
Add basic animation to new footer and buttons
2024-06-08 19:43:23 +09:00
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
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