1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 12:37:47 +08:00
Commit Graph

43457 Commits

Author SHA1 Message Date
jkh675
8f86681110 Replace OsuSpriteText with TextFlowContainer 2024-07-29 18:29:44 +08:00
jkh675
90fdf5599f Revert changes 2024-07-29 18:14:07 +08:00
Bartłomiej Dach
cebd38c6eb
Merge pull request #29163 from Joehuu/copy-lb-mods-daily
Add ability to copy leaderboard mods in daily challenge
2024-07-29 12:09:27 +02:00
Bartłomiej Dach
9b96bd1d73
Force exit to main menu when presenting scores from within playlists / multiplayer
- Closes https://github.com/ppy/osu/issues/29152
- Partially reverts https://github.com/ppy/osu/pull/29097
- Reopens https://github.com/ppy/osu/issues/26666

When testing I failed to predict that in multiplayer there can be a
different beatmap in the playlist queue. If this is the case,
`PresentScore()` will exit out to `Multiplayer`, whose `RoomSubScreen`
will update the selected item - and thus, the global beatmap - to the
next item in queue, at which point trying to play games with "not
touching the global beatmap bindable if we don't need to" fail to work,
because the bindable *must* be touched for correct operation, yet it
cannot (because `OnlinePlayScreen`s disable it).

I'm not sure what the fix is here:

- making replay player somehow independent of the global beatmap?
- not exiting out to multiplayer, but instead doing the present from the
  results screen itself? if so, then how to ensure the screen stack
  can't overflow to infinity?

