1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-15 21:57:25 +08:00
Commit Graph

44435 Commits

Author SHA1 Message Date
Joseph Madamba
c185acdbae Use GetLocalisedBindableString() instead 2024-09-18 11:16:25 -07:00
Bartłomiej Dach
7f52ae8837
Fix code quality inspection 2024-09-18 15:30:56 +02:00
Bartłomiej Dach
f6195c5515
Add to existing selection when dragging with control pressed
Closes https://github.com/ppy/osu/issues/29023.
2024-09-18 15:18:13 +02:00
Bartłomiej Dach
12bd516a57
Shuffle playback order in global playlist by default
RFC. Closes https://github.com/ppy/osu/issues/18169.

Implements the given proposal of keeping the current stable order but
adding a shuffle facility to the now playing overlay, and enabling it by
default.

There are more changes I want to make here but I'd like this to get
discussion first, because I am likely to continue putting this sort of
selection logic into `MusicController` and I just want to confirm nobody
is going to have a problem with that.

In particular this is not sharing the randomisation implementation with
beatmap carousel because it doesn't generalise nicely (song select cares
about the particular *beatmap difficulties* selected to rewind properly,
while the music controller only cares about picking a *beatmap set*).
2024-09-18 14:19:55 +02:00
Bartłomiej Dach
cf9f8c7f66
Merge pull request #29916 from peppy/fix-song-select-crash-selection-after-loading
Fix occasional song select crash when entering gameplay
2024-09-18 11:44:59 +02:00
Bartłomiej Dach
d506d8a150
Implement TabbableContentContainer for slider control 2024-09-18 11:32:55 +02:00
Bartłomiej Dach
093d9ab076
Keep slider bar looking active when dragging outside of its bounds 2024-09-18 11:30:52 +02:00
Bartłomiej Dach
0bab755be3
Add missing xmldoc 2024-09-18 11:25:23 +02:00
Bartłomiej Dach
95e26e6fd8
Make slider bar instantaneous by default (and fix broken implementation) 2024-09-18 11:23:00 +02:00
Dean Herbert
ac507a3ba5
Remove unused parameter in applyActiveCriteria 2024-09-18 17:22:09 +09:00
Dean Herbert
743d509241
Also ensure filter is applied when returning to song select 2024-09-18 17:22:08 +09:00
Dean Herbert
c192a6a1d5
Fix song select crashes due to attempting to clear selection after load has already begun 2024-09-18 16:12:34 +09:00
Dean Herbert
8f49876fe7
Re-sync judgement counter display after replay frame reset 2024-09-18 15:28:11 +09:00
Dean Herbert
c46e9cbce3
Tidy up JudgementCounter classes 2024-09-18 15:28:10 +09:00
Dean Herbert
2d993645af
Add test coverage of judgements not being synced when resuming a replay 2024-09-18 15:28:10 +09:00
Joseph Madamba
fd6b3b6b36 Fix searching by clicking title/artist in beatmap overlay not following original language setting 2024-09-17 22:34:06 -07:00
Dean Herbert
76c5e743d7
Remove opacity from old style dropdown menus
These aren't used in many places, but we've since moved away from
opacity in UI elements like this, so let's just nuke it here for
legibility.

Addresses https://github.com/ppy/osu/discussions/29906.
2024-09-18 13:49:27 +09:00
Bartłomiej Dach
1b17231da4
Implement "form" slider bar control 2024-09-17 11:40:57 +02:00
Dean Herbert
d34e8ea69e
Update framework 2024-09-16 16:15:09 +09:00
OliBomby
30096c1c71 clean up code 2024-09-14 17:26:04 +02:00
kongehund
385eb5eed5 Rewrite GetConvexHull 2024-09-14 16:32:51 +02:00
Dean Herbert
5ea7061d5a
Merge pull request #29712 from bdach/editor/setup-screen-checkbox
Implement "form" check box control
2024-09-14 02:26:59 +09:00
Dean Herbert
562a5006ea
Change log output to only output when matches are found (in line with other methods) 2024-09-14 02:19:52 +09:00
Bartłomiej Dach
a4f6d4a300
Backpopulate missing ranked/submitted dates using new local metadata cache
People keep asking why https://github.com/ppy/osu/pull/29553 didn't fix
their databases (as stated in the PR, it didn't intend to), so this
should do it for them.
2024-09-13 16:00:49 +02:00
Bartłomiej Dach
7f71ef4547
Only allow seek to next/previous object via keybinding if there is no selection 2024-09-13 15:14:09 +02:00
Bartłomiej Dach
929ea87975
Revert to checkbox on right 2024-09-13 14:53:59 +02:00
Bartłomiej Dach
652a590611
Attempt to address design concerns 2024-09-13 09:59:20 +02:00
Dean Herbert
77c3cb6504
Update framework 2024-09-12 14:38:51 +09:00
Dean Herbert
a8365202d9
Merge pull request #29841 from bdach/replay-analysis-mod-woes
Fix several issues in interactions between playfield-altering mods and the replay analysis feature
2024-09-12 13:52:09 +09:00
Bartłomiej Dach
4a39873e2a
Fix replay analysis overlay not rotating with Barrel Roll enabled
Closes https://github.com/ppy/osu/issues/29839.
2024-09-11 15:54:30 +02:00
Bartłomiej Dach
b78ef81bf1
Fix Flashlight not appearing on top of bubbles from Bubbles mod
Inadvertently regressed in 44d0dc6113.
2024-09-11 15:54:07 +02:00
apollo-dw
a7e1d35f64
Update osu.Game/Rulesets/Difficulty/DifficultyAttributes.cs
Co-authored-by: James Wilson <tsunyoku@gmail.com>
2024-09-11 12:29:17 +01:00
Bartłomiej Dach
0e663d1801
Revert default combo counter code to pre-abstractification (and nuke eldritch abstract entity) 2024-09-11 11:44:59 +02:00
Bartłomiej Dach
f0e2b803de
Merge pull request #29766 from SchiavoAnto/29761-fix-blocked-info
Fix timing points being blocked by buttons in the editor
2024-09-08 18:37:59 +02:00
Bartłomiej Dach
7ec2e0e866
Refactor layout code to be a bit less haphazard
Visually the same, functionally much saner.
2024-09-08 16:30:09 +02:00
Bartłomiej Dach
f5c5614eef
Resolve existing colour provider instead of re-caching own one 2024-09-08 16:29:53 +02:00
Bartłomiej Dach
cefbc76490
Fix selection being dropped when changing carousel sort mode from difficulty sort
Closes https://github.com/ppy/osu/issues/29738.

This "regressed" in https://github.com/ppy/osu/pull/29639, but if I
didn't know better, I'd go as far as saying that this looks like a .NET
bug, because the fact that PR broke it looks not sane.

The TL;DR on this is that before the pull in question, the offending
`.Contains()` check that this commit modifies was called on a
`List<BeatmapSetInfo>`. The pull changed the collection type to
`BeatmapSetInfo[]`. That said, the call is a LINQ call, so all good,
right?

Not really. First off, the default overload resolution order means that
the previous code would call `List<T>.Contains()`, and not
`Enumerable.Contains<T>()`. Then again, why would that matter? In both
cases `T` is still `BeatmapSetInfo`, right? Well... about that...

It is difficult to tell for sure what precisely is happening here,
because of what looks like runtime magic. The end *symptom* is that the
old code ended up calling `Array<BeatmapSetInfo>.IndexOf()`, and the new
code ends up calling... `Array<object>.IndexOf()`.

So while yes, `BeatmapSetInfo` implements `IEquatable` and
the expectation would be that `Equals<BeatmapSetInfo>()` should be
getting called, the type elision to `object` means that we're back to
reference equality semantics, because that's what
`EqualityComparer.Default<object>` is.

A five-minute github search across dotnet/runtime yields this:

	c4792a228e/src/coreclr/vm/array.cpp (L984-L990)

Now again, if I didn't know better, I'd see that "OPTIMIZATION:"
comment, see what transpired in this scenario, and call that
optimisation invalid, because it changes semantics. But I *probably*
know that the dotnet team knows better and am probably just going to
take it for what it is, because blame on that code looks to be years
old and it's probably not a new behaviour. (I haven't tested empirically
if it is.)

