From e8c07d4ee7adde8a7def53458a801d8bd86b1bbd Mon Sep 17 00:00:00 2001 From: Robin Lee Date: Fri, 14 Apr 2023 14:54:16 +0000 Subject: [PATCH] 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 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:dd2ba83f7921f070ceee53a795a17c0a8127c266) 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 a29959297dc7c..a457f01922a8f 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -1980,19 +1980,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() {