1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-12 04:49:40 +08:00
Commit Graph

16 Commits

Author SHA1 Message Date
Dan Balasescu
15127f972e
Merge branch 'master' into fix-online-play-sub-screens-not-async-loaded 2021-07-20 18:47:41 +09:00
Dean Herbert
d87ea741ed Fix OnlinePlayScreen sub-screens not loaded asynchronously 2021-07-20 16:38:39 +09:00
Dean Herbert
fe414b942f Ensure online play subscreen is loaded before forwarding OnExiting
Closes https://github.com/ppy/osu-framework/issues/4619 (actually not a
framework issue; the framework correctly guards against this scenario,
see
4e29504384/osu.Framework/Screens/ScreenStack.cs (L277)).

Added the assertions to be very explicit about the nested stack's state
at this point. Both of those events can only be triggered if the stack
has a loaded screen (as far as I can tell), making this check
unnecessary in those cases.
2021-07-20 15:51:34 +09:00
Joseph Madamba
00b4cf1829 Handle sub screen OnExiting logic on main screen 2021-06-21 20:20:43 -07:00
smoogipoo
ab9290772b Fix a similar case with online play sub-screens 2021-06-08 17:54:54 +09:00
Dean Herbert
362e4802f7 Add the ability for PerformFromMenuRunner to inspect nested screen stacks 2021-02-19 17:58:04 +09:00
Bartłomiej Dach
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
Dean Herbert
deb1ad7bca
Merge branch 'master' into disable-repeat-multi-actions 2021-01-04 23:38:29 +09:00
Dean Herbert
906a9b79b5 Show an error when forcefully exiting online play due to API failure 2020-12-29 16:47:36 +09:00
Bartłomiej Dach
db52255bbe Adjust tracker usages to match new API 2020-12-29 08:20:43 +01:00
Bartłomiej Dach
af66e45311 Disable create room button after triggering join 2020-12-28 22:48:03 +01:00
Bartłomiej Dach
ed4b8482b6 Rename {Multiplayer -> OnlinePlay}Composite 2020-12-25 18:07:34 +01:00
Bartłomiej Dach
4c43a67b68 Rename I{Multiplayer -> OnlinePlay}SubScreen 2020-12-25 18:07:34 +01:00
Bartłomiej Dach
e5064ee930 Rename {Multiplayer -> OnlinePlay}SubScreen 2020-12-25 17:02:35 +01:00
Bartłomiej Dach
eb0f125fef Rename {Multiplayer -> OnlinePlay}SubScreenStack 2020-12-25 17:00:31 +01:00
Bartłomiej Dach
4caf75850b Rename {Multiplayer -> OnlinePlay}Screen 2020-12-25 17:00:00 +01:00