Instead the fix is just to tell the `.Contains()` method to use the
correct comparer.
2024-09-08 16:06:35 +02:00
schiavoanto
2e6f17f253 Fixed wrong OverlayColourScheme 2024-09-08 16:04:10 +02:00
schiavoanto
cf23c6668c Added background color to hide beatmap background 2024-09-08 15:59:23 +02:00
Dean Herbert
4a6266efcf
Merge pull request #29714 from Crystallized21/total-participation-tooltip
Add Total Participation stat to users profile Daily Challenge Tooltip
2024-09-08 22:42:02 +09:00
Bartłomiej Dach
7f814d3106
Fix incorrect tiers being used for tooltip total participation display
Compare: 95e4561a54
2024-09-08 14:26:50 +02:00
Ianlucht
cd94d6e2bc fixed if statement format 2024-09-07 14:01:38 -06:00
Ianlucht
e6f81abc3b cleaned up whitespace 2024-09-07 13:57:12 -06:00
Ianlucht
170737b68f added DailyChallengeIntro to notification 2024-09-07 13:48:14 -06:00
Ianlucht
958bfde51d added DailyChallengeIntro to notification 2024-09-07 13:46:42 -06:00
schiavoanto
2bc6547d49 Code quality fix: added type 2024-09-07 16:23:23 +02:00
schiavoanto
32de8e9b2d Fixed ControlPointTable items being blocked by buttons 2024-09-07 16:15:00 +02:00
Dean Herbert
4c6eb89530
Fix beatmap difficulties not being split out on first load
Closes https://github.com/ppy/osu/issues/29728.
2024-09-07 22:14:03 +09:00
Dean Herbert
7f687d545d
Merge pull request #29715 from bdach/fix-stall-on-empty-replay-import-attempt
Fix stall when attempting to import replay after hitting nothing
2024-09-07 22:01:31 +09:00
Dean Herbert
10ef5a6d6d
Update framework 2024-09-07 21:46:43 +09:00
Dan Balasescu
02eb6835e3
Merge pull request #29745 from Ianlucht/fix-beatmap-artist-and-title-search-to-include-double-quotes-resolves#29708
Double-quote in beatmap listing when searching by artist/title
2024-09-07 18:42:27 +09:00
Dan Balasescu
ac6cce5911
Refactor to string interpolation 2024-09-07 17:40:33 +09:00
Dan Balasescu
6fb5c10f19
Merge pull request #29742 from SchiavoAnto/29736-results-collections-overflow
Fix collections overflowing in the results screen
2024-09-07 17:37:11 +09:00
Bruno Heredia
3b81ad4cbf
Fix scroll speed slider defaulting to 0.01 2024-09-07 01:44:40 -03:00
Ianlucht
581f190856 fixed issues with search by adding the double quotation marks in the BeatmapSetHeaderContents links. 2024-09-06 16:31:48 -06:00
schiavoanto
ed044d5b85 Fix proposal for #29736 2024-09-06 22:58:18 +02:00
Bartłomiej Dach
4e9ad1388f
Fix stall when attempting to import replay after hitting nothing 2024-09-06 13:16:58 +02:00
Michael Bui
a31ea24c6d show stats on all rulesets 2024-09-06 23:05:04 +12:00
Michael Bui
362b4bbc56 Hide daily challenge stats if there are no plays 2024-09-06 23:01:05 +12:00
Michael Bui
ab8771900a change colour 2024-09-06 22:04:10 +12:00
Michael Bui
34a9d60c19 revert back to axes.both 2024-09-06 22:02:35 +12:00
Michael Bui
f59895aa34 take out drawable 2024-09-06 21:54:41 +12:00
Michael Bui
15f73a3dfb show participation count in tooltip 2024-09-06 21:52:42 +12:00
Bartłomiej Dach
2c19b7994c
Implement "form" check box control 2024-09-06 11:45:13 +02:00
Dean Herbert
04d133832f
Merge pull request #29711 from smoogipoo/add-played-acronyms
Add 'yes'/'no' acronyms to the `played=` filter
2024-09-06 18:08:37 +09:00
Dan Balasescu
6913d75792
Add 'yes'/'no' acronyms to the played= filter 2024-09-06 18:04:39 +09:00
Bartłomiej Dach
9f834ca1a2
Silence beatmap retrieval failures from results screen favourite button
As reported (very poorly) in
https://github.com/ppy/osu/pull/28991#issuecomment-2331854970.

I believe this is a total edge case and is mostly visible on dev due to
some beatmaps existing on `osu.ppy.sh` and not on `dev.ppy.sh`, but I
tend to agree in general that these types of failures should not be
firing very loud error notifications; logging to network and disabling
the button with a tooltip adjustment should be enough.
2024-09-06 10:29:23 +02:00
Bartłomiej Dach
925710d9b3
Merge pull request #29702 from peppy/fix-offset-control-wrong-order
Fix beatmap offset control not working correctly when calibrating from quitting gameplay
2024-09-06 09:39:14 +02:00
Dean Herbert
36a30cf077
Add note about using hard links in the future 2024-09-06 16:01:47 +09:00
Fabep
584d4a9abf Merge branch 'master' into ModCustomisationHeaderColor 2024-09-05 12:44:26 +02:00
Dean Herbert
9802b59459
Merge pull request #29693 from bdach/editor/setup-screen-textbox
Implement "form" text box control
2024-09-05 19:31:02 +09:00
Dean Herbert
37f61b26ea
Fix offset adjust control not correctly applying changes after song select quit
This is an interesting scenario where we arrive at a fresh
`BeatmapOffsetControl` but with a reference score (from the last play).

Our best assumption here is that the beatmap's offset hasn't changed
since the last play, so we want to use it for the `lastPlayBeatmapOffset`.
But due to unfortunate order of execution, `Current.Value` was not yet
initialised.
2024-09-05 19:04:52 +09:00
Dean Herbert
c51503cfee
Merge pull request #29695 from peppy/fail-t-request-on-null-response
Trigger request failure on receiving a null response for a typed `APIRequest`
2024-09-05 18:31:54 +09:00
Bartłomiej Dach
3a3a912ebc
Merge pull request #29701 from peppy/fix-gc-fuck-fuck-fuck
Fix high performance session potentially getting stuck after multiplayer spectator
2024-09-05 11:24:54 +02:00
Bartłomiej Dach
49b14ad579
Merge branch 'master' into editor/setup-screen-textbox 2024-09-05 11:22:10 +02:00
Bartłomiej Dach
e1b763ff0d
Apply review suggestions wrt border appearance 2024-09-05 11:21:59 +02:00
Dean Herbert
446c8109b7
Merge pull request #27334 from Sheppsu/replay-analysis-settings
Add a replay analysis overlay
2024-09-05 17:43:00 +09:00
Dean Herbert
86a06c7e10
Fix high performance session potentially getting stuck after multiplayer spectator 2024-09-05 17:19:53 +09:00
Dean Herbert
6fc60908c0
Trigger request failure on receiving a null response for a typed APIRequest 2024-09-05 01:00:23 +09:00
Fabep
17760afa60 Changed ModCustomisationHeader to inherit from OsuClickableContainer.
ModCustomisationHeader changes color depending on state.
2024-09-04 15:29:48 +02:00
Bartłomiej Dach
b7a56c8a45
Implement "form" text box control 2024-09-04 14:09:50 +02:00
Bartłomiej Dach
6f99d839b0
Make struct readonly 2024-09-04 12:41:02 +02:00
Dean Herbert
0e85110ee2
Merge pull request #29690 from peppy/update-framework
Update framework
2024-09-04 19:39:47 +09:00
Dean Herbert
ca09028b06
Merge pull request #29616 from peppy/break-overlay-animation
Add beat-synced animation to break overlay
2024-09-04 19:39:35 +09:00
Bartłomiej Dach
130802e480
Add hotkey hints to editor menus 2024-09-04 12:16:54 +02:00
Bartłomiej Dach
0c4f5bcdaa
Decouple editor main menu items from DrawableOsuMenuItem
It didn't ever really make sense for it to be sharing the implementation
details of that (e.g. colouring of primary/dangerous actions), and with
the hotkey display things got outright hacky, so I'm decoupling it
entirely.
2024-09-04 12:16:52 +02:00
Dean Herbert
cc3d220f6f
Allow settings to be added to replay HUD from ruleset 2024-09-04 19:00:23 +09:00
Dean Herbert
a417fec234
Move analysis container implementation completely local to osu! ruleset 2024-09-04 19:00:22 +09:00
Bartłomiej Dach
3acc5fe5a0
Integrate hotkey display into drawable menu items 2024-09-04 11:58:10 +02:00
Bartłomiej Dach
3c6c49187a
Implement component for displaying hotkeys 2024-09-04 11:57:09 +02:00
Bartłomiej Dach
3531f646f2
Refactor DrawableOsuMenuItem to remove a hack 2024-09-04 11:55:43 +02:00
Dean Herbert
cb9d1d49a2
Update resources 2024-09-04 18:01:06 +09:00
Dean Herbert
045096b08a
Update framework 2024-09-04 18:00:48 +09:00
Dean Herbert
7cd24ba58e
Disallow mistimed firing of beat sync for break overlay for now
It doesn't work well with pause/resume.
2024-09-04 18:00:32 +09:00
Dean Herbert
0e16508fd6
Merge branch 'master' into replay-analysis-settings 2024-09-04 17:52:19 +09:00
Bartłomiej Dach
ef1add3ebb
Merge pull request #29680 from peppy/multiplayer-spectator-auto-download
Add automatic downloading support when spectating a multiplayer room
2024-09-04 10:29:35 +02:00
Dean Herbert
9abaa87d8f
Merge pull request #29626 from Fabep/master
Mod customization header/panel changes
2024-09-04 17:28:11 +09:00
Dean Herbert
86309f4b46
Revert "Woopsie! I accidentally added one too many semi-colons, so I moved it here into the commit instead ;"
This reverts commit 582ffcfc97.

Revert "Mod customisation header's color is now based on the state of the panel rather than the hover of the container."