so I'm just reverting the broken part. The daily challenge part is left
in because as is it should not cause issues.
2024-07-29 12:07:45 +02:00
jkh675
5ec46a79b4 Only create a new drawable object when the background is needed 2024-07-29 17:50:23 +08:00
Bartłomiej Dach
2ff0a89b4f
Convert into auto-property even more 2024-07-29 10:59:21 +02:00
Bartłomiej Dach
861b546562
Add vague test coverage 2024-07-29 10:58:05 +02:00
Bartłomiej Dach
54c904d439
Convert into auto-property 2024-07-29 10:40:29 +02:00
Bartłomiej Dach
aa7f6f81ef
Merge pull request #29127 from Joehuu/add-negative-horizontal-padding-daily
Fix daily challenge background clipping when settings/notifications is opened
2024-07-29 10:28:48 +02:00
jkh675
63757a77a5 Extract update background method 2024-07-29 13:39:08 +08:00
Shreyas Kadambi
dec6b190f2 Add optional 'suffix' to timestamp 2024-07-28 11:31:36 -04:00
normalid
4e65944609 Make the tooltips width be dyanmic with the content, so the long text wont occurs wierd line break 2024-07-28 16:26:18 +08:00
normalid
5db0e36404 Use the TruncatingSpriteText in ModPresetTooltip 2024-07-28 16:18:43 +08:00
Joseph Madamba
f6eb9037df Add ability to copy leaderboard mods in daily challenge 2024-07-27 23:55:56 -07:00
Salman Ahmed
7fedfd368c Fix score breakdown tooltips appearing in other feeds 2024-07-28 07:22:58 +03:00
normalid
4e44a6e7f8 Clean up code 2024-07-27 18:55:17 +08:00
normalid
73a98b45e9 FIx code quality 2024-07-27 18:48:45 +08:00
normalid
c2711d0c4e Implement chatline background altering 2024-07-27 17:25:44 +08:00
Joseph Madamba
d55e861b90 Fix daily challenge background clipping when settings/notifications is opened 2024-07-26 16:55:15 -07:00
Dean Herbert
565107205c
Merge pull request #29097 from bdach/dont-exit-to-menu-when-presenting-score-in-online
Don't force exit to main menu when presenting scores from within online screens
2024-07-27 02:46:58 +09:00
Dean Herbert
9323f89357
Fix "Beatmap not downloaded" tooltip hint not showing in daily challenge 2024-07-27 02:06:56 +09:00
Dean Herbert
0421e1e9d0
Reduce number spacing a bit more 2024-07-26 23:21:44 +09:00
Dean Herbert
96049807c4
Adjust weight and text in event feed output
Just some minor adjustments.
2024-07-26 23:20:32 +09:00
Dean Herbert
4fa6a19409
Merge pull request #29108 from bdach/daily-challenge/better-breakdown
Improve score breakdown on daily challenge
2024-07-26 23:12:04 +09:00
Dean Herbert
47eca0eb37
Merge pull request #29101 from bdach/daily-challenge/fix-preview-track
Fix preview tracks not stopping playback when suspending/exiting daily challenge screen
2024-07-26 21:52:26 +09:00
Dean Herbert
6f7d05d5a0
Merge pull request #29104 from bdach/daily-challenge/fix-no-audio-adjustments
Fix daily challenge screen not applying track adjustments from mods
2024-07-26 21:51:58 +09:00
Bartłomiej Dach
0996f9b0b5
Fix code quality 2024-07-26 14:45:39 +02:00
Dean Herbert
1607075e0c
Merge pull request #29099 from bdach/daily-challenge/totals-display
Implement component for displaying running totals in daily challenge
2024-07-26 21:44:58 +09:00
Dean Herbert
a870722ea6
Adjust easings and reduce character spacing slightly 2024-07-26 21:43:23 +09:00
Bartłomiej Dach
fc0ade2c61
Highlight where local user's best is on the breakdown 2024-07-26 14:32:01 +02:00
Bartłomiej Dach
2caaebb670
Add tooltip with counts to daily challenge score breakdown chart 2024-07-26 13:47:41 +02:00
Dean Herbert
19affa7062
Rename new property to match true usage (per item)
Also document a bit more.
2024-07-26 20:45:13 +09:00
Bartłomiej Dach
2e37f3b5de
Hook up score totals display to daily challenge screen 2024-07-26 12:34:23 +02:00
Dean Herbert
1ad0b31217
Add required pieces to MultiplayerPlaylistItemStats for total score tracking 2024-07-26 19:04:04 +09:00
Bartłomiej Dach
1abcf16231
Fix daily challenge screen not applying track adjustments from mods
Closes https://github.com/ppy/osu/issues/29093.
2024-07-26 11:50:43 +02:00
Bartłomiej Dach
f9cfc7d96c
Fix preview tracks not stopping playback when suspending/exiting daily challenge screen
Closes https://github.com/ppy/osu/issues/29083.
2024-07-26 10:53:12 +02:00
Cameron Brown
17f00ec0a6 Bind the mod select overlay's Beatmap to OsuScreen.Beatmap in constructor
Suggested by @bdach!
2024-07-26 18:29:50 +10:00
Cameron Brown
a8851950bc Update the beatmap of Daily Challenge's mods overlay when beatmap is set - #29094 2024-07-26 18:10:11 +10:00
Bartłomiej Dach
174dc91f4b
Implement component for displaying running totals in daily challenge
Total pass count and cumulative total score, to be more precise.
2024-07-26 09:51:39 +02:00
Bartłomiej Dach
e489ae8f72
Merge pull request #29055 from peppy/event-feed-improvements
Improve daily challenge event feed
2024-07-26 08:37:47 +02:00
Bartłomiej Dach
662e9eab8c
Don't force exit to main menu when presenting scores from within online screens
Struck me as weird when reviewing https://github.com/ppy/osu/pull/29057.
Like sure, that PR adds the replay button, but it's a bit terrible that
clicking the button quits the daily challenge screen and you're back at
main menu when done watching...?

