mirror of
https://github.com/ppy/osu.git
synced 2024-12-15 05:02:55 +08:00
Update room immediately on join
This commit is contained in:
parent
10bd7176e0
commit
7906ae2b1d
@ -160,11 +160,11 @@ namespace osu.Game.Online.Multiplayer
|
||||
foreach (var user in joinedRoom.Users)
|
||||
updateUserPlayingState(user.UserID, user.State);
|
||||
|
||||
updateLocalRoomSettings(joinedRoom.Settings);
|
||||
|
||||
OnRoomJoined();
|
||||
}, cancellationSource.Token).ConfigureAwait(false);
|
||||
|
||||
// Update room settings.
|
||||
await updateLocalRoomSettings(joinedRoom.Settings, cancellationSource.Token).ConfigureAwait(false);
|
||||
}, cancellationSource.Token).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
@ -447,8 +447,7 @@ namespace osu.Game.Online.Multiplayer
|
||||
|
||||
Task IMultiplayerClient.SettingsChanged(MultiplayerRoomSettings newSettings)
|
||||
{
|
||||
// Do not return this task, as it will cause tests to deadlock.
|
||||
updateLocalRoomSettings(newSettings);
|
||||
Scheduler.Add(() => updateLocalRoomSettings(newSettings));
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
@ -685,8 +684,7 @@ namespace osu.Game.Online.Multiplayer
|
||||
/// This updates both the joined <see cref="MultiplayerRoom"/> and the respective API <see cref="Room"/>.
|
||||
/// </remarks>
|
||||
/// <param name="settings">The new <see cref="MultiplayerRoomSettings"/> to update from.</param>
|
||||
/// <param name="cancellationToken">The <see cref="CancellationToken"/> to cancel the update.</param>
|
||||
private Task updateLocalRoomSettings(MultiplayerRoomSettings settings, CancellationToken cancellationToken = default) => scheduleAsync(() =>
|
||||
private void updateLocalRoomSettings(MultiplayerRoomSettings settings)
|
||||
{
|
||||
if (Room == null)
|
||||
return;
|
||||
@ -701,7 +699,7 @@ namespace osu.Game.Online.Multiplayer
|
||||
RoomUpdated?.Invoke();
|
||||
|
||||
CurrentMatchPlayingItem.Value = APIRoom.Playlist.SingleOrDefault(p => p.ID == settings.PlaylistItemId);
|
||||
}, cancellationToken);
|
||||
}
|
||||
|
||||
private async Task<PlaylistItem> createPlaylistItem(MultiplayerPlaylistItem item)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user