This reverts commit e3457d8501.
2024-09-04 17:25:41 +09:00
Dan Balasescu
337a30f3b0
Merge pull request #29688 from peppy/fix-song-select-allocs
Fix per-frame allocations in `BeatmapCarousel`
2024-09-04 17:16:10 +09:00
Sheppsu
c89597b060 fix config mistake 2024-09-04 03:37:52 -04:00
Dean Herbert
1017a124ab
Merge pull request #28743 from smallketchup82/velopack
Migrate update framework to Velopack
2024-09-04 16:09:36 +09:00
Dean Herbert
dfe11dc68a
Use for with exposed IReadOnlyList rather than making internal container public 2024-09-04 15:25:36 +09:00
Dean Herbert
97a51af5a0
Fix one more unnecessary enumerator allocation 2024-09-04 15:22:31 +09:00
Dean Herbert
421f245c31
Fix per-frame allocations in BeatmapCarousel 2024-09-04 14:31:59 +09:00
Dean Herbert
6c89c4eed6
Fix rewind causing weirdness with progress bar animation 2024-09-03 18:50:57 +09:00
Sheppsu
a549cdd5b9 persist analysis settings 2024-09-03 04:49:50 -04:00
Sheppsu
a2b15fcdee rework code logic to make more sense
analysis container creates settings and the settings items are created more nicely
also removed use of localized strings because that can be done separately
2024-09-03 00:59:42 -04:00
Fabep
582ffcfc97 Woopsie! I accidentally added one too many semi-colons, so I moved it here into the commit instead ; 2024-09-02 19:17:07 +02:00
Fabep
e3457d8501 Mod customisation header's color is now based on the state of the panel rather than the hover of the container. 2024-09-02 19:14:08 +02:00
Bartłomiej Dach
d99b2312cd
Merge branch 'master' into Fabep/master 2024-09-02 14:35:44 +02:00
Dean Herbert
7b13943377
Handle changes to the automatic download setting immediately 2024-09-02 19:20:05 +09:00
Dean Herbert
872d14ed88
Fix incorrect handling of ordered playlist items 2024-09-02 19:18:43 +09:00
Dan Balasescu
5d09aaae27
Merge pull request #29446 from OliBomby/last-anchor
Fix path control points losing curve type on save/reload or undo
2024-09-02 18:40:19 +09:00
Bartłomiej Dach
5211e606b5
Fix mod customisation header being non-functional on mobile
As expected the previous touch handling would prevent the header from
working entirely when click handling was removed from the header.
2024-09-02 11:33:43 +02:00
Dean Herbert
6227e4f848
Apply NRT to MultiplayerSpectateButton 2024-09-02 16:37:38 +09:00
Dean Herbert
38a62eed44
Add automatic downloading support when spectating a multiplayer room 2024-09-02 16:37:38 +09:00
Sheppsu
1ed94e598a Merge branch 'master' into replay-analysis-settings 2024-09-01 19:32:25 -04:00
Dean Herbert
e79604cc13
Merge pull request #29542 from frenzibyte/show-daily-challenge-intro-once-per-session
Show daily challenge intro screen once per session
2024-09-01 21:27:16 +09:00
Dean Herbert
f7da7193ff
Update framework 2024-09-01 19:10:08 +09:00
Andrei Zavatski
837fa1b8dc Use FastCircle for kiai visualisation 2024-08-31 17:32:24 +03:00
Andrei Zavatski
501ea68a21 Merge branch 'master' into fast-circle 2024-08-31 17:31:30 +03:00
Dan Balasescu
d5b52152f4
Merge branch 'master' into velopack 2024-08-31 15:44:21 +09:00
Dean Herbert
6b8b49e4f1
Simplify scroll speed point display code now that it only serves one purpose 2024-08-31 13:14:56 +09:00
Andrei Zavatski
225418dbb3 Rework kiai handling in summary timeline 2024-08-31 01:59:40 +03:00
Andrei Zavatski
f5a2b5ea03 Use FastCircle in demanding places in the editor 2024-08-30 17:45:26 +03:00
Dean Herbert
a09c6e2a25
Merge pull request #29656 from peppy/provide-api-earlier
Provide API context earlier to api requests in order to fix missing schedules
2024-08-30 23:15:28 +09:00
Bartłomiej Dach
4811481483
Merge pull request #29639 from peppy/detached-beatmap-cache
Improve song select load and reload with large beatmap databases
2024-08-30 15:00:20 +02:00
Bartłomiej Dach
8ffd4aa82c
Fix NRT inspections 2024-08-30 13:41:34 +02:00
Dean Herbert
7b6e62283f
Fix beatmap not being detached on hide/unhide
The explicit detach call was removed from `updateBeatmapSet`, causing
this to occur. We could optionally add it back (it will be a noop in all
cases though).
2024-08-30 18:50:08 +09:00
Dean Herbert
de208fd5c3
Add very basic error handling for failed beatmap detach 2024-08-30 18:50:03 +09:00
Dean Herbert
2033a5e157
Add disposal of ManualResetEventSlim 2024-08-30 18:50:02 +09:00
Dean Herbert
1b9942cb30
Mark BeatmapSets as internal 2024-08-30 18:44:04 +09:00
Dean Herbert
291dd5b101
Remove TODO 2024-08-30 18:37:27 +09:00
Dean Herbert
2d745fb67e
Apply NRT to APIRequest 2024-08-30 18:35:31 +09:00
Dean Herbert
dd7133657d
Fix weird test critical failure if exception happens too early in execution
Noticed in passing.

```
Exit code is 134 (Unhandled exception. System.NullReferenceException:
Object reference not set to an instance of an object.
   at osu.Game.OsuGameBase.onExceptionThrown(Exception ex) in
/Users/dean/Projects/osu/osu.Game/OsuGameBase.cs:line 695
   at osu.Framework.Platform.GameHost.abortExecutionFromException(Object
sender, Exception exception, Boolean isTerminating)
   at osu.Framework.Platform.GameHost.unobservedExceptionHandler(Object
sender, UnobservedTaskExceptionEventArgs args)
   at System.Threading.Tasks.TaskExceptionHolder.Finalize())
```
2024-08-30 18:35:31 +09:00
Dean Herbert
07611bd8f5
Use IAPIProvider interface and correctly support scheduling from DummyAPIAccess 2024-08-30 18:35:31 +09:00
Dean Herbert
5836f497ac
Provide API context earlier to api requests in order to fix missing schedules
Closes https://github.com/ppy/osu/issues/29546.
2024-08-30 18:10:36 +09:00
Fabian Bech Persson
363fc0d5da
Merge branch 'master' into master 2024-08-30 11:06:54 +02:00
Dan Balasescu
ae0931cfc3
Merge pull request #29653 from peppy/fix-multiplayer-event-leak
Fix event leak in `Multiplayer` implementation
2024-08-30 16:58:27 +09:00
Dean Herbert
a71bc3a24a
Merge pull request #28737 from OliBomby/doubleclick
Add more ways to seek to sample points
2024-08-30 16:22:50 +09:00
Dean Herbert
3bc42db3a6
Fix event leak in Multiplayer implementation
Very likely closes #29088. It's the only thing I could find odd in the
memory dump.
2024-08-30 16:14:19 +09:00
Dean Herbert
60c1e0fa72
Merge pull request #29440 from OliBomby/spacebar-resume
Allow play/pause with spacebar while placing hitobjects
2024-08-30 12:58:41 +09:00
OliBomby
ba0c4df2a9 Merge remote-tracking branch 'upstream/master' into doubleclick 2024-08-29 19:34:18 +02:00
OliBomby
8fe7ab131c dont seek on right-click, only on keyboard request 2024-08-29 19:34:14 +02:00
Dan Balasescu
4e8fb0dcab
Merge branch 'master' into scroll-speed-std 2024-08-30 00:41:05 +09:00
Dean Herbert
dd675fef45
Merge pull request #29644 from smoogipoo/unplayed-filter-query-2
Adjust `played` song select filter to accept a boolean value
2024-08-29 23:52:37 +09:00
Dean Herbert
c013974790
Merge branch 'master' into detached-beatmap-cache 2024-08-29 22:49:11 +09:00
Dan Balasescu
fec8fa46fa
Merge pull request #29533 from bdach/fix-sample-bank-stuff-again
Fix incorrect bank set / sample addition logic
2024-08-29 21:36:26 +09:00
Dan Balasescu
fde790c014
Rework played filter to a boolean value 2024-08-29 20:59:48 +09:00
Dean Herbert
d1d2591b67
Fix realm changes being applied before detach finishes 2024-08-29 18:42:43 +09:00
Dean Herbert
def1abaeca
Fix some tests not always waiting long enough for beatmap loading
These used to work because there was a huge blocking load operation,
which is now more asynchronous.

Note that the change made in `SongSelect` is not required, but defensive
(feels it should have been doing this the whole time).
2024-08-29 18:42:43 +09:00
Joseph Madamba
ef443b0b5d Hide pinned comment replies initially to match web 2024-08-28 23:05:15 -07:00
Dean Herbert
1776d38809
Remove loadedTestBeatmaps flag 2024-08-28 23:28:44 +09:00
Dean Herbert
e04b5bb3f2
Tidy up test beatmap loading 2024-08-28 23:28:44 +09:00
Dean Herbert
9123d2cb7f
Fix multiple test failures 2024-08-28 23:28:43 +09:00
Bartłomiej Dach
d49cd717d6
Merge pull request #29576 from peppy/allow-seek-in-more-places
Allow seeking via music controller overlay on more screens
2024-08-28 12:23:09 +02:00
Dean Herbert
dd4a1104e4
Always debounce external Filter requests (except for tests)
The only exception to the rule here was "when screen isn't active apply
without debounce" but I'm not sure we want this. It would cause a
stutter on returning to song select and I'm not even sure this is a
common scenario.

