From 7d7e6f3b91697eb8d2b42c1b8407b1def967adef Mon Sep 17 00:00:00 2001 From: wilsonshih Date: Wed, 1 Feb 2023 07:12:33 +0000 Subject: [PATCH] Defer transition ready when resizing starting window. Reset the StartingData.mIsDisplayed if the starting window is going to resizing, so the transition won't happens with no opening windows drawn. Bug: 276356396 Test: atest QuickSwitchFromLauncherTest Test: manual do quick switch 50+ without seeing flikcer. Change-Id: I1b77c8238ec5a2b9a04c2cf779b49790f5203ce5 (cherry picked from commit d368f2264cc0fa7bed35556fe3176b9e04d2c796) --- services/core/java/com/android/server/wm/WindowState.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 2d849b3a6b95e..4f3ac48d2ca33 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -1543,6 +1543,10 @@ class WindowState extends WindowContainer implements WindowManagerP winAnimator.mDrawState = DRAW_PENDING; if (mActivityRecord != null) { mActivityRecord.clearAllDrawn(); + if (mAttrs.type == TYPE_APPLICATION_STARTING + && mActivityRecord.mStartingData != null) { + mActivityRecord.mStartingData.mIsDisplayed = false; + } } } if (!mWmService.mResizingWindows.contains(this)) {