cdwcgt
8beb168be9
remove nullable disabled
2022-12-30 23:24:20 +09:00
cdwcgt
784fe7ecf2
rename AccType
to AccuracyDisplay
2022-12-30 23:06:10 +09:00
cdwcgt
23c485c763
readonly
2022-12-30 22:59:56 +09:00
cdwcgt
a91da2284d
safe way to pass bindable
2022-12-30 22:58:46 +09:00
cdwcgt
3c32a50c12
add new accuracy counter display
2022-12-30 21:19:46 +09:00
Bartłomiej Dach
3c0b8af8f1
Allow unsubscribing from solo statistics updates
...
This is more of a safety item. To avoid potential duplicate key in
dictionary errors (and also avoid being slightly memory-leaky), allow
`SoloStatisticsWatcher` consumers to dispose of the subscriptions they
take out.
2022-12-28 08:07:48 +01:00
Bartłomiej Dach
04f9a354c3
Convert SoloResultsScreen
to NRT
2022-12-28 07:54:36 +01:00
Bartłomiej Dach
e90619244d
Fix incorrect accuracy display on overall ranking view
2022-12-27 19:51:51 +01:00
Dean Herbert
df6f2ad0a1
Merge pull request #21804 from bdach/hide-global-rankings-when-presenting-scores
...
Only show global rankings on solo results screen when progressing from gameplay
2022-12-27 16:39:26 +08:00
Bartłomiej Dach
01cf96e240
Only show global rankings on results screen when progressing from gameplay
2022-12-26 23:35:45 +01:00
Berkan Diler
c7ca4bbba5
Use generic Enum methods
2022-12-26 20:36:39 +01:00
Joseph Madamba
0dba25e0ab
Refactor to just exit sub screens until lounge sub screen
...
Co-Authored-By: Salman Ahmed <frenzibyte@gmail.com>
2022-12-25 21:56:22 -08:00
Joseph Madamba
5232588a1f
Use PerformFromScreen
to exit sub screens instead
2022-12-24 20:04:45 -08:00
Joseph Madamba
00ed5d6f92
Merge remote-tracking branch 'upstream/master' into fix-op-non-current-onexiting
2022-12-24 14:01:11 -08:00
Bartłomiej Dach
36a6f3685e
Don't show global rankings display when not logged in
2022-12-24 14:35:11 +01:00
Bartłomiej Dach
da519acb20
Add overall ranking display to solo results
2022-12-24 14:35:04 +01:00
Bartłomiej Dach
3abdf557ea
Add protected method for customising statistics panel rows
2022-12-24 14:35:00 +01:00
Bartłomiej Dach
600ada46be
Add protected method for customising statistics panel
2022-12-24 14:34:54 +01:00
Bartłomiej Dach
cf0b3ec879
Merge branch 'master' into score-stats-display
2022-12-24 14:32:08 +01:00
Bartłomiej Dach
83a50816b6
Remove unused constructor param
2022-12-24 10:44:38 +01:00
Bartłomiej Dach
4e5109a649
Use plain bindable flow instead of binding to watcher directly
2022-12-24 10:27:28 +01:00
Bartłomiej Dach
c7f248e13c
Implement overall ranking display for solo results screen
2022-12-24 00:30:38 +01:00
Joseph Madamba
494886ef92
Rename Text
to Metadata
2022-12-23 11:11:15 -08:00
ansel
f25439e359
Move track change subscription to LoadComplete
2022-12-23 01:54:49 +03:00
Bartłomiej Dach
676d4a0d6d
Merge branch 'master' into fix-waveform-zoom-reload
2022-12-22 23:48:50 +01:00
Salman Ahmed
0cb9b79834
Fix ZoomableScrollContainer
potentially not updating content width on setup
2022-12-23 00:56:38 +03:00
Salman Ahmed
30de9ba795
Dispose previous waveform on track reload
2022-12-23 00:35:59 +03:00
Berkan Diler
08d2fbeb8e
Use new ArgumentNullException.ThrowIfNull throw-helper API
2022-12-22 21:27:59 +01:00
ansel
20370bd5ae
Invalidate waveform on track load
2022-12-22 20:49:09 +03:00
ansel
d0645ce151
Rewrite waveform invalidation
2022-12-22 15:59:51 +03:00
ansel
f2e8776529
Bind to clock instead of music controller
2022-12-22 15:35:53 +03:00
ansel
a18ece8610
Listen for track reload in timing screen
2022-12-22 01:24:23 +03:00
ansel
7089bb6c23
Listen for track reload in timeline
2022-12-22 01:23:59 +03:00
ansel
66a02374da
Clear cached waveform on track change in editor
2022-12-22 01:23:24 +03: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
Joseph Madamba
1d39e8d0ce
Refactor MetadataSection
to use generics and inheritance
2022-12-21 10:18:47 -08: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
b64a5cbda6
Merge branch 'master' into guard-url-protocols
2022-12-19 15:46:45 +09: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
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
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
cdwcgt
a4d28aff6d
fix typo
2022-12-16 10:48:56 +09:00
cdwcgt
79e27c2d9d
PreviewTimePart
will not show if preview time is -1
2022-12-16 10:44:07 +09:00
cdwcgt
f0246df1a9
only get;
2022-12-16 09:58:58 +09:00
Susko3
0f34d908c7
Use LocalisableString
s for date and time formats
2022-12-16 00:05:47 +01:00
cdwcgt
c164744064
Add ability to set preview time
2022-12-16 01:03:30 +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
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
Dan Balasescu
7b48c91fe2
Only show local results in multi-spectator results screen
2022-12-12 18:56:43 +09:00
Dan Balasescu
caa0b7c290
Move score token to BeginPlaying
2022-12-12 13:59:27 +09:00
Dan Balasescu
4a65f5c864
Add score token to spectator state
2022-12-09 19:09:51 +09:00
Loreos7
0aeee8d6ab
fix typo in today's tip
2022-12-07 17:47:37 +03:00
Dean Herbert
eea7984ba9
Remove triangle effect from latency certifier buttons
2022-12-07 14:53:56 +09:00
mk56-spn
fc630165fd
Adjust formatting of BPM text
2022-12-06 15:08:21 +01:00
Dan Balasescu
9ddc2f4804
Merge pull request #21523 from Feodor0090/rewind-click-fix
...
Perform rewind with right click only if cursor didn't leave the button
2022-12-06 13:38:20 +09:00
ansel
b66409bd37
Perform rewind with right click only if cursor didn't leave the button
2022-12-05 23:38:45 +03:00
mk56-spn
f69c084969
Add roll duration
2022-12-05 17:08:00 +01:00
mk56-spn
b6a6db1160
Add dynamic BPM counter to SkinEditor
2022-12-05 12:29:23 +01:00
Andrei Zavatski
41f7dad8e9
Delete SmoothCircularProgress.cs
2022-12-03 16:40:41 +03:00
Andrei Zavatski
97b6d88f00
Remove SmoothCircularProgress usage in AccuracyCircle
2022-12-03 16:39:44 +03:00
Dean Herbert
5a69656764
Merge pull request #21496 from peppy/fix-zero-length-spinners
...
Fix being able to place zero-length spinners
2022-12-02 19:25:00 +09:00
Dan Balasescu
850931120d
Merge pull request #21479 from peppy/fix-wrong-last-hit-object-time
...
Fix some components not accounting for final hold notes in osu!mania beatmaps
2022-12-02 18:12:00 +09:00
Dean Herbert
d1296a22ce
Update timeline blueprint's end time logic to better match new blueprint implementation
2022-12-02 17:57:15 +09:00
Dan Balasescu
a39bd634c4
Merge pull request #21405 from LumpBloom7/Editor-DrawableRuleset-Dependencies
...
Provide DrawableRulesetDependencies from HitObjectComposer
2022-12-02 17:31:31 +09:00
Dan Balasescu
d684aa75b8
Merge pull request #21477 from peppy/fix-mania-timeline-blueprint-colour
...
Fix osu!mania editor timeline showing bright-white blueprints
2022-12-02 16:55:29 +09:00
Dean Herbert
a2db0afe19
Avoid querying GetLastObjectTime
twice in editor seek flow
2022-12-02 16:07:24 +09:00
Dean Herbert
8cf89fcb81
Use Highlight1
instead of dull grey
2022-12-02 15:30:47 +09:00
Dean Herbert
896f2d8f74
Fix multiple instances of last hitobject time being calculated incorrectly
2022-12-01 18:04:06 +09:00
Dean Herbert
f34a79b1a9
Set a better default colour for timeline blueprints when no colour information is available
2022-12-01 17:03:53 +09:00
Dean Herbert
bbf023cf68
Fix incorrect culture used when parsing timeline popup textbox content
2022-12-01 16:12:29 +09:00
Derrick Timmermans
5c8fce1c08
Remove extra blank line
2022-11-30 13:05:14 +01:00
Derrick Timmermans
6a61e70766
Expose Ruleset from HitObjectComposer instead
2022-11-30 12:17:58 +01:00
Dean Herbert
4215f4f5d7
Merge branch 'master' into Editor-DrawableRuleset-Dependencies
2022-11-30 17:42:46 +09:00
Dean Herbert
2a3b24d058
Avoid need for implicit null casting
2022-11-30 14:21:04 +09:00
Dean Herbert
0659c84341
Rename method to be more in line with project naming
2022-11-30 14:17:49 +09:00
Dean Herbert
63ba40ff39
Merge branch 'master' into control-point-scroll-into-view
2022-11-30 14:12:19 +09:00
Jai Sharma
7dbf379351
Don't use verbatim string literals
2022-11-29 18:22:07 +00:00
Derrick Timmermans
70c320b2e8
Provide ruleset dependencies only to Compose Placement Blueprints
2022-11-27 21:43:33 +01:00
mk56-spn
0aba119056
Merge remote-tracking branch 'origin/RangeSlider_implementation' into RangeSlider_implementation
...
# Conflicts:
# osu.Game.Tests/Visual/SongSelect/TestSceneDifficultyRangeFilterControl.cs
# osu.Game/Screens/Select/DifficultyRangeFilterControl.cs
2022-11-27 10:40:29 +01:00
Jai Sharma
218c04c174
Code quality
2022-11-27 03:23:08 +00:00
Jai Sharma
6000e14668
Correctly select issue row
2022-11-27 03:08:54 +00:00
Jai Sharma
3c56b9c93a
Add OnRowSelected
event to EditorTable
2022-11-27 02:47:54 +00:00
Jai Sharma
792334a190
Move Control Group timing data into it's own component
2022-11-27 02:47:02 +00:00
Jai Sharma
b6d7bec240
Remove #nullable disabled
from EditorTable
and it's derived classes
2022-11-27 02:45:56 +00:00
Jai Sharma
1a914d0df7
Remove #nullable disable
from TimingScreen
2022-11-27 02:43:22 +00:00
Bartłomiej Dach
894ef15e79
Merge branch 'master' into update-framework
2022-11-26 16:19:36 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
mk56-spn
92ed2ed4ef
Refactor star "DifficultyRangeFilterControl" into generic range slider class
2022-11-26 12:19:08 +01:00
Bartłomiej Dach
73176a1315
Merge branch 'master' into triangle-button-v2
2022-11-25 18:35:59 +01:00
Bartłomiej Dach
bbbc1d0428
Darken colour of playlists create button
...
To match d0c4637683
.
2022-11-25 18:23:28 +01:00
Dean Herbert
d0c4637683
Lighten colour of multiplayer create game button
2022-11-25 20:18:21 +09:00
Bartłomiej Dach
fca3e7e39f
Merge branch 'master' into editor-seek-control-points
2022-11-24 21:53:47 +01:00
Dean Herbert
2b2beadd06
Merge branch 'master' into update-framework
2022-11-25 01:00:08 +09:00
Dean Herbert
6ad432b311
Use RoundedButton
in more places
2022-11-24 16:33:01 +09:00
Dean Herbert
53b03df93d
Combine TriangleButton
and RoundedButton
classes
2022-11-24 16:26:57 +09:00
Dean Herbert
bea2acc60e
Remove local specifications of triangle colouring
2022-11-24 16:18:15 +09:00