I'd rather remove it and see if someone finds an actual case where this
is an issue.
2024-08-28 19:13:50 +09:00
Dean Herbert
336abadbd1
Allow running initial filter criteria asynchronously
This reverts a portion of https://github.com/ppy/osu/pull/9539.

The rearrangement in `SongSelect` is required to get the initial filter
into `BeatmapCarousel` (and avoid the `FilterChanged` event firing,
causing a delayed/scheduled filter application).
2024-08-28 19:13:50 +09:00
Dean Herbert
5ed0c6e91a
Remove song select preloading
Really unnecessary now.
2024-08-28 19:13:49 +09:00
Dean Herbert
c2c1dccf2d
Detach beatmap sets asynchronously 2024-08-28 19:13:49 +09:00
Dean Herbert
b1f653899c
Fix enumeration over modified collection 2024-08-28 19:13:49 +09:00
Dean Herbert
81b36d897d
Fix null reference in change handling code 2024-08-28 19:13:49 +09:00
Dean Herbert
081c9eb21b
Fix incorrect cancellation / disposal handling of DetachedBeatmapStore 2024-08-28 17:21:19 +09:00
Fabep
6adaf6a41f Changed ModCustomisationPanelState names 2024-08-28 10:09:47 +02:00
OliBomby
cadbb0f27a change sample seek keybind to ctrl shift 2024-08-28 09:57:13 +02:00
Fabep
be0e2efda2 Removed on click event for expanding the Mod Customisation Header. 2024-08-28 09:51:17 +02:00
Dean Herbert
4d42274771
Use bindable list implementation 2024-08-28 16:03:37 +09:00
Dean Herbert
466ed5de78
Add basic detached beatmap store 2024-08-28 16:03:37 +09:00
Dean Herbert
eb70a1b72d
Change middle text to only animate initially 2024-08-28 15:57:42 +09:00
Dean Herbert
47a52d10eb
Revert "Add slight parallax to centre content"
This reverts commit 90d06d4496.
2024-08-28 15:32:59 +09:00
OliBomby
b5b4f915a9 Automatic seek to sample point on right-click 2024-08-27 19:40:33 +02:00
OliBomby
1117fd56a1 change default seek hotkeys 2024-08-27 19:40:18 +02:00
OliBomby
daad476593 Add float comparison leniency just in case 2024-08-27 19:04:16 +02:00
OliBomby
71044a0766 fix difference in sample time calculation 2024-08-27 19:02:40 +02:00
Bartłomiej Dach
a3b0ff4808
Merge branch 'master' into break-overlay-animation 2024-08-27 11:17:56 +02:00
Bartłomiej Dach
321e509f11
Merge pull request #29615 from peppy/break-overlay-improvements
Add shadow around break overlay middle content to make sure it remains visible
2024-08-27 11:16:08 +02:00
Dean Herbert
90d06d4496
Add slight parallax to centre content 2024-08-27 16:37:27 +09:00
Bartłomiej Dach
8d7053d367
Merge pull request #29560 from peppy/fix-daily-challenge-intro-mod-display
Fix mod icons potentially showing incorrectly at daily challenge intro
2024-08-27 09:37:11 +02:00
Dean Herbert
6f1664f0a6
Add beat-synced animation to break overlay
I've been meaning to make the progress bar synchronise with the beat
rather than a continuous countdown, just to give the overlay a bit more
of a rhythmic feel.

Not completely happy with how this feels but I think it's a start?

I had to refactor how the break overlay works in the process. It no
longer creates transforms for all breaks ahead-of-time, which could be
argued as a better way of doing things. It's more dynamically able to
handle breaks now (maybe useful for the future, who knows).
2024-08-27 16:34:37 +09:00
Dean Herbert
98faa07590
Apply NRT to BreakOverlay 2024-08-27 15:01:51 +09:00
Dean Herbert
797b020747
Add shadow around break overlay middle content to make sure it remains visible 2024-08-27 15:01:50 +09:00
Dean Herbert
abdbe510b8
Move break overlay (and cursor) further forward in depth
I didn't really want to move the cursor in front of the HUD, but we face
a bit of an impossible scenario otherwise (it should definitely be in
front of the break overlay for visibility).

So I'll deal with it for now.
2024-08-27 14:52:11 +09:00
Dean Herbert
84bceca778
Assume we can always fetch the ruleset 2024-08-26 15:38:58 +09:00
clayton
70d08b9e97
Increase mod icon acronym font weight 2024-08-25 20:42:57 -07:00
clayton
2bb72762ad
Use more contrasting color for mod icon foreground 2024-08-25 20:42:34 -07:00
Salman Ahmed
b54487031a Add DailyChallengeButton for intro played flag reset logic 2024-08-24 22:19:17 +09:00
Jonas Brandstötter
89a4025c01
Fix Daily Challenge play count using a different colour than osu-web 2024-08-24 11:21:28 +02:00
Dean Herbert
885d832e98
Fix deserialise failing with some old skins 2024-08-23 20:44:45 +09:00
Dean Herbert
1e39af8ac5
Add a bit of logging around medal awarding
Might help with https://github.com/ppy/osu/issues/29119.
2024-08-23 19:49:24 +09:00
Dean Herbert
2a479a84dc
Remove conditional inhibiting seek when beatmap change is not allowed
In testing I can't find a reason for this to exist. Blaming back shows
that it existed before we had `AllowTrackControl` and was likely being
used as a stop-gap measure to achieve the same thing. It's existed since
over 6 years ago.

Let's give removing it a try to fix some usability concerns?

Closes https://github.com/ppy/osu/issues/29563.
2024-08-23 18:21:31 +09:00
Dean Herbert
60271fb0f7
Merge pull request #29564 from peppy/skinnable-components-what-2
Remove requirement of `base` calls to ensure user skin container layouts are retrieved
2024-08-23 17:52:46 +09:00
Dean Herbert
48cfd77ee8
Component -> Lookup 2024-08-23 14:48:50 +09:00
OliBomby
2de5ecceb8 Merge remote-tracking branch 'upstream/master' into scroll-speed-std 2024-08-22 20:17:14 +02:00
OliBomby
ad8e7f1897 Fix scroll speed visualisation missing on start kiai effect points
They were being drawn far offscreen because the width of the kiai multiplied with the X coordinate of the scroll speed vis.
2024-08-22 20:17:09 +02:00
OliBomby
998b5fdc12 Add property EditorShowScrollSpeed to Ruleset 2024-08-22 19:53:34 +02:00
OliBomby
adbdb39e9f move public member to top of file 2024-08-22 19:18:38 +02:00
OliBomby
0db068e423 allow repeating on seek actions 2024-08-22 19:15:53 +02:00
Bartłomiej Dach
bd6943ebc2
Merge pull request #29537 from normalid-awa/feature/song-select/allow-copy-url-from-context-menu
Allow copying beatmap link in song select carousel context menu
2024-08-22 14:03:39 +02:00
Dean Herbert
46d55d5e61
Remove remaining early base lookup calls which were missed 2024-08-22 20:13:28 +09:00
Bartłomiej Dach
b3e961f6c5
Merge pull request #29562 from peppy/remove-migration-leftover-message
Remove "leftover files" notification when migration partly fails
2024-08-22 12:32:44 +02:00
Dean Herbert
58552e9768
Add missing user ruleset to link copying for beatmap panels 2024-08-22 19:18:41 +09:00
Dean Herbert
1435fe24ae
Remove requirement of base calls to ensure user skin container layouts are retrieved 2024-08-22 19:14:30 +09:00
Bartłomiej Dach
a32a817305
Merge pull request #29512 from peppy/toolbar-pp-change-weird
Fix toolbar PP change showing `+0` instead of `0`
2024-08-22 12:08:12 +02:00
Dean Herbert
b57b8168a6
Rename Target lookup to Component 2024-08-22 19:00:28 +09:00
Dean Herbert
9a21174582
Move GlobalSkinnableContainers to global scope 2024-08-22 18:46:07 +09:00
Dean Herbert
36b4013fa6
Rename GameplaySkinComponentLookup -> SkinComponentLookup 2024-08-22 18:46:03 +09:00
Dean Herbert
f37cab0c6e
Rename SkinComponentsContainerLookup to GlobalSkinnableContainerLookup 2024-08-22 18:39:36 +09:00
Bartłomiej Dach
1859e173f2
Fix EVEN MORE code quality inspections! 2024-08-22 11:16:24 +02:00
Bartłomiej Dach
9997271a6a
Fix more code quality inspections 2024-08-22 10:49:24 +02:00
Dean Herbert
41756520b1
Rename SkinComponentsContainer to SkinnableContainer 2024-08-22 17:42:50 +09:00
Bartłomiej Dach
9020739f36
Remove unused using directives 2024-08-22 10:05:45 +02:00
Dean Herbert
67f0ea5d7d
Fix flooring causing delta to not work as expected 2024-08-22 16:22:00 +09:00
Dean Herbert
b3be04aff1
Remove "leftover files" notification when migration partly fails
People were deleting files they shouldn't, causing osu! to lose track of
where the real user files are.

