From dd2ba83f7921f070ceee53a795a17c0a8127c266 Mon Sep 17 00:00:00 2001 From: Robin Lee Date: Fri, 14 Apr 2023 14:54:16 +0000 Subject: [PATCH] DO NOT MERGE Revert "Accept a Window as shown if it's in any transition" This reverts commit 8ed3e4a826356b5e93008653d310844ea9d4d8e5. Reason for revert: Task embedding flicker b/276472426 Fix: 276472426 Change-Id: I81a41081ff5905cba35930f1a0de04c2000b5dfa --- .../core/java/com/android/server/wm/WindowState.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 054d68f6edfb5..52f2b6351265b 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -2049,19 +2049,16 @@ class WindowState extends WindowContainer implements WindowManagerP /** * Like isOnScreen(), but we don't return true if the window is part - * of a transition but has not yet started animating. + * of a transition that has not yet been started. */ boolean isReadyForDisplay() { - if (!mHasSurface || mDestroying || !isVisibleByPolicy()) { - return false; - } - if (mToken.waitingToShow && getDisplayContent().mAppTransition.isTransitionSet() - && !isAnimating(TRANSITION | PARENTS, ANIMATION_TYPE_APP_TRANSITION)) { + if (mToken.waitingToShow && getDisplayContent().mAppTransition.isTransitionSet()) { return false; } final boolean parentAndClientVisible = !isParentWindowHidden() && mViewVisibility == View.VISIBLE && mToken.isVisible(); - return parentAndClientVisible || isAnimating(TRANSITION | PARENTS, ANIMATION_TYPE_ALL); + return mHasSurface && isVisibleByPolicy() && !mDestroying + && (parentAndClientVisible || isAnimating(TRANSITION | PARENTS)); } boolean isFullyTransparent() {