Also extended to cover playlists and multiplayer, which have the same
issue.
2024-07-26 08:17:39 +02:00
Bartłomiej Dach
09a1fd2cd1
Merge pull request #29057 from frenzibyte/daily-challenge-replay-download-button
Fix daily challenge not showing a replay button in results screen
2024-07-26 08:03:17 +02:00
Bartłomiej Dach
c17cabd981
Adjust alpha for rows for better visibility 2024-07-26 07:44:02 +02:00
Salman Ahmed
c558dfdf13 Reset download state when score is changed 2024-07-26 05:11:54 +03:00
Dean Herbert
c90e04092a
Merge pull request #29068 from bdach/results-statistics-toggle-crash
Fix crash when toggling extended statistics visibility during results load
2024-07-25 22:49:41 +09:00
Dean Herbert
6cc3e8aab8
Merge pull request #29067 from bdach/report-daily-challenge
Fix not being able to send chat reports on daily challenge screen
2024-07-25 22:33:41 +09:00
Bartłomiej Dach
3bb30d7ff9
Fix several missing properties on MultiplayerScore
You wouldn't think this would be an actual thing that can happen to us,
but it is. The most important one by far is `MaximumStatistics`; that
is the root cause behind why stuff like spinner ticks or slider tails
wasn't showing.

On a better day we should probably do cleanup to unify these models
better, but today is not that day.
2024-07-25 13:15:45 +02:00
Bartłomiej Dach
8dbd4d70ff
Fix crash when toggling extended statistics visibility during results load
Closes https://github.com/ppy/osu/issues/29066.

Initially I fixed this at where the assert is right now:

	9790c5a574/osu.Game/Screens/Ranking/ResultsScreen.cs (L333)

but because of the weird way that visible state management is done in
this screen that made it possible for the extended statistics to be
visible *behind* the score panels, without the score panels making way
for it. So this is in a way safer, because it prevents the visibility
state of the extended statistics from changing in the first place if
there is no score selected (yet).

This can be also seen in playlists, at least.
2024-07-25 11:45:17 +02:00
Bartłomiej Dach
8d89557ab8
Fix not being able to send chat reports on daily challenge screen
Something something some people cannot be trusted with a textbox.
2024-07-25 11:11:54 +02:00
Salman Ahmed
9d5fbb8b4f Fix target score selection abruptly discarded after opening results screen 2024-07-25 09:01:43 +03:00
Dean Herbert
f1dda4ab1e
Fix too many event rows displaying after spending a long time in gameplay/results 2024-07-25 14:31:22 +09:00
Dean Herbert
c90d345ff9
Scroll content forever rather than aggressively fading 2024-07-25 14:31:21 +09:00
Salman Ahmed
dad8e28446 Fix replay download button not added when no score is selected initially 2024-07-25 07:40:17 +03:00
Dean Herbert
aac98ab6b2
Debounce leaderboard refetches to stop excessive operations after returning from gameplay 2024-07-25 12:58:35 +09:00
Dean Herbert
9ec687caab
Avoid reloading the daily challenge leaderboard when already requested 2024-07-25 12:55:45 +09:00
Salman Ahmed
6645dac71d Fix dragging number boxes overwritten by select-all-on-focus feature 2024-07-24 23:19:04 +03:00
Dean Herbert
4983e5f33e
Merge pull request #29039 from bdach/multiple-selection-sample-popover
Make sample popover change properties of all samples in multiple selection
2024-07-24 22:49:20 +09:00
Bartłomiej Dach
1ed7e4b075
Make sample popover change properties of all samples in multiple selection
Closes https://github.com/ppy/osu/issues/28916.

The previous behaviour *may* have been intended, but it was honestly
quite baffling. This seems like a saner variant.
2024-07-24 12:15:12 +02:00
Dean Herbert
6e4625609d
Merge pull request #29036 from bdach/hardcode-positions-for-leaderboard
Fill daily challenge top 50 position numbers client-side
2024-07-24 17:49:51 +09:00
Bartłomiej Dach
788b70469d
Exit daily challenge screen when going offline
This sort of thing is bound to happen when rewriting screens from
scratch without invoking abstract eldritch entities sometimes. Damned if
you do, damned if you don't...
2024-07-24 09:15:32 +02:00
Bartłomiej Dach
bf4bf4d39e
Fill daily challenge top 50 position numbers client-side
Only doing this client-side, because doing this server-side is
expensive:

	https://github.com/ppy/osu-web/pull/11354#discussion_r1689224285