For now let's just keep things simple and not let the users know that
some files got left behind. Usually the files which are left behind are
minimal and it should be fine to leave this up to the user.

Closes https://github.com/ppy/osu/issues/29505.
2024-08-22 16:09:11 +09:00
Bartłomiej Dach
df94c22a29
Merge pull request #29545 from peppy/timeline-redesign-in-circles
Further timeline usability tweaks
2024-08-22 08:39:34 +02:00
Dean Herbert
7e483bbee3
Merge pull request #29541 from frenzibyte/fix-mod-customisation-dragging-outside
Keep mod customisation panel open when dragging outside
2024-08-22 15:28:32 +09:00
Bartłomiej Dach
d33f4837fa
Merge pull request #29532 from bdach/redesign-timing-table-tracking
Redesign timing table tracking
2024-08-22 08:21:39 +02:00
Dean Herbert
066c34e950
Merge pull request #29553 from bdach/local-cache-updates
Add support for retrieving submit/rank date from local metadata cache in version 2
2024-08-22 14:55:43 +09:00
Dean Herbert
9df12e3d87
Move seek button to left to differentiate mutating operations 2024-08-22 14:15:36 +09:00
Dean Herbert
54e5f1c9f0
Merge pull request #29556 from frenzibyte/kiai-star-bursts
Add star fountains/bursts when entering kiai mode in gameplay
2024-08-22 14:14:25 +09:00
Dean Herbert
f068b7a521
Move copy-to-url method to OsuGame to centralise toast popup support 2024-08-22 14:03:41 +09:00
Dean Herbert
7f5f3a4589
Fix mod icons potentially showing incorrectly at daily challenge intro
Prefer using the beatmap's rulesets over the current user selection.

Closes https://github.com/ppy/osu/issues/29559.
2024-08-22 13:57:19 +09:00
Salman Ahmed
922814fab3 Fix flag reset on connection dropouts 2024-08-22 06:00:37 +09:00
Salman Ahmed
1efa6b7221 Merge if branches 2024-08-22 05:40:43 +09:00
Salman Ahmed
fc02b4b942 Alter NRT usage 2024-08-22 05:39:57 +09:00
Dean Herbert
ac5a3a0959
Remove one unused parameter 2024-08-22 02:17:11 +09:00
Dean Herbert
87123d99bf
Move URL implementation to extension methods and share with other usages 2024-08-22 02:08:01 +09:00
Dean Herbert
18a3ab2ffd
Use "link" instead of "URL" 2024-08-22 01:45:43 +09:00
Dean Herbert
a943000579
Merge pull request #29435 from OliBomby/improve-snaps
Fix timeline snapping ignoring nearby timing points
2024-08-22 01:36:30 +09:00
Dean Herbert
fb5fb78fd3
Move zero marker below control points to avoid common overlap scenario 2024-08-22 01:09:22 +09:00
Dean Herbert
843b10ef34
Add back incorrectly removed control point display toggle 2024-08-22 01:05:47 +09:00
Dean Herbert
2876cb73bd
Merge pull request #28991 from Layendan/master
Add collection and favourite buttons to results screen
2024-08-21 23:59:26 +09:00
Bartłomiej Dach
5f88435d96
Add support for retrieving submit/rank date from local metadata cache in version 2
Closes https://github.com/ppy/osu/issues/22416.
2024-08-21 15:42:22 +02:00
OliBomby
423feadd64 Revert "add arrow indicator"
This reverts commit 1ce9e97fd4.
2024-08-21 14:12:58 +02:00
Bartłomiej Dach
28d0a24555
Fix the fix
The more proper way to do this would be to address the underlying issue,
which is https://github.com/ppy/osu/issues/29546, but let's do this
locally for now.
2024-08-21 12:27:56 +02:00
OliBomby
eefd7cf083 add back protection against perfect curve segments with > 3 points 2024-08-21 12:03:15 +02:00
Salman Ahmed
c92af71029 Add in-gameplay version of kiai star fountains/burst 2024-08-21 17:34:38 +09:00
jkh675
3d5b57454e Fix null reference 2024-08-21 16:21:49 +08:00
Dean Herbert
fef56cc29e
Remove expanding behaviour of timeline completely 2024-08-21 16:57:52 +09:00
Dean Herbert
7e6490133d
Adjust visuals of tick display (and fine tune some other timeline elements) 2024-08-21 16:46:14 +09:00
Dean Herbert
1a48a6f654
Reduce size of hit objects on timeline 2024-08-21 16:46:13 +09:00
Dean Herbert
3065f808a7
Simplify timing point display on timeline 2024-08-21 16:46:13 +09:00
Dean Herbert
a0002943a1
Adjust centre marker visuals a bit 2024-08-21 16:46:12 +09:00
Bartłomiej Dach
c4f08b42ab
Use colours to distinguish buttons better 2024-08-21 09:05:33 +02:00
OliBomby
8d72ec8bd6 move timing point binary search back inline 2024-08-21 01:50:52 +02:00
OliBomby
09ca190b8d re-implement ConvexHull 100% original 2024-08-21 00:10:15 +02:00
OliBomby
1ce9e97fd4 add arrow indicator 2024-08-20 23:38:38 +02:00
OliBomby
ae6d855f8d Merge remote-tracking branch 'upstream/master' into doubleclick 2024-08-20 23:19:27 +02:00
Salman Ahmed
637c9aeef0 Add DailyChallengeIntroPlayed session static 2024-08-21 03:37:04 +09:00
Salman Ahmed
b7599dd1f8 Keep mod customisation panel open when dragging a drawable 2024-08-21 03:23:23 +09:00
Salman Ahmed
0d358a1dae Fix resume overlay appearing behind HUD/skip overlays 2024-08-21 02:53:11 +09:00
jkh675
8e273709f1 Implement copy url in beatmap and beatmap set carousel 2024-08-20 22:48:11 +08:00
Dan Balasescu
5bb94000d3
Merge pull request #29534 from bdach/fix-divisor-crash
Fix crash on attempting to edit particular beatmaps
2024-08-20 22:06:32 +09:00
Dan Balasescu
44213a34ae
Merge pull request #29508 from peppy/hold-for-menu-sometimes
Change "hold for menu" button to only show for touch by default
2024-08-20 21:45:50 +09:00
Bartłomiej Dach
c2dd2ad978
Clamp beat divisor to sane range when decoding
In my view this is a nice change, but do note that on its own it does
nothing to fix https://github.com/ppy/osu/issues/29492, because of
`BeatmapInfo` reference management foibles when opening the editor. See
also: https://github.com/ppy/osu/issues/20883#issuecomment-1288149271,
https://github.com/ppy/osu/pull/28473.
2024-08-20 13:52:29 +02:00
Bartłomiej Dach
bb964e32fa
Fix crash on attempting to edit particular beatmaps
Closes https://github.com/ppy/osu/issues/29492.

I'm not immediately sure why this happened, but some old locally
modified beatmaps in my local realm database have a `BeatDivisor` of 0
stored, which is then passed to
`BindableBeatDivisor.SetArbitraryDivisor()`, which then blows up.

To stop this from happening, just refuse to use values outside of a sane
range.
2024-08-20 13:51:58 +02:00
Bartłomiej Dach
c9f1ef5361
Fix incorrect bank set / sample addition logic
Closes https://github.com/ppy/osu/issues/29361.

Typical case of a few early-returns gone wrong leading to `NodeSamples`
not being checked correctly.
2024-08-20 12:37:01 +02:00
Dean Herbert
a633fcdb49
Merge branch 'master' into redesign-timing-table-tracking 2024-08-20 19:16:03 +09:00
Bartłomiej Dach
f0ddb6daa4
Merge pull request #29445 from OliBomby/transparent-break
Make break periods in bottom timeline transparent
2024-08-20 11:46:02 +02:00
Bartłomiej Dach
a33294ac42
Redesign timing table tracking
- On entering the screen, the timing point active at the current instant
  of the map is selected. This is the *only* time where the selected
  point is changed automatically for the user.

