Keep starting window on top during remove.

To align the behavior of WindowState#assignLayer even when removing.

Bug: 268221678
Test: launch test app, verify starting window remain on top during
fadeout animation.

Change-Id: I8d4000dc02749f5ec9f456a6cce76ee8e56cb331
This commit is contained in:
wilsonshih
2023-07-05 14:35:07 +08:00
committed by Wei Sheng Shih
parent 14c9b2a587
commit 7c00210f0a

View File

@@ -2470,6 +2470,11 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP
if (allowExitAnimation && mWinAnimator.applyAnimationLocked(transit, false)) {
ProtoLog.v(WM_DEBUG_ANIM,
"Set animatingExit: reason=remove/applyAnimation win=%s", this);
if (startingWindow && mSurfaceAnimator.hasLeash()) {
// Keep starting window on top during fade-out animation.
getPendingTransaction().setLayer(mSurfaceAnimator.mLeash,
Integer.MAX_VALUE);
}
mAnimatingExit = true;
// mAnimatingExit affects canAffectSystemUiFlags(). Run layout such that