2024-07-24 08:57:11 +02:00
Dean Herbert
aded31bd07
Merge pull request #29021 from bdach/editor-breaks-respect-time-preempt
Respect pre-empt time when auto-generating breaks
2024-07-24 15:21:12 +09:00
Dean Herbert
aed7ba9508
Change order of application to avoid bias to side with more room to drag
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-07-23 20:56:21 +09:00
Bartłomiej Dach
c3062f96ee
Fix autogenerated breaks not invalidating on change to pre-empt time 2024-07-23 13:38:50 +02:00
Bartłomiej Dach
088e8ad0a2
Respect pre-empt time when auto-generating breaks
Closes https://github.com/ppy/osu/issues/28703.
2024-07-23 13:30:13 +02:00
Dean Herbert
cc4ed0ff3f
Use non-screen-space coordinates and add time-based drag ramping for better control 2024-07-23 18:59:22 +09:00
Bartłomiej Dach
38fc6f70f6
Add tolerance when drag-scrolling editor timeline
Closes https://github.com/ppy/osu/issues/28983.

While the direct cause of this is most likely mouse confine in
full-screen, it shouldn't/can't really be disabled just for this,
and I also get this on linux in *windowed* mode.

In checking other apps, adding some tolerance to this sort of
drag-scroll behaviour seems like a sane UX improvement anyways.
2024-07-23 11:10:18 +02:00
Bartłomiej Dach
57fa502786
Fix editor UI dimming when hovering over expanded part of toolboxes
Closes https://github.com/ppy/osu/issues/28969.
2024-07-22 11:57:46 +02:00
Bartłomiej Dach
dd8be62d07
Merge pull request #28849 from frenzibyte/custom-profile-colour
Add custom hue support to user profile overlay
2024-07-22 09:41:32 +02:00
Bartłomiej Dach
088b8aff11
Merge pull request #28881 from smoogipoo/fix-judgement-cut
Fix judgement animation getting cut early
2024-07-22 09:24:57 +02:00
Dean Herbert
401c0fe2bf
Merge branch 'master' into fix-pause-input-handling 2024-07-20 15:23:34 +09:00
Dean Herbert
d914b990f3
Update framework 2024-07-20 14:08:00 +09:00
Salman Ahmed
818b60a3d8 Fix pause overlay hiding input from ruleset input manager
If a key is pressed while the pause overlay is visible, the ruleset input manager will not see it, therefore if the user resumes while the key is held then releases the key, the ruleset input manager will not receive the key up event.
2024-07-19 18:48:35 +03:00
Salman Ahmed
d7651ef387 Add extensive test cases for correct input handling while paused in osu! & non-osu! 2024-07-19 18:48:35 +03:00
Bartłomiej Dach
27000aa8ed
Merge branch 'master' into editor-blah 2024-07-19 13:42:40 +02:00
Dan Balasescu
ad564f31cb
Merge pull request #28947 from peppy/fix-playlist-item-panel
Fix various visuals of playlist beatmap panels
2024-07-19 20:12:40 +09:00
Dean Herbert
c2cc85e6f0
Use purple again for kiai time specifically 2024-07-19 19:59:38 +09:00
Dean Herbert
c4de2bbb60
Ignore "too many ticks" in timeline (triggers in normal cases) 2024-07-19 19:57:47 +09:00
Dean Herbert
5ee645ac8f
Increase opacity of control points slightly 2024-07-19 19:50:21 +09:00
Dean Herbert
d9297438ba
Merge pull request #28900 from smoogipoo/fix-more-tests
Fix more test failures
2024-07-19 19:38:52 +09:00
Dean Herbert
f11f01f9b7
Fix various visuals of playlist beatmap panels
Supersedes https://github.com/ppy/osu/pull/28907.