- The ongoing automatic tracking of the relevant point after the initial
  selection is *gone*. Even knowing the fact that it was supposed to
  track the supposedly relevant "last selected type" of control point,
  I always found the tracking to be fairly arbitrary in how it works.
  Removing this behaviour also incidentally fixes
  https://github.com/ppy/osu/issues/23147.

  In its stead, to indicate which timing groups are having an effect,
  they receive an indicator line on the left (coloured using the
  relevant control points' representing colours), as well as a slight
  highlight effect.

- If there is no control point selected, the table will autoscroll to
  the latest timing group, unless the user manually scrolled the table
  before.

- If the selected control point changes, the table will autoscroll to
  the newly selected point, *regardless* of whether the user manually
  scrolled the table before.

- A new button is added which permits the user to select the latest
  timing group. As per the point above, this will autoscroll the user
  to that group at the same time.
2024-08-20 11:14:42 +02:00
Dean Herbert
bccc797bcb
Move break display to background of summary timeline 2024-08-20 17:45:44 +09:00
Bartłomiej Dach
373ff47a94
Remove dead row attribute classes
These aren't shown on the control point table since difficulty and
sample control points were moved into objects.
2024-08-20 09:53:40 +02:00
Layendan
59ba48bc81 Fix crash if favourite button api request fails 2024-08-19 07:58:20 -07:00
Bartłomiej Dach
588a36cba3
Remove unused variable 2024-08-19 14:58:12 +02:00
Bartłomiej Dach
7693d4c039
Merge branch 'master' into master 2024-08-19 14:30:20 +02:00
Dean Herbert
610ebc5481
Fix toolbar PP change showing +0 instead of 0 2024-08-19 20:50:11 +09:00
Dean Herbert
6985e2e657
Increase default visibility on touch platforms 2024-08-19 20:32:05 +09:00
Dean Herbert
005b1038a3
Change "hold for menu" button to only show for touch by default 2024-08-19 20:23:25 +09:00
Bartłomiej Dach
24a0a3c47f
Merge pull request #29476 from EVAST9919/buffered-editor-grid
Improve draw performance of editor grids
2024-08-19 12:44:08 +02:00
Dan Balasescu
03188e40ee
Merge pull request #29504 from peppy/skin-editor-fix-sidebar-reload
Fix skin editor components sidebar not reloading when changing skins
2024-08-19 18:13:52 +09:00
Bartłomiej Dach
42675be6cf
Merge branch 'master' into additions 2024-08-19 11:13:43 +02:00
Bartłomiej Dach
32821be046
Make "double ternary button" specific to samples
We can generalise *when* there is the need to generalise. So far the
generalisation only looked like *obfuscation*.
2024-08-19 11:13:29 +02:00
Dan Balasescu
c18f7a239c
Merge pull request #29474 from peppy/fix-legacy-combo-counter-animation-dead
Fix legacy combo counter bounce animation not always playing
2024-08-19 18:09:57 +09:00
Bartłomiej Dach
55e9bb6a5d
Privatise setter 2024-08-19 10:59:47 +02:00
Dean Herbert
1bd2f4c6a2
Fix skin editor components sidebar not reloading when changing skins
Closes https://github.com/ppy/osu/issues/29098.
2024-08-19 15:45:18 +09:00
Dean Herbert
4a3f4c3a55
Don't duck music when effect volume is set to zero
Addresses https://github.com/ppy/osu/discussions/28984.
2024-08-19 14:46:50 +09:00
Dean Herbert
e75ae4a37b
More hardening of TestMultiplayerClient to attempt to fix test failures 2024-08-19 04:04:24 +09:00
Joseph Madamba
6dd08e9a96 Fix beatmap carousel panels not blocking hover of other panels in song select 2024-08-17 11:45:54 -07:00
Andrei Zavatski
3cd5820b5b Make PositionSnapGrid a BufferedContainer 2024-08-17 10:34:39 +03:00
Dean Herbert
04a2d67ca4
Fix legacy combo counter bounce animation not always playing
As mentioned [in
discord](https://discord.com/channels/188630481301012481/1097318920991559880/1274231995261649006).
2024-08-17 15:13:44 +09:00
Andrei Zavatski
f74263db81 Remove extra box in OnlinePlayBackgroundScreen 2024-08-17 01:01:51 +03:00
Dean Herbert
d1d195cf18
Fix incorrect skin lookup shortcutting causing sprites to no longer work 2024-08-17 02:33:52 +09:00
OliBomby
621c4d65a3 Hide scroll speed in effect row attribute 2024-08-16 14:43:33 +02:00
OliBomby
b253d8ecbf Hide scroll speed in bottom timeline 2024-08-16 14:43:09 +02:00
OliBomby
a2e26ba9ff Fix perfect curve anchors losing type between reloads 2024-08-16 14:24:55 +02:00
OliBomby
4cc38cea63 fix last anchor converting to implicit segment 2024-08-16 14:24:03 +02:00
OliBomby
5624c1d304 Make break periods in bottom timeline transparent 2024-08-16 13:22:09 +02:00
OliBomby
e5fab9cfbe Remove select action to end placement 2024-08-16 11:55:07 +02:00
Joseph Madamba
e2bf02cf94 Fix preview play button having incorrect click area 2024-08-15 22:49:12 -07:00
Joseph Madamba
fda17a5a72 Expose BeatmapCardNormal height const 2024-08-15 22:49:12 -07:00
OliBomby
3565a10ea2 fix confusing return statement at the end 2024-08-16 01:45:28 +02:00
OliBomby
3a84409546 Use TimingPointAfter for seeking check 2024-08-16 01:36:51 +02:00
OliBomby
2e11172e8e Take into account next timing point when snapping time 2024-08-16 01:01:24 +02:00
OliBomby
ac064e814f Add BinarySearchUtils 2024-08-16 00:15:40 +02:00
Joseph Madamba
c3600467bf Make collection button test less broken 2024-08-15 11:49:15 -07:00
Dan Balasescu
52c1858bbe
Merge pull request #29428 from peppy/update-editor-menu-items-difficulty-change
Ensure the "Change Difficulty" menu uses up-to-date difficulty names
2024-08-16 00:44:59 +09:00
Dean Herbert
5710f0f302
Merge pull request #26254 from frenzibyte/mania-combo-counter
Add argon/classic osu!mania combo counter
2024-08-15 17:56:28 +09:00
Dean Herbert
b5f615882f
Ensure the "Change Difficulty" menu uses up-to-date difficulty names
Closes https://github.com/ppy/osu/issues/29391.
2024-08-15 17:25:30 +09:00
Dean Herbert
4b279ecaa8
Fix mistake 2024-08-15 16:44:15 +09:00
Dean Herbert
26da2c0637
Update MultiplayerClient test output with new knowledge 2024-08-15 16:16:48 +09:00
Dean Herbert
9dc496d6a7
Merge pull request #29415 from Joehuu/difficulty-name-content
Implement song select v2 difficulty name content component
2024-08-15 15:20:52 +09:00
Salman Ahmed
3a4546d62d Remove x symbol from argon mania combo counter 2024-08-15 15:08:35 +09:00
Dean Herbert
054366b25d
Use zero baseline for legacy sprite text display 2024-08-15 13:07:42 +09:00
Dan Balasescu
8bfb5cedc4
Merge pull request #29406 from peppy/fix-skin-change-crash
Fix crash on changing skins when classic mod is enabled and game is rewound
2024-08-15 01:04:32 +09:00
Dean Herbert
28ab65243d
Remove daily challenge tooltip from main menu
Now that we have a nice intro screen for the daily challenge, it's
generally thought that we want to "spoil" the beatmap until the intro is
shown.

Also I was never a huge fan of having a tooltip on a main menu button..
just feels a bit odd.
2024-08-14 20:45:27 +09:00
Dean Herbert
58d9a4adba
Merge pull request #29414 from smoogipoo/fix-daily-challenge-2
Add localisation for daily challenge day/week units
2024-08-14 18:45:12 +09:00
Joseph Madamba
11bd0c9a61 Inline single-frame layout issue comment instead 2024-08-14 00:41:43 -07:00
Joseph Madamba
c24f1444f9 Directly resolve IBindable<WorkingBeatmap> by making a local variant of DifficultyNameContent 2024-08-13 23:26:18 -07:00
Joseph Madamba
2b41f71fd0 Workaround single-frame layout issues with {Link|Text|Fill}FlowContainers 2024-08-13 23:26:17 -07:00
Joseph Madamba
625c6fc7eb Implement song select v2 difficulty name content component 2024-08-13 23:26:17 -07:00
Dean Herbert
e465049050
Merge branch 'master' into mania-combo-counter 2024-08-14 15:12:00 +09:00
Dan Balasescu
f882ad4a53
Add localisation for daily challenge day/week units 2024-08-14 15:10:55 +09:00
Dean Herbert
78ef436ea0
Update test debug output to test second scenario 2024-08-14 12:23:47 +09:00
OliBomby
10f2ac6490 fix anti-aliased white leaking out of the button 2024-08-13 22:13:17 +02:00
OliBomby
2abcdd0064 Redesign sample bank toggles 2024-08-13 22:05:01 +02:00
Dean Herbert
2221c4891f
Remove legacy non-pooled pathway to DrawableJudgement 2024-08-13 21:03:00 +09:00
Dean Herbert
bb0c9e2497
Add log output when judgements aren't being pooled 2024-08-13 20:57:23 +09:00
Dean Herbert
d74ac57092
Never call prepareDrawables from unsafe context
I can't mentally figure out *what* is causing the issue here, but in the
case where `prepareDrawables` is called from
`JudgementBody.OnSkinChanged` (only happens in a non-pooled scenario),
things go very wrong.

I think a smell test is enough for anyone to agree that the flow was
very bad. Removing this call doesn't seem to cause any issues.

`runAnimation` should always be called in `PrepareForUse` (both pooled
and non-pooled scenarios) so things should still always be in a correct
state.

Closes #29398.
2024-08-13 20:57:20 +09:00
OliBomby
b187062747 clarify meaning of flip axis vector 2024-08-13 12:58:52 +02:00
Salman Ahmed
c9b2a5bb9c Fix user profile overlay colour resetting when changing rulesets 2024-08-13 13:03:31 +03:00
Dan Balasescu
513a666847
Merge pull request #29401 from CloneWith/patch/wiki-locale
Automatically use in-game language for wiki pages
2024-08-13 17:18:29 +09:00
Dan Balasescu
3f02869bcc
Enable NRT while we're here 2024-08-13 16:08:06 +09:00
Dan Balasescu
4b4f0ecf7d
Merge pull request #29342 from cl8n/remove-mania-action-special
Remove "Special" `ManiaAction`s for center columns
2024-08-13 15:36:36 +09:00
Dan Balasescu
cd76f474d8
Merge pull request #29388 from cl8n/fix-mania-replay
Fix error on parsing osu!mania replays with 18 or more keys
2024-08-13 15:29:53 +09:00
CloneWith
ca91726190
Reload wiki page on language change 2024-08-13 13:34:11 +08:00
CloneWith
64468bce6d
Merge github.com:ppy/osu into patch/wiki-locale 2024-08-13 11:51:14 +08:00
CloneWith
7cbb4ab6f1
Get in-game locale for wiki pages 2024-08-13 11:50:33 +08:00
Dean Herbert
16f6e26c2e
Merge pull request #29372 from ArijanJ/song-progress-optional-time
Add option to hide song progress time/text
2024-08-13 00:57:15 +09:00
Bartłomiej Dach
06c2952fe8
Merge branch 'master' into grids-3 2024-08-12 13:55:35 +02:00
Dean Herbert
b567ab2a39
Fix context menus sometimes not being clickable at song select
Closes https://github.com/ppy/osu/issues/21602.
2024-08-12 20:31:20 +09:00
Bartłomiej Dach
92bd123ebc
Merge pull request #29363 from peppy/fix-daily-challenge-notification-spam
Fix daily challenge notification spam
2024-08-12 12:18:38 +02:00
Bartłomiej Dach
96bd374b18
Change notification interval to 30 minutes 2024-08-12 11:24:59 +02:00
Bartłomiej Dach
54a1d79136
Clean up some naming weirdness 2024-08-12 11:23:36 +02:00
Bartłomiej Dach
041c70e4eb
Fix tests 2024-08-12 11:19:02 +02:00
Bartłomiej Dach
306e84c7ac
Move disposal method to more expected location 2024-08-12 10:46:58 +02:00
clayton
9620c58751
Fix mouseX legacy replay parsing for high key counts in mania 2024-08-11 09:45:43 -07:00
ArijanJ
fed5b9d747
Fix one more inspectcode warning 2024-08-10 09:45:30 +02:00
ArijanJ
d01e76d9db
Fix double blank line 2024-08-09 23:08:22 +02:00
ArijanJ
2dee8bef7e
Add option to hide song progress time/text 2024-08-09 22:50:37 +02:00
Dean Herbert
df43263e38
Merge branch 'master' into daily-challenge-intro-sfx 2024-08-10 02:22:48 +09:00
Dean Herbert
c29b40ae65
Update resources 2024-08-10 02:08:02 +09:00
Dean Herbert
81777f22b4
Update framework 2024-08-10 00:11:39 +09:00
Jamie Taylor
c6fa348d82
Add sound design for daily challenge intro animation 2024-08-09 23:05:33 +09:00
Dean Herbert
3896a081a5
Update framework 2024-08-09 22:50:56 +09:00
Dean Herbert
bb7cea2417
Merge pull request #29346 from peppy/move-mute-button
Move mute button to master volume circle
2024-08-09 21:16:47 +09:00
Dan Balasescu
179a3ad8dd
Hack around the border looking ugly
This is an o!f issue because borders are applied into the individual
sprites of the container via masking, rather than being isolated to the
container itself. In this case, it'll be applied to the "flash" sprite,
which is using additive blending, causing further issues.
2024-08-09 19:55:57 +09:00
Dean Herbert
fa9a835eb5
Make icon smaller 2024-08-09 19:29:23 +09:00
Dan Balasescu
104942ccf6
Merge pull request #29362 from peppy/dont-truncate-floating-point-positioning
Fix hit object coordinates being truncated to `int` values
2024-08-09 19:10:24 +09:00
Dan Balasescu
dc3e6c1e6b
Merge pull request #29366 from peppy/editor-inspector-during-placement
Show object inspector values during placement
2024-08-09 19:03:10 +09:00
Dean Herbert
3e634a14a4
Add temporary debug code for multiplayer test failures 2024-08-09 18:43:37 +09:00
Dean Herbert
8fdd94090b
Show object inspector values during placement 2024-08-09 18:02:37 +09:00
Dean Herbert
f6ada68e47
Fix migration failure due to change in class name 2024-08-09 17:27:39 +09:00
Dean Herbert
e146c8e230
Ensure only one daily challenge notification is fired per room 2024-08-09 17:11:11 +09:00
Dean Herbert
52b2d73e04
Only show daily challenge notification if it started within the last 30 minutes 2024-08-09 17:10:18 +09:00
Dean Herbert
d072c6a743
Fix hit object coordinates being truncated to int values
Closes https://github.com/ppy/osu/issues/29340.
2024-08-09 16:34:39 +09:00
Dean Herbert
161734af95
Simplify argon mania combo counter implementation by sharing with base counter 2024-08-09 15:46:57 +09:00
Dean Herbert
7666e8b932
Remove SupportsClosestAnchor for the time being
This may have had a good reason to be added, but I can't find that
reason, so let's keep things simple for the time being.
2024-08-09 15:30:21 +09:00
Dean Herbert
80c814008f
Update in line with new changes 2024-08-09 14:55:01 +09:00
Dean Herbert
e645651ef4
Merge branch 'master' into mania-combo-counter 2024-08-09 00:19:17 +09:00
Dean Herbert
0cb3b6a1f8
Add back TrySetDailyChallengeBeatmap call for safety 2024-08-08 22:10:26 +09:00
Dean Herbert
8eb0ef1e33
Merge branch 'master' into daily-challenge-intro-audio-auto-download 2024-08-08 22:09:21 +09:00
Dean Herbert
d84d0310e0
Move mute button to master volume circle 2024-08-08 22:06:13 +09:00
Dan Balasescu
45c1dfde5e
Merge pull request #29349 from peppy/fix-daily-challenge-async-test-woo
Fix potential test failure in daily challenge tests
2024-08-08 19:05:39 +09:00
Dean Herbert
dcafee7cb7
Merge pull request #26249 from frenzibyte/ruleset-specific-combo-counter
Move combo counter to ruleset-specific HUD components container
2024-08-08 17:41:58 +09:00
Dean Herbert
03d543ec99
Fix potential test failure in daily challenge tests
See https://github.com/ppy/osu/actions/runs/10296877688/job/28500580680.
2024-08-08 16:53:22 +09:00
Dean Herbert
88c5997cb3
Add back removed xmldoc 2024-08-08 16:36:54 +09:00
Dean Herbert
60d383448f
Avoid making non-ruleset transformers in Ruleset.CreateSkinTransformer
This didn't make any sense, so let's do it a better way.
2024-08-08 16:29:54 +09:00
Dean Herbert
3f3145e109
Start playing music during intro if download finishes early 2024-08-08 15:10:18 +09:00
Dean Herbert
5d66eda982
Add support for automatically downloading daily challenge during the intro display 2024-08-08 15:10:18 +09:00
Dean Herbert
e95d61d4c2
Remove accidental double handling of beatmap availability in DailyChallenge 2024-08-08 15:10:18 +09:00
Dean Herbert
f91a3e9a35
Start playing daily challenge track as part of intro sequence 2024-08-08 15:10:17 +09:00
Dean Herbert
5891780427
Show initial text a bit longer 2024-08-08 14:15:40 +09:00
Dean Herbert
7058fedf42
Merge branch 'master' into daily-challenge-intro-screen-part-2 2024-08-08 14:12:16 +09:00
Dean Herbert
1ee5522a25
Merge branch 'master' into daily-challenge-intro-screen-part-2 2024-08-08 14:08:14 +09:00
Dean Herbert
25dddb694a
And then completely change the animation to a new style 2024-08-08 14:02:43 +09:00
Dean Herbert
f72f5ee7e3
More improvements maybe 2024-08-08 13:29:10 +09:00
Dean Herbert
9bafdeeeff
Improve animation 2024-08-08 13:17:25 +09:00
clayton
8e63c17536
Apply CodeFactor lint 2024-08-07 15:02:53 -07:00
clayton
93e193d719
Add realm migration to remap key bindings 2024-08-07 14:36:04 -07:00
Dean Herbert
b5a19707d0
Merge branch 'master' into additions 2024-08-08 03:31:11 +09:00
Dean Herbert
3c572abaa7
Merge branch 'master' into ruleset-specific-combo-counter 2024-08-08 03:21:52 +09:00
Dean Herbert
8773c2f7eb
Merge pull request #29281 from kstefanowicz/multiplayer-chat-focus-hint
Add "enter" hint to in-gameplay chatbox placeholder text
2024-08-08 01:29:42 +09:00
Dan Balasescu
089ff559d3
Fix inspection 2024-08-08 00:42:31 +09:00
Dan Balasescu
a06cb9a0de
Merge pull request #29322 from peppy/daily-challenge-import-improvement
Fix clicking the beatmap import notification at the daily challenge screen exiting to main menu
2024-08-08 00:42:03 +09:00
Dan Balasescu
10f704cc41
Fix xmldoc 2024-08-07 23:50:09 +09:00
Dean Herbert
cfd7f96e76
Add missing exit line causing completely incorrect behaviour 2024-08-07 23:29:24 +09:00
Bartłomiej Dach
f83d43c38b
Get rid of weird method 2024-08-07 14:07:20 +02:00
Bartłomiej Dach
e6d5389608
Merge branch 'master' into hover-open-mod-customise 2024-08-07 14:05:19 +02:00
Bartłomiej Dach
518c1aa5a0
Remove weird Expanded / ExpandedState duality 2024-08-07 14:01:30 +02:00
kstefanowicz
775f76f472 Have placeholder text change while focused 2024-08-07 07:47:35 -04:00
Bartłomiej Dach
437812eebe
Merge pull request #29279 from normalid-awa/bugfix/editor/delete-operation-wont-close-the-menu
Close context menus when deselecting items in editor
2024-08-07 13:25:13 +02:00
Dean Herbert
e52d80a41b
Add more difficulty information and further tweaks to visuals 2024-08-07 19:08:04 +09:00
Dean Herbert
083fe32d20
Improve feel of animation 2024-08-07 19:07:45 +09:00
Salman Ahmed
a0615a8f18
Frenzi's WIP animation 2024-08-07 19:07:45 +09:00
Dean Herbert
cfccd74441
Add daily challenge intro sequence 2024-08-07 19:07:44 +09:00
Dean Herbert
6870311c1e
Remove requirement of specifying animateOnnter in BackgroundScreen ctor 2024-08-07 19:07:44 +09:00
Dean Herbert
3c05b975a0
Fix clicking the beatmap import notification at the daily challenge screen exiting to main menu 2024-08-07 19:07:43 +09:00
Dean Herbert
43f1fe350d
Fix PresentBeatmap sometimes favouring an already DeletePending beatmap 2024-08-07 19:07:43 +09:00
Dean Herbert
227878b67a
Change default for "automatically download beatmaps" to enabled 2024-08-07 19:06:50 +09:00
Dean Herbert
dccf766ff3
Remove obsoleted download setting 2024-08-07 19:06:50 +09:00
Dean Herbert
b1488fd5b7
Merge pull request #29027 from normalid-awa/feature/skin/legacy-input-overlay
Add legacy key counter support
2024-08-07 17:48:30 +09:00
Dean Herbert
5a63c25f49
Fix clicking the beatmap import notification at the daily challenge screen exiting to main menu 2024-08-07 14:42:34 +09:00
Dean Herbert
06ff858256
Fix PresentBeatmap sometimes favouring an already DeletePending beatmap 2024-08-07 14:40:52 +09:00
Dean Herbert
a61bf670d8
Highlight mentions in chat 2024-08-07 01:33:56 +09:00
Dean Herbert
9ccd8c906d
Merge branch 'master' into hover-open-mod-customise 2024-08-06 18:35:35 +09:00
Dean Herbert
725dc4de9b
Use transformers for per-skin key counter implementation 2024-08-06 18:17:21 +09:00
Dean Herbert
8619bbb943
Fix legacy key counter's background being visible when intended to be hidden 2024-08-06 16:12:00 +09:00
Dan Balasescu
41d84ea56b
Revert all SkinEditor changes (none required) 2024-08-06 16:11:29 +09:00
Dan Balasescu
c26a664b84
Use InternalChild directly 2024-08-06 16:08:42 +09:00
Dan Balasescu
c574551ee0
Simplify caching 2024-08-06 16:02:36 +09:00
Dean Herbert
90395aea13
Fix incorrect colour fallback handling
Adds a note about `GetConfig` being stupid.
2024-08-06 15:43:39 +09:00
Dan Balasescu
b91461e661
Refactor + CI fixes 2024-08-06 15:17:52 +09:00
Dean Herbert
c4572ec265
Sanitise font sizes / weights 2024-08-06 15:17:43 +09:00
jkh675
cb877b7675 Close the menu when selecting other object 2024-08-06 13:09:48 +08:00
Dean Herbert
60fc02bb9b
Merge branch 'master' into feature/skin/legacy-input-overlay 2024-08-06 14:05:33 +09:00
Dan Balasescu
d637bbf752
Merge pull request #29286 from peppy/middle-click-delete
Allow object deletion with middle mouse
2024-08-06 13:38:56 +09:00
jkh675
22ab6f577c Add back the sample into OsuContextMenu 2024-08-06 12:37:46 +08:00
kstefanowicz
54a8f5b306 Shorten TranslatableString 2024-08-05 11:06:27 -04:00
Dean Herbert
f41bab0eb8
Merge pull request #29210 from normalid-awa/bugfix/visual/long-commet-tooltip-overflow
Limiting the `OsuTooltip` maximum width to prevent overflow
2024-08-05 18:09:07 +09:00
jkh675
75c0c6a5f9 Make the OsuContextMenu nullable in SelectionHandler 2024-08-05 16:32:49 +08:00
jkh675
6d385c6510 Remove the meaningless OpenMenu method 2024-08-05 16:31:15 +08:00
Dean Herbert
c37f617e1d
Adjust song select info icon size slightly
Not going to PR this it's just a minor tweak.
2024-08-05 17:21:50 +09:00
Dean Herbert
17eb134797
Merge branch 'master' into bugfix/visual/long-commet-tooltip-overflow 2024-08-05 17:01:20 +09:00
Dean Herbert
0557b9ab79
Allow placement deletion with middle mouse
This is in addition to Shift + Right-click.

I thik middle mouse feels more natural and is a good permanent solution
to this issue.

Note that this also *allows triggering the context menu from placement
mode*. Until now it's done nothing. This may be annoying to users with
muscle memory but I want to make the change and harvest feedback. I
think showing the context menu is more correct behaviour (although
arguably it should return to placement mode on dismiss?).
2024-08-05 14:25:09 +09:00
Dan Balasescu
136cdcfb29
Merge pull request #29059 from frenzibyte/fix-results-fetching-twice
Fix results screen fetching scores twice when scrolled to edge
2024-08-05 14:23:47 +09:00
Dan Balasescu
f92e2094c1
Adjust localisation string name + formatting 2024-08-05 12:34:24 +09:00
Dean Herbert
419d5a76ce
Merge branch 'master' into fix-pause-in-osu-again 2024-08-05 12:00:21 +09:00
AkiraTenchi
a5a392e9fc
Update FilterQueryParser.cs
Add sr as an alias for star rating in the search parameters
2024-08-04 19:48:29 +02:00
kstefanowicz
b0757a13c2 Add "enter" hint to chatbox placeholder text while in-game 2024-08-04 12:32:08 -04:00
jkh675
b32d97b4c0 Remove decreapted property 2024-08-04 21:27:25 +08:00
jkh675
2145368d17 Merge EditorContextMenuContainer into OsuContextMenuContainer 2024-08-04 21:00:43 +08:00
jkh675
7c83d6a883 Cleanup code 2024-08-04 19:56:41 +08:00
jkh675
5d31171fb0 Fix code quality 2024-08-04 19:43:43 +08:00
jkh675
3cc5466774 Refactor the code to follow IoC principle and more flexible 2024-08-04 19:39:06 +08:00
jkh675
27d6c4cecb Implement on beatmap editor 2024-08-04 19:16:14 +08:00
jkh675
5c5fcd7e7e Allow key event pass through selection handler 2024-08-04 19:11:21 +08:00
jkh675
1ff0c7cb46 Replace original menu container with custom one 2024-08-04 19:10:49 +08:00
jkh675
83aeb27c73 Replace original menu container to the custom one 2024-08-04 19:08:31 +08:00
jkh675
de6d8e7eb7 Add the custom context menu to handle the key event 2024-08-04 19:07:35 +08:00
Joseph Madamba
2daf1b58f2 Allow searching enum descriptions from SettingsEnumDropdowns 2024-08-03 14:48:08 -07:00
Dean Herbert
7765d0ff70
Merge pull request #29157 from frenzibyte/user-profile-daily-challenge-streak-display
Add daily challenge stats display to user profile overlay
2024-08-03 23:57:19 +09:00
Dean Herbert
d95d63d7ee
Undo localisation of Daily Challenge string for now 2024-08-03 22:44:51 +09:00
Dan Balasescu
040f65432e
Rename variables a bit 2024-08-03 19:40:06 +09:00
Joseph Madamba
4ef9f335ee Fix customise button on mod overlay initially showing flash layer indefinitely 2024-08-02 10:19:59 -07:00
jkh675
a8141bf15f Only wrap by per word 2024-08-02 21:50:24 +08:00
Dan Balasescu
7bf96ce49a
Merge pull request #29231 from peppy/timeline-break-behind-objects
Show breaks behind objects in timeline
2024-08-02 21:28:11 +09:00
Dan Balasescu
8a10d63ddf
Merge pull request #29228 from peppy/fix-leaderboard-v2-insane-allocs
Fix insane transform allocations in new leaderboard display
2024-08-02 21:28:00 +09:00
Dean Herbert
c27b35ad14
Update framework 2024-08-02 20:58:52 +09:00
Dean Herbert
dc73856f76
Fix original date not being restored when no changes are made on an import-as-update operation 2024-08-02 20:46:03 +09:00
jkh675
8265e7ce31 Reduce the tooltip max width 2024-08-02 19:44:55 +08:00
Caiyi Shyu
c85dc40f91
Merge branch 'master' into hover-open-mod-customise 2024-08-02 19:07:27 +08:00