Commit Graph

35962 Commits

Author SHA1 Message Date
49057e8cbc Cache TournamentStorage explicitly for better safety 2021-01-11 14:38:42 +09:00
f466791b69 Move assignments to the TournamentSwitcher component
This also adds conditional checks for displaying the "Close osu!" button
2021-01-10 17:34:20 +01:00
959696c296 Merge branch 'master' into tourney-switching-ui 2021-01-10 17:34:03 +01:00
e5c670f843 Merge branch 'master' into tourney-switching-ui 2021-01-10 17:33:52 +01:00
b79e8d0192 Merge pull request #11386 from frenzibyte/fix-mod-buttons-not-copying-settings 2021-01-10 16:37:25 +01:00
d110ed9e95 Merge branch 'master' into fix-mod-buttons-not-copying-settings 2021-01-10 15:42:33 +01:00
e006891db0 Merge pull request #11452 from bdach/ongoing-operation-tracker-safety 2021-01-10 15:41:13 +01:00
4b4adc927c Rename param to match method body 2021-01-10 15:35:53 +01:00
4e32b0d6de Merge branch 'master' into ongoing-operation-tracker-safety 2021-01-10 23:05:03 +09:00
95ad324a39 Merge branch 'master' into fix-mod-buttons-not-copying-settings 2021-01-10 23:01:54 +09:00
556dc11da7 Merge pull request #11392 from ppy/dependabot/nuget/Microsoft.CodeAnalysis.FxCopAnalyzers-3.3.2
Bump Microsoft.CodeAnalysis.FxCopAnalyzers from 3.3.1 to 3.3.2
2021-01-10 16:18:02 +09:00
e81f9e358e Merge pull request #11448 from bdach/fix-editor-enter-crash
Fix editor crashing on enter if login overlay was previously opened
2021-01-10 12:59:47 +09:00
8c3955d341 Improve safety of ongoing operation tracker
Finishing an operation started via
`OngoingOperationTracker.BeginOperation()` was risky in cases where the
operation ended at a callback on another thread (which, in the case of
multiplayer, is *most* cases). In particular, if any consumer registered
a callback that mutates transforms when the operation ends, it would
result in crashes after the framework-side safety checks.

Rework `OngoingOperationTracker` into an always-present component
residing in the drawable hierarchy, and ensure that the
`operationInProgress` bindable is always updated on the update thread.
This way consumers don't have to add local schedules in multiple places.
2021-01-09 22:45:24 +01:00
c8d83a9fb3 Merge pull request #11353 from bdach/disable-repeat-multi-actions
Disable multiplayer action buttons after clicks to prevent double operations
2021-01-09 17:42:38 +09:00
b69fe8a274 Merge branch 'master' into disable-repeat-multi-actions 2021-01-09 10:15:20 +09:00
c1ef05af82 Merge branch 'master' into dependabot/nuget/Microsoft.CodeAnalysis.FxCopAnalyzers-3.3.2 2021-01-08 22:36:03 +01:00
0aad0c7c6c Target logic at this and adjust variables 2021-01-09 00:31:18 +03:00
ff60d652ed Move out test ongoing operation tracker to higher level 2021-01-08 22:28:21 +01:00
375ecf92ed Merge remote-tracking branch 'upstream/master' into fix-mod-buttons-not-copying-settings 2021-01-09 00:26:18 +03:00
c2eeb822b8 Rename {joiningRoom -> operationInProgress} 2021-01-08 22:23:38 +01:00
dad5dd3667 Remove unnecessary permissiveness wrt null 2021-01-08 22:21:54 +01:00
284d30d336 Move screen activity update to LoadComplete()
Fixes a potential crash when moving from main menu to editor after
having previously opened the login settings overlay. Setting the
activity in BDL as done before is unsafe, as that set can trigger value
change callbacks, which in turn can trigger adding transforms, which
should always be done on the update thread.

