public override bool OnExiting(ScreenExitEvent e) { contentContainer.ScaleTo(0.95f, duration, Easing.OutQuint); this.FadeOut(duration, Easing.OutQuint); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { host.AllowBenchmarkUnlimitedFrames = false; config.SetValue(FrameworkSetting.FrameSync, previousFrameSyncMode); host.UpdateThread.ActiveHz = previousActiveHz; return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { screenSuspension?.RemoveAndDisposeImmediately(); failAnimationLayer?.RemoveFilters(); if (LoadedBeatmapSuccessfully) { if (!GameplayState.HasPassed && !GameplayState.HasFailed) { GameplayState.HasQuit = true; } // if arriving here and the results screen preparation task hasn't run, it's safe to say the user has not completed the beatmap. if (prepareScoreForDisplayTask == null) { Score.ScoreInfo.Passed = false; // potentially should be ScoreRank.F instead? this is the best alternative for now. Score.ScoreInfo.Rank = ScoreRank.D; } // EndPlaying() is typically called from ReplayRecorder.Dispose(). Disposal is currently asynchronous. // To resolve test failures, forcefully end playing synchronously when this screen exits. // Todo: Replace this with a more permanent solution once osu-framework has a synchronous cleanup method. spectatorClient.EndPlaying(GameplayState); } // GameplayClockContainer performs seeks / start / stop operations on the beatmap's track. // as we are no longer the current screen, we cannot guarantee the track is still usable. (GameplayClockContainer as MasterGameplayClockContainer)?.StopUsingBeatmapClock(); musicController.ResetTrackAdjustments(); fadeOut(); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { message.TextContainer.MoveTo(new Vector2(DrawSize.X / 16, 0), transition_time, Easing.OutExpo); this.FadeOut(transition_time, Easing.OutExpo); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { if (!ExitConfirmed) { // dialog overlay may not be available in visual tests. if (dialogOverlay == null) { confirmExit(); return(true); } // if the dialog is already displayed, block exiting until the user explicitly makes a decision. if (dialogOverlay.CurrentDialog is PromptForSaveDialog) { return(true); } if (isNewBeatmap || HasUnsavedChanges) { samplePlaybackDisabled.Value = true; dialogOverlay?.Push(new PromptForSaveDialog(confirmExit, confirmExitWithSave, cancelExit)); return(true); } } ApplyToBackground(b => b.FadeColour(Color4.White, 500)); resetTrack(); refetchBeatmap(); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { // the room may not be left immediately after a disconnection due to async flow, // so checking the IsConnected status is also required. if (client.Room == null || !client.IsConnected.Value) { // room has not been created yet; exit immediately. return(base.OnExiting(e)); } if (!exitConfirmed && dialogOverlay != null) { if (dialogOverlay.CurrentDialog is ConfirmDialog confirmDialog) { confirmDialog.PerformOkAction(); } else { dialogOverlay.Push(new ConfirmDialog("Are you sure you want to leave this multiplayer match?", () => { exitConfirmed = true; this.Exit(); })); } return(true); } return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { this .FadeOut(100) .MoveToX(offset, 500, Easing.OutQuint); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { musicController.Stop(); editorState.Time = GameplayClockContainer.CurrentTime; editor.RestoreState(editorState); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { RoomManager?.PartRoom(); Mods.Value = Array.Empty <Mod>(); onLeaving(); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { if (SubScreenStack.CurrentScreen != null) { SubScreenStack.CurrentScreen.Exit(); return(true); } return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { if (screenStack.CurrentScreen == null) { return(base.OnExiting(e)); } screenStack.Exit(); return(true); }
public override bool OnExiting(ScreenExitEvent e) { // block until migration is finished if (migrationTask?.IsCompleted == false) { return(true); } return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { if (base.OnExiting(e)) { return(true); } this.FadeOut(100); return(false); }
public override bool OnExiting(ScreenExitEvent e) { if (IsLoaded) { this.FadeOut(TRANSITION_LENGTH, Easing.OutExpo); this.MoveToX(x_movement_amount, TRANSITION_LENGTH, Easing.OutExpo); } return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { if (base.OnExiting(e)) { return(true); } Exited?.Invoke(); return(false); }
public override bool OnExiting(ScreenExitEvent e) { // For testing purposes allow the screen to exit without saving on second attempt. if (!ExitConfirmed && dialogOverlay?.CurrentDialog is PromptForSaveDialog saveDialog) { saveDialog.PerformAction <PopupDialogDangerousButton>(); return(true); } return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { bool exiting = base.OnExiting(e); if (LoadedBeatmapSuccessfully) { submitScore(Score.DeepClone()); } return(exiting); }
public override bool OnExiting(ScreenExitEvent e) { ExitAttempts++; if (dialogDisplayCount++ < 1) { dialogOverlay.Push(new ConfirmExitDialog(this.Exit, () => { })); return(true); } return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { if (!itemSelected) { Beatmap.Value = initialBeatmap; Ruleset.Value = initialRuleset; Mods.Value = initialMods; } freeModSelectOverlay.Hide(); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { cancelLoad(); ContentOut(); // If the load sequence was interrupted, the epilepsy warning may already be displayed (or in the process of being displayed). epilepsyWarning?.Hide(); // Ensure the screen doesn't expire until all the outwards fade operations have completed. this.Delay(CONTENT_OUT_DURATION).FadeOut(); ApplyToBackground(b => b.IgnoreUserSettings.Value = true); BackgroundBrightnessReduction = false; Beatmap.Value.Track.RemoveAdjustment(AdjustableProperty.Volume, volumeAdjustment); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { var subScreen = screenStack.CurrentScreen as Drawable; if (subScreen?.IsLoaded == true && screenStack.CurrentScreen.OnExiting(e)) { return(true); } RoomManager.PartRoom(); waves.Hide(); this.Delay(WaveContainer.DISAPPEAR_DURATION).FadeOut(); base.OnExiting(e); return(false); }
public override bool OnExiting(ScreenExitEvent e) { if (ValidForResume && logo != null) { onExitingLogo(); } if (base.OnExiting(e)) { return(true); } if (ownedBackground != null && backgroundStack?.CurrentScreen == ownedBackground) { backgroundStack?.Exit(); } return(false); }
public override bool OnExiting(ScreenExitEvent e) { if (!exitConfirmed && dialogOverlay != null) { if (dialogOverlay.CurrentDialog is ConfirmExitDialog exitDialog) { exitDialog.PerformOkAction(); } else { dialogOverlay.Push(new ConfirmExitDialog(confirmAndExit, () => exitConfirmOverlay.Abort())); } return(true); } Buttons.State = ButtonSystemState.Exit; OverlayActivationMode.Value = OverlayActivation.Disabled; songTicker.Hide(); this.FadeOut(3000); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { // This screen never exits. return(true); }
public override bool OnExiting(ScreenExitEvent e) { SpectatorClient.OnUserBeganPlaying -= userBeganPlaying; return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { SpectatorClient.OnNewFrames -= userSentFrames; return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { previewTrackManager.StopAnyPlaying(this); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { base.OnExiting(e); this.FadeOut(DISAPPEAR_DURATION, Easing.OutQuint); return(false); }
public override bool OnExiting(ScreenExitEvent e) { taskCompletionSource.TrySetCanceled(); return(base.OnExiting(e)); }
public override bool OnExiting(ScreenExitEvent e) { onLeaving(); return(base.OnExiting(e)); }