Merge pull request #5154 from peppy/fix-pause-behaviour

Fix pause not correctly showing pause screen
This commit is contained in:
Dan Balasescu
2019-06-26 11:34:42 +09:00
committed by GitHub
2 changed files with 25 additions and 4 deletions

View File

@ -137,6 +137,22 @@ namespace osu.Game.Tests.Visual.Gameplay
exitAndConfirm();
}
[Test]
public void TestExitViaHoldToExit()
{
AddStep("exit", () =>
{
InputManager.MoveMouseTo(Player.HUDOverlay.HoldToQuit.First(c => c is HoldToConfirmContainer));
InputManager.PressButton(MouseButton.Left);
});
confirmPaused();
AddStep("release", () => InputManager.ReleaseButton(MouseButton.Left));
exitAndConfirm();
}
[Test]
public void TestExitFromPause()
{

View File

@ -184,7 +184,7 @@ namespace osu.Game.Screens.Play
if (!this.IsCurrentScreen()) return;
fadeOut(true);
performUserRequestedExit();
performImmediateExit();
},
},
failAnimation = new FailAnimation(DrawableRuleset) { OnComplete = onFailComplete, }
@ -251,15 +251,20 @@ namespace osu.Game.Screens.Play
return working;
}
private void performUserRequestedExit()
private void performImmediateExit()
{
if (!this.IsCurrentScreen()) return;
// if a restart has been requested, cancel any pending completion (user has shown intent to restart).
onCompletionEvent = null;
ValidForResume = false;
performUserRequestedExit();
}
private void performUserRequestedExit()
{
if (!this.IsCurrentScreen()) return;
this.Exit();
}