Commit Graph

35968 Commits

Author SHA1 Message Date
382a40b243 Tidy up some missed inspections in RealmContextFactory 2021-01-11 15:52:49 +09:00
391259c713 Add missing implementation details to realm keybinding store 2021-01-11 15:52:49 +09:00
ee6a26bd6e Initialise new key bindings with a primary key 2021-01-11 15:52:49 +09:00
845d5cdea2 Switch guid to store as string until fody issues are resolved
See
https://github.com/realm/realm-dotnet/issues/740#issuecomment-755898968
2021-01-11 15:52:49 +09:00
ae76eca564 Add basic realm migration support 2021-01-11 15:52:49 +09:00
5d7ab4a7f1 Rename global statistics to be specific to realm 2021-01-11 15:52:49 +09:00
d5ac97ece8 Add realm store / key binding implementations 2021-01-11 15:52:49 +09:00
5372d95d16 Initialise FodyWeavers 2021-01-11 15:52:49 +09:00
9cfede2e7e Setup context, write usage, wrapper classes 2021-01-11 15:52:49 +09:00
dce9937e9b Add automapper for detaching support 2021-01-11 15:52:49 +09:00
ee103c9a1e Add prerelease realm package 2021-01-11 15:52:49 +09:00
2abeda5e0f Merge pull request #11447 from bdach/fix-play-button-crashes
Fix track previews crashing on completion
2021-01-11 03:10:18 +09:00
d2ca6da0fd Remove unused constant 2021-01-11 01:56:09 +09:00
bd37723788 Expose as IBindable for added safety 2021-01-11 01:55:54 +09:00
e4eb44df6e Merge branch 'master' into fix-play-button-crashes 2021-01-11 01:46:41 +09: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
274a045d8d Remove Dispose() override
Culls another non-thread-safe mutation of the `Playing` bindable.
It seems to be a weird vestige from an earlier revision of the old
"direct" panel, which relied on `DisposeOnDeathRemoval` to finish track
playback (and then was removed in
6c150c9ed7). The play button is no longer
responsible for managing preview track lifetime anyway;
`PreviewTrackManager`'s method are intended for that.
2021-01-08 20:08:19 +01:00
52789118a3 Schedule play button state update
Revealed by the framework-side transform thread safety checks. `Stopped`
is even annotated as not being thread-safe (but was annotated as such
long after the class's nascence).
2021-01-08 20:08:19 +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