- Fix border being fat
- Fix thumbnail not masking correctly
- Fix background layer not being correctly fit to the panel
- Dim the main background on hover
- Minor tweaks to dimming
2024-07-19 19:26:04 +09:00
Dan Balasescu
5af39aad00
Add beatmap name to log string
Makes it easy to compare this line versus the one in
OsuGame.PresentBeatmap(). At the moment it's just GUID which is... not
useful!
2024-07-19 19:02:41 +09:00
Dean Herbert
0f29ed618a
Don't attempt to clear the carousel during realm blocking operation 2024-07-19 17:39:47 +09:00
Dean Herbert
0560214d5b
Fix beatmap carousel performance regression with large databases 2024-07-19 17:39:47 +09:00
Dean Herbert
fb5a1ecb4e
Merge pull request #28944 from bdach/mania-crash
Fix crash when adding mania notes right after changing timing point
2024-07-19 16:58:54 +09:00
Bartłomiej Dach
4dd225fdc8
Fix compose blueprint container not unsubscribing from event
Closes https://github.com/ppy/osu/issues/28938.

This is related to reloading the composer on timing point changes in
scrolling rulesets. The lack of unsubscription from this would cause
blueprints to be created for disposed composers via the
`hitObjectAdded()` flow.

The following line looks as if a sync load should be forced on a newly
created placement blueprint:

    da4d37c4ad/osu.Game/Screens/Edit/Compose/Components/ComposeBlueprintContainer.cs (L364)

however, it is not the case if the parent
(`placementBlueprintContainer`) is disposed, which it would be in this
case. Therefore, the blueprint stays `NotLoaded` rather than `Ready`,
therefore it never receives its DI dependencies, therefore it dies on
an `EditorBeatmap` nullref.
2024-07-19 08:32:36 +02:00
Dan Balasescu
30b5825549
Merge pull request #28942 from bdach/aaaaaaaaaaaaaaaaaaaaaaaa
Fix skipping to next track not working
2024-07-19 15:23:24 +09:00
Bartłomiej Dach
9fe6354afc
Fix backwards conditional 2024-07-19 07:32:36 +02:00
Bartłomiej Dach
a06bcd74c7
Merge branch 'master' into fix-beatmap-atttributes-display 2024-07-19 07:04:01 +02:00
Salman Ahmed
2ad8eeb918 Fix beatmap attributes display in mod select recreating star difficulty bindable every setting change 2024-07-19 03:25:26 +03:00
Salman Ahmed
a570949459 Fix selection box initialy visible despite no items selected 2024-07-19 03:00:44 +03:00
Dan Balasescu
a7e110f669
Don't rely on single-use properties 2024-07-18 19:07:02 +09:00
Dean Herbert
70985d3b22
Remove margin completely 2024-07-18 19:01:52 +09:00
Dean Herbert
c9517aeebf
Fix tab extension dropdown having dead non-clickable hover area
Closes https://github.com/ppy/osu/issues/28899.
2024-07-18 18:37:07 +09:00
Salman Ahmed
5317086171 Split content recreation methods 2024-07-18 00:26:37 +03:00
Salman Ahmed
d61a72b8fb Explicitly define Hue rather than implicitly provide it by enum value 2024-07-18 00:26:24 +03:00
Salman Ahmed
4eb4d35e2f Make UpdateColours method protected 2024-07-18 00:26:24 +03:00
Salman Ahmed
102da0f98c Remove incorrect [CanBeNull] attribute 2024-07-17 23:58:38 +03:00
Dean Herbert
99c5025de8
Merge pull request #28892 from bdach/better-client-identifier
Send client-generated session GUID for identification purposes
2024-07-18 01:07:40 +09:00
Bartłomiej Dach
2a601ce961
Also send version hash header under more accepted convention of name 2024-07-17 16:21:46 +02:00