diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index f24d74a2e356e..be61311c973fe 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -8113,9 +8113,8 @@ public class WindowManagerService extends IWindowManager.Stub boolean animateStarting = false; while (timeoutRemaining > 0) { // Waiting until all starting windows has finished animating. - animateStarting = mRoot.forAllActivities(a -> { - return a.hasStartingWindow(); - }); + animateStarting = !mAtmService.getTransitionController().isShellTransitionsEnabled() + && mRoot.forAllActivities(ActivityRecord::hasStartingWindow); boolean isAnimating = mAnimator.isAnimationScheduled() || mRoot.isAnimating(TRANSITION | CHILDREN, ANIMATION_TYPE_ALL) || animateStarting;