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
ac872fac9e
Implement solo statistics watcher
2022-12-22 19:59:07 +01: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
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
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
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
378486cbe0
Merge branch 'master' into argon-pro-skin
2022-12-20 19:34:56 +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
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
Bartłomiej Dach
64a45aa0e0
Merge branch 'master' into wiki-heading-id-attributes
2022-12-20 06:34:47 +01:00
Dean Herbert
4a9b58adda
Merge branch 'master' into markdown-footnote-support
2022-12-20 13:48:35 +09:00
Bartłomiej Dach
7c282d9def
Enable generic attribute support for wiki markdown containers
2022-12-19 21:32:38 +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
73a4310935
Add styling for footnote groups
2022-12-19 19:34:40 +01:00
Bartłomiej Dach
112613c2f0
Add styling for footnote links
2022-12-19 19:28:01 +01:00
Bartłomiej Dach
0dce899634
Throw on OsuClickableContainer.ClearInternal()
invocations
...
As they may cause critical failure due to getting rid of the `Content`.
2022-12-19 18:25:45 +01:00
Bartłomiej Dach
186ccc64fd
Fix welcome screen language buttons not working
2022-12-19 18:19:26 +01:00
Dean Herbert
ecac6299c6
Update framework
2022-12-19 22:01:20 +09:00
Dean Herbert
4a7d7c6ed9
Use MaxBy
in all locations that can and update inspection level to match dotnet-build
2022-12-19 16:47:10 +09:00
Dean Herbert
8a01a22612
Fix two null refrences in OsuGame
2022-12-19 16:47:10 +09:00
Dean Herbert
877413524f
Cherry-picked android changes from #17462
2022-12-19 15:46:54 +09:00
Dean Herbert
b64a5cbda6
Merge branch 'master' into guard-url-protocols
2022-12-19 15:46:45 +09:00
Joseph Madamba
6e62033bc4
Fix some comment actions not being lowercased
2022-12-18 20:20:15 -08:00
Bartłomiej Dach
fea0895f16
Call spectator EndPlaying()
immediately after score submission
...
As it turns out, in current `master`, if a gameplay session ends
normally (i.e. by the player completing the beatmap in full), then
the spectator server `EndPlaying()` method will not be called until
`SubmittingPlayer.OnExiting()`, which in practice turns out to be
the moment where the user exits from the post-gameplay results screen
back to song select.
There is seemingly no reasonable cause for not calling this earlier. In
fact the solo spectator flow looks more broken without this call than
with, because without it the spectator view just hangs until the
spectated player exits gameplay, and *only then* shows results, rather
than do it upon normal gameplay completion.
2022-12-17 21:35:43 +01:00
Joseph Madamba
813c351607
Fix breadcrumb tab item click area not extending to background height
2022-12-16 21:44:10 -08:00
Dean Herbert
192536643c
Fix some more inspections
2022-12-16 20:21:19 +09:00
Dean Herbert
dd9a418549
Fix assembly location lookups
2022-12-16 19:19:59 +09:00
Dean Herbert
de079e08dc
Fix incorrect ConfigureAwait
call in ImportAsUpdate
2022-12-16 18:54:56 +09:00
Dean Herbert
ba54551313
Merge branch 'master' into guard-url-protocols
2022-12-16 18:23:16 +09:00
Dean Herbert
27c497145f
Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0
2022-12-16 18:16:26 +09:00
Jamie Taylor
d5b2c7dfe9
Clamp SFX panning on results screen
2022-12-16 17:19:07 +09:00
Dean Herbert
d6cae991da
Update netstandard2.1
references to net6.0
2022-12-16 17:16:13 +09:00
Dean Herbert
e63b544167
Update framework
2022-12-16 17:02:51 +09:00
Dean Herbert
ce408eaac0
Merge branch 'net6-ios' into guard-url-protocols
2022-12-16 17:02:32 +09:00
Dan Balasescu
cbee72897a
Merge pull request #21654 from Susko3/use-localisable-strings-for-dates-and-times
...
Use `LocalisableString`s for date and time formats
2022-12-16 16:17:14 +09:00
Dean Herbert
232f590ba3
Merge pull request #21628 from peppy/go-hard-file-writes
...
Use hard links on windows when importing beatmaps from a legacy osu! install
2022-12-16 14:52:57 +09:00
Susko3
0f34d908c7
Use LocalisableString
s for date and time formats
2022-12-16 00:05:47 +01:00
Salman Ahmed
5fbd4ad3b4
Update usages of SupportsJIT
in line with framework changes
2022-12-16 00:22:11 +03:00
Salman Ahmed
660cc72f2a
Avoid configuring web proxies on iOS for now
2022-12-16 00:22:11 +03:00
Dean Herbert
9813bc9544
Reword disclaimer and fix translation keys
2022-12-15 22:46:31 +09:00
Dean Herbert
91adf2e80f
Apply the wala-hyphen
...
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2022-12-15 22:44:47 +09:00
Dean Herbert
d2b98b803d
Turn on featured artist filter by default and add disclaimer when toggling for the first time
2022-12-15 18:42:47 +09:00
Dean Herbert
0763b86236
Add more padding around text in dialog popups
2022-12-15 17:32:27 +09:00
Dean Herbert
78bc94d3cb
Set featured artists filter to enabled by default
2022-12-15 16:57:39 +09:00
Dean Herbert
a7f3e13946
Fix MultipleSelectionFilter
not correctly handling initial selection
2022-12-15 16:56:09 +09:00
Dean Herbert
6bf1477939
Fix some hard links not being created due to missing directory structure
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-12-15 14:17:28 +09:00
Dan Balasescu
fb85eaee95
Add description for lazer score version 30000001
2022-12-14 18:30:33 +09:00
Dean Herbert
50dc76d579
Merge pull request #21618 from smoogipoo/multi-spec-only-local-results
...
Only show local results in multi-spectator results screen
2022-12-14 14:00:02 +09:00
Dean Herbert
a3c3112f89
Add SetLastError
hint to CreateHardLink
pinvoke method
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-12-14 11:34:06 +09:00
Dean Herbert
f4316a9827
Fix incorrect grammar in hard link explanation text
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-12-14 11:30:01 +09:00
Bartłomiej Dach
849245b90c
Merge branch 'master' into beginplaying-score-token
2022-12-13 17:15:24 +01:00
Bartłomiej Dach
dfb8f4fdd9
Merge branch 'master' into buttons-fix
2022-12-13 16:35:03 +01:00
Dean Herbert
3d65984a89
Update framework
2022-12-13 22:34:01 +09:00
Dean Herbert
bf56f5f8c0
Show error message on attempting to open a URL with an unsupported protocol
2022-12-13 22:33:56 +09:00
Dean Herbert
efe057176e
Make OsuButton
abstract
2022-12-13 22:13:48 +09:00
Dean Herbert
edc78205d5
Add comments about why both positional input checks are required in OsuClickableContainer
2022-12-13 22:12:52 +09:00
Dean Herbert
b8904fe747
Move ImportParameters
to better home
2022-12-13 21:41:26 +09:00
Dean Herbert
cb16d62700
Hook up ImportParameter
flow with IModelImporter
caller methods
2022-12-13 21:29:32 +09:00
Dean Herbert
6bb612ce69
Move hard link availability check to helper class
2022-12-13 20:20:42 +09:00
Dean Herbert
bbf931c746
Move hard link helper functions to their own class
2022-12-13 19:55:18 +09:00
Dean Herbert
1d4230993d
Hook up parameter with RealmFileStore
to complete the chain
2022-12-13 19:55:18 +09:00
Dean Herbert
cf2719d4c0
Convert batchImport
parameter to parameters class to allow further import configuration
2022-12-13 19:55:18 +09:00
Dan Balasescu
ad7554cc7d
Allow keeping stream open after encoding scores
2022-12-13 16:15:14 +09:00
Andrei Zavatski
15bd82add8
Fix DrawableUsername being affected
2022-12-12 18:24:49 +03:00
Andrei Zavatski
890dd9cd06
Fix input doesn't take original drawable modifications into account
2022-12-12 15:10:03 +03:00
Andrei Zavatski
b0d475cd8b
CI fix
2022-12-12 14:57:07 +03:00
Andrei Zavatski
d2b3533356
Fix OsuClickableContainer input receiving
2022-12-12 14:42:54 +03:00
Andrei Zavatski
7e39f171fb
Fix OsuButton input receiving
2022-12-12 14:42:54 +03:00
Dean Herbert
5800734589
Merge pull request #21587 from smoogipoo/spectatorstate-maximum-statistics
...
Store maximum statistics to spectator state
2022-12-12 20:00:52 +09:00
Dean Herbert
df94af4495
Inline ScoringValues
and make some more methods private
inside ScoreProcessor
2022-12-12 19:22:09 +09:00
Dan Balasescu
7b48c91fe2
Only show local results in multi-spectator results screen
2022-12-12 18:56:43 +09:00
Dean Herbert
02b3bbf0d3
Merge pull request #21616 from Joehuu/changelog-build-masking
...
Fix changelog single build dates disappearing before being off screen
2022-12-12 18:28:48 +09:00
Dean Herbert
05b5949810
Use explicit casts
2022-12-12 17:38:39 +09:00
Dan Balasescu
caa0b7c290
Move score token to BeginPlaying
2022-12-12 13:59:27 +09:00
Dean Herbert
e2d8909e73
Add link to change folder location if it isn't on the same drive as import path
2022-12-12 13:44:09 +09:00
Dean Herbert
726943cb14
Add information attempting to explain hard links to the end user
2022-12-12 13:44:09 +09:00
Dean Herbert
d8de99bbe4
Check for hard link support in first run overlay
2022-12-12 13:44:09 +09:00
Dean Herbert
902dff15e3
Add todo regarding validity check
2022-12-12 13:44:09 +09:00
Dean Herbert
3b1920c060
Add code to check whether a file is a hard link
2022-12-12 13:44:09 +09:00
Dean Herbert
f27603dd6d
Use hard links instead of file copy when available
2022-12-12 13:44:09 +09:00
Dean Herbert
731184eb39
Revert "Merge pull request #21614 from EVAST9919/button-fix"
...
This reverts commit 4bd196684f
, reversing
changes made to a1d22ef77a
.
2022-12-12 13:43:01 +09:00
Joseph Madamba
e76c56b03b
Fix changelog single build dates disappearing before being off screen
2022-12-11 20:10:06 -08:00
Dan Balasescu
7a54bcac57
Remove unused using
2022-12-12 11:41:07 +09:00
Dan Balasescu
6e41efede8
Simplify dictionary construction
2022-12-12 11:40:47 +09:00
Dan Balasescu
5e8d75bbbf
Remove unused overload
2022-12-12 11:39:03 +09:00
Andrei Zavatski
1332568796
Fix SettingsButton receiving input at padded area
2022-12-12 03:10:13 +03:00