1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-25 04:12:53 +08:00
Commit Graph

57806 Commits

Author SHA1 Message Date
Bartłomiej Dach
d31b649ed7
Merge pull request #21763 from turbedi/argumentnullexception_throwhelper
Use new ArgumentNullException.ThrowIfNull throw-helper API
2022-12-22 23:02:34 +01:00
Salman Ahmed
0cb9b79834 Fix ZoomableScrollContainer potentially not updating content width on setup 2022-12-23 00:56:38 +03:00
Salman Ahmed
a665013626 Add failing test case 2022-12-23 00:56:38 +03:00
Berkan Diler
08d2fbeb8e Use new ArgumentNullException.ThrowIfNull throw-helper API 2022-12-22 21:27:59 +01:00
Bartłomiej Dach
27afeb9e30
Add test coverage of merging ignored score updates 2022-12-22 19:59:41 +01:00
Bartłomiej Dach
fa2d50fe31
Limit tracking unhandled scores to just the last one 2022-12-22 19:59:39 +01:00
Bartłomiej Dach
48dc2332fd
Refactor test to be easier to work with 2022-12-22 19:59:35 +01:00
Bartłomiej Dach
722cf48614
Add test coverage for statistics watcher 2022-12-22 19:59:10 +01:00
Bartłomiej Dach
ac872fac9e
Implement solo statistics watcher 2022-12-22 19:59:07 +01:00
Salman Ahmed
867a1963be
Merge pull request #21760 from Flutterish/disable-custom-target-log-notifications
Don't post notifications from custom log targets
2022-12-22 20:46:15 +03:00
Salman Ahmed
8be6350c01 Remove no longer necessary assert 2022-12-22 20:07:53 +03:00
Flutterish
5df440e20e dont use is..or syntax 2022-12-22 17:27:55 +01:00
Flutterish
422fdd8ae5 dont post notifications from custom log targets 2022-12-22 16:56:27 +01:00
Salman Ahmed
15a162a943
Merge pull request #21737 from bdach/restore-default-button-hit-area
Fix restore default button having a minuscule hit area
2022-12-22 14:08:46 +03:00
Salman Ahmed
28fc2f34b5
Merge branch 'master' into restore-default-button-hit-area 2022-12-22 13:32:57 +03:00
Bartłomiej Dach
f5b3988dd2
Add data structure for delivering statistics updates 2022-12-22 08:01:59 +01:00
Dean Herbert
11321f1a41
Merge pull request #21738 from bdach/spectator-user-score-processed
Add score processed callback to spectator client
2022-12-22 13:55:43 +08:00
Dan Balasescu
198567aa95
Merge pull request #21753 from bdach/submission-early-exit-ordering-guarantees
Ensure score submission completion before notifying spectator server when exiting play early
2022-12-22 14:48:43 +09:00
Dan Balasescu
36b6163475
Merge pull request #21751 from bdach/fix-mania-hold-note-crash
Fix crashes on quick-retrying when holding note in mania
2022-12-22 14:25:43 +09:00
Bartłomiej Dach
6948035a3c
Ensure score submission attempt completion before notifying spectator server when exiting play early
When a `SubmittingPlayer` gameplay session ends with the successful
completion of a beatmap, `PrepareScoreForResultsAsync()` ensures that
the score submission request is sent to and responded to by osu-web
before calling `ISpectatorClient.EndPlaying()`.

While previously this was mostly an implementation detail, this becomes
important when considering that more and more server-side flows (replay
upload, notifying about score processing completion) hook into
`EndPlaying()`, and assume that by the point that message arrives at
osu-spectator-server, the score has already been submitted and has been
assigned a score ID that corresponds to the score submission token.

As it turns out, in the early-exit path (when the user exits the play
midway through, retries, or just fails), the same ordering guarantees
were not provided. The score's submission ran concurrently to the
spectator client `EndPlaying()` call, therefore creating a network
race. osu-server-spectator components that implciitly relied on the
ordering provided by the happy path, could therefore fail to unmap the
score submission token to a score ID.

Note that as written, the osu-server-spectator replay upload flow is
not really affected by this, as it self-corrects by essentially polling
the database and trying to unmap the score submission token to a score
ID for up to 30 seconds. However, this change would have the benefit of
reducing the polls required in such cases to just one DB retrieval.
2022-12-21 22:23:26 +01:00
Bartłomiej Dach
0a49c8c5d6
Add missing unsubscriptions in multiple mania components 2022-12-21 20:22:40 +01:00
Joseph Madamba
b09c00d71b
Merge pull request #21746 from peppy/fix-language-update
Closes https://github.com/ppy/osu/issues/21744
2022-12-21 11:06:52 -08:00
Bartłomiej Dach
3ec31a5f51
Fix language selector in first run dialog not updating after changing language in settings 2022-12-21 19:30:21 +01:00
Dean Herbert
19f66c806e Fix language dropdown in settings not updating after changing language in first run dialog
Closes #21744.
2022-12-21 16:31:55 +08:00
Bartłomiej Dach
b03291330f
Add score processed callback to spectator client 2022-12-20 21:23:50 +01:00
Bartłomiej Dach
cebd5f6dc2
Fix restore default button having a minuscule hit area
Another casualty of edc78205d5. This
particular button was actually *relying* on receiving positional events
from its entire bounding box rather than `Content`, in order for the
button to be htitable more easily, which broke as other buttons were
fixed to behave more in line with expectations.

Upon closer inspection this is another case of a weird carried-over
construction. The button doesn't really need to inherit `OsuButton` or
do any of the arcane stuff that it was doing, so it's now a plain
`OsuClickableContainer` with less `Content` hackery.
2022-12-20 20:47:58 +01:00
Bartłomiej Dach
d81a724dd7
Merge pull request #21735 from nekodex/argon-pro-skin
Add argon "pro" skin
2022-12-20 20:25:22 +01:00
Bartłomiej Dach
378486cbe0
Merge branch 'master' into argon-pro-skin 2022-12-20 19:34:56 +01:00
Bartłomiej Dach
006ed6dae4
Merge pull request #21730 from peppy/ui-scale-only-show-one-screen
Only show song select for now at ui scale adjust first run screen
2022-12-20 19:12:01 +01:00
Bartłomiej Dach
bf074adb13
Remove unused using directive 2022-12-20 18:24:26 +01:00
Bartłomiej Dach
8ead606065
Merge branch 'master' into ui-scale-only-show-one-screen 2022-12-20 18:23:37 +01:00
Bartłomiej Dach
a0e9004655
Merge pull request #21731 from peppy/fix-stuck-file-select-overlay
Fix file select popup getting stuck when switching first run screens while selecting
2022-12-20 18:17:28 +01:00
Dean Herbert
2c402d4740 Update resources 2022-12-21 01:24:41 +09:00
Jamie Taylor
f7c854f1b0
Change asset folder 2022-12-20 21:18:51 +09:00
Dean Herbert
2f0c772dcb
Add argon pro skin 2022-12-20 21:18:51 +09:00
wiskerz76
439b8ac56a Fix file select popup getting stuck when switching first run screens while selecting
Closes #21663
Supersedes #21724
2022-12-20 17:59:23 +09:00
Dean Herbert
c119d41a2d Only show song select for now at ui scale adjust first run screen
Having both was a bit too much. Still not happy with this but it's a bit
less sensory overload.

I think while it's cool being able to show nested screens like this, it
needs more thought to actually be a good experience.
2022-12-20 17:52:56 +09:00
Dean Herbert
ca8d2bec9d
Merge pull request #21723 from bdach/wiki-heading-id-attributes
Add support for block attributes in wiki overlay
2022-12-20 15:16:08 +09:00
Bartłomiej Dach
64a45aa0e0
Merge branch 'master' into wiki-heading-id-attributes 2022-12-20 06:34:47 +01:00
Dean Herbert
66364afe04
Merge pull request #21722 from bdach/markdown-footnote-support
Add Markdown footnote support to wiki overlay
2022-12-20 14:21:03 +09:00
Dean Herbert
4a9b58adda
Merge branch 'master' into markdown-footnote-support 2022-12-20 13:48:35 +09:00
Dean Herbert
f117f76b2f
Merge pull request #21718 from bdach/fix-welcome-screen-buttons
Fix welcome screen language buttons not working
2022-12-20 13:16:19 +09:00
Dean Herbert
2ed1a95975
Merge pull request #21716 from Susko3/remove-Linker.xml 2022-12-20 10:20:35 +09:00
Bartłomiej Dach
30b9f5d92e
Add test coverage for correct operation of flag extension 2022-12-19 21:32:41 +01:00
Bartłomiej Dach
7c282d9def
Enable generic attribute support for wiki markdown containers 2022-12-19 21:32:38 +01:00
Bartłomiej Dach
12aa2e96db
Add test case covering failure 2022-12-19 21:29:10 +01:00
Bartłomiej Dach
db1380a346
Refactor markdown extension management 2022-12-19 20:19:51 +01:00
Bartłomiej Dach
a88812861e
Implement bidirectional footnote link navigation 2022-12-19 19:34:47 +01:00
Bartłomiej Dach
5fb2a83f12
Add failing test case for footnote link navigation 2022-12-19 19:34:45 +01:00
Bartłomiej Dach
3c1a46605e
Set up test for two-way navigation testing 2022-12-19 19:34:42 +01:00