Semantically it also makes sense, as the user activity should change
once the screen they're moving to has actually loaded and displayed to
the user.
2021-01-08 21:18:15 +01:00
8a7a1fc40a Merge pull request #11439 from peppy/improve-hover-sounds-debounce
Improve hover sounds playback (to reduce volume saturation and delay)
2021-01-09 02:31:02 +09:00
49c6abcb5c Remove mention of default value in xmldoc
Just bound to get outdated with every change anyway. Look at the actual
default value declaration to see what the default is.
2021-01-08 18:26:41 +01:00
9422219eaa Merge pull request #11424 from peppy/fix-transform-mutation-mod-selection 2021-01-08 18:21:56 +01:00
d507a08951 Start with null last hover playback time 2021-01-08 18:16:03 +01:00
3bb71e4b77 Merge branch 'master' into fix-transform-mutation-mod-selection 2021-01-09 01:44:52 +09:00
ef5ea82d8c Merge pull request #11444 from peppy/fix-tournament-serialization-changes
Add custom handling of Point serialization to fix startup crashes of tournament client
2021-01-09 01:32:38 +09:00
8feaf3fb6a Update framework 2021-01-09 01:24:18 +09:00
05ba5d4c31 Merge pull request #11438 from bdach/difficulty-adjust-defaults
Fix difficulty adjust mod treating default values as user overrides
2021-01-09 01:18:34 +09:00
0cf5be3ef4 Fix selection change event being invoked with wrong mod 2021-01-08 17:02:57 +01:00
82725b59c0 Use PointConverter 2021-01-09 00:56:54 +09:00
9182f5dafb Switch to using an anonymous type for serialisation
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-01-09 00:38:38 +09:00
924f91ed9b Fix song select test doing the completely wrong thing 2021-01-08 15:56:35 +01:00
edd328c8fe Move bindable closer to source class 2021-01-08 17:24:55 +09:00
a6766e64de Add custom handling of Point serialization to fix startup crashes of tournament client
SixLabors moved their data types around in a recent update (see
https://github.com/ppy/osu-framework/pull/4025) and it was deemed that
we should prefer `System.Drawing` primitives where possible.

This was applied to the tournament client via
https://github.com/ppy/osu/pull/11072 without correct consideration
given to the fact that we serialize these types.

`System.Drawing.Point` serializes into a comma separated string, which
seems to be less correct than what we had, so I've switched back to the
old format for the time being. We can reasses this in the future; the
main goal here is to restore usability to the tournament client.

Closes #11443.
2021-01-08 17:08:10 +09:00
c208800150 Fix auto selection scenario regressing due to scheduling too much 2021-01-08 14:17:14 +09:00
e156bcdcae Remove unnecessary (and broken) requiresDebounce check 2021-01-08 14:05:34 +09:00
11801d61c1 Use nullable doubule to better represent initial playback case 2021-01-08 14:05:22 +09:00
22981a667c Merge branch 'master' into fix-transform-mutation-mod-selection 2021-01-08 11:16:22 +09:00
4973e23003 Merge branch 'master' into fix-transform-mutation-mod-selection 2021-01-08 11:16:15 +09:00
8df060ad6e Merge pull request #11423 from peppy/fix-control-point-pollution 2021-01-07 19:37:16 +01:00
2cfd1e8b47 Merge branch 'master' into fix-control-point-pollution 2021-01-08 00:02:45 +09:00
3c3e860dbc Move ControlPointInfo copying to base Beatmap.Clone method (and remove setter) 2021-01-07 23:52:04 +09:00
77b55212a3 Change access of beatmap to use working for consistency in file 2021-01-07 19:11:51 +09:00
42643fbaf6 Use already resolved EditorBeatmap rather than resolving a second time locally 2021-01-07 19:10:19 +09:00
00dc98e3ab Make legacy control point's BpmMultiplier setter private again 2021-01-07 19:06:52 +09:00
69ac22dd7f Fix incorrectly copy pasted xmldoc 2021-01-07 19:06:10 +09:00
8f52a83b29 Share hover sound debounce across all instances via SessionStatics 2021-01-07 18:47:20 +09:00
6620eadec3 Reduce default hover sound debounce interval 2021-01-07 18:47:03 +09:00