Commit Graph

36660 Commits

Author SHA1 Message Date
2d57ea6f15 Merge branch 'master' into link-title-and-artist 2022-12-26 03:23:05 +03:00
f959b02dc8 Use empty drawables for spacing badges instead 2022-12-25 16:05:59 -08:00
8e899c2e92 Use localisation parameters to find preferred string instead 2022-12-25 16:03:44 -08:00
b871d6f078 Remove unused fields 2022-12-24 13:35:17 -08:00
ae967e08b0 Add badges when needed instead of using alpha 2022-12-24 13:27:46 -08:00
4f6b3644f3 Fix title/artist overflowing to right side 2022-12-24 12:40:32 -08:00
df645ef3cb Change title/artist idle colour to white 2022-12-24 11:42:05 -08:00
9d073f4228 Link beatmap set title and artist to listing search 2022-12-24 11:26:09 -08:00
cf0b3ec879 Merge branch 'master' into score-stats-display 2022-12-24 14:32:08 +01:00
209d44746a Merge pull request #21762 from bdach/score-stats-updates
Add solo statistics watcher component to deliver incremental global user statistics updates
2022-12-24 21:30:34 +08:00
e961af20cc Merge branch 'score-stats-updates' into score-stats-display 2022-12-24 13:56:10 +01:00
78c47a3695 Add callback to dictionary rather than overwrite
Attempting to overwrite will henceforth throw an exception.
2022-12-24 13:45:04 +01:00
6c4ca387e0 Fix wrong handling of missing ruleset statistics 2022-12-24 13:44:11 +01:00
3c26016b61 Ensure latest stats are cleared on successful profile fetch 2022-12-24 13:44:08 +01:00
fd9110a61e Fix solo statistics watcher firing requests for invalid user with id 1
Can happen during login flow (see `APIAccess.attemptConnect()`).
2022-12-24 13:44:05 +01:00
d6e079a2b4 Ignore statistics update requests from third-party rulesets for now 2022-12-24 13:43:57 +01:00
83a50816b6 Remove unused constructor param 2022-12-24 10:44:38 +01:00
4bcc2b832c Merge branch 'master' into add-help-button 2022-12-24 10:40:35 +01:00
301eb71e22 Fix wrong member names 2022-12-24 10:39:05 +01:00
2c060ac8d4 Add localisation support for new button's strings 2022-12-24 17:32:04 +08:00
4e5109a649 Use plain bindable flow instead of binding to watcher directly 2022-12-24 10:27:28 +01:00
75ddeaeeb8 Merge branch 'master' into argon-pro-skin-hide-highest-judgement 2022-12-24 09:41:18 +01:00
80de5dac66 Fix judgement text never being added to hierarchy 2022-12-24 09:37:40 +01:00
f973befcd4 Remove unused resolved member 2022-12-24 09:34:30 +01:00
91bde14fb3 Add button to settings to show lazer upgrade guide 2022-12-24 15:42:24 +08:00
5e9fb1063a Move judgement text creation to base class and tidy things up 2022-12-24 12:22:36 +08:00
c7f248e13c Implement overall ranking display for solo results screen 2022-12-24 00:30:38 +01:00
3e782c5f5f Extract interface for solo statistics watcher 2022-12-23 23:46:41 +01:00
727ac00f6d Combine base class for JudgementPiece 2022-12-24 03:32:13 +08:00
94d78a47a4 Merge branch 'master' into upgrade-guide-help 2022-12-23 17:22:04 +01:00
9a2cc04361 Fix wrong path being used in fail handler 2022-12-23 16:44:03 +01:00
67aea34e7e Merge branch 'master' into fix-breadcrumb-tab-item-click-area 2022-12-23 16:36:58 +01:00
a677c8be06 Change path on error 2022-12-23 21:17:42 +08:00
5eccafe190 Fix wiki overlay showing error message when load is cancelled 2022-12-23 16:45:40 +08:00
676d4a0d6d Merge branch 'master' into fix-waveform-zoom-reload 2022-12-22 23:48:50 +01:00
0cb9b79834 Fix ZoomableScrollContainer potentially not updating content width on setup 2022-12-23 00:56:38 +03:00
08d2fbeb8e Use new ArgumentNullException.ThrowIfNull throw-helper API 2022-12-22 21:27:59 +01:00
fa2d50fe31 Limit tracking unhandled scores to just the last one 2022-12-22 19:59:39 +01:00
48dc2332fd Refactor test to be easier to work with 2022-12-22 19:59:35 +01:00
ac872fac9e Implement solo statistics watcher 2022-12-22 19:59:07 +01:00
8be6350c01 Remove no longer necessary assert 2022-12-22 20:07:53 +03:00
5df440e20e dont use is..or syntax 2022-12-22 17:27:55 +01:00
422fdd8ae5 dont post notifications from custom log targets 2022-12-22 16:56:27 +01:00
28fc2f34b5 Merge branch 'master' into restore-default-button-hit-area 2022-12-22 13:32:57 +03:00
f5b3988dd2 Add data structure for delivering statistics updates 2022-12-22 08:01:59 +01:00
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
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
3ec31a5f51 Fix language selector in first run dialog not updating after changing language in settings 2022-12-21 19:30:21 +01:00
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
b03291330f Add score processed callback to spectator client 2022-12-20 21:23:50 +01:00