From d0a166a37d384f21ea595b187041e9e0894e4e7c Mon Sep 17 00:00:00 2001 From: Wale Ogunwale Date: Mon, 9 May 2016 11:18:18 -0700 Subject: [PATCH] Remove replaced window if we aren't animating its exit. Allow removal of replaced window if it isn't running an exit animation and wasn't set to run an exit animation. Bug: 28411852 Change-Id: I916d7c9461691bc58367d012113fefe9c6485127 --- services/core/java/com/android/server/wm/WindowState.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 7341e1ea1b8c0..e42a0d16b5ef5 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -1586,11 +1586,12 @@ final class WindowState implements WindowManagerPolicy.WindowState { win.transferDimToReplacement(); } win.mWillReplaceWindow = false; + final boolean animateReplacingWindow = win.mAnimateReplacingWindow; win.mAnimateReplacingWindow = false; win.mReplacingRemoveRequested = false; win.mReplacingWindow = null; mSkipEnterAnimationForSeamlessReplacement = false; - if (win.mAnimatingExit) { + if (win.mAnimatingExit || !animateReplacingWindow) { mService.removeWindowInnerLocked(win); } }