From 78be267f700f75fafffe58c1ca0ef8d28b2ed8f6 Mon Sep 17 00:00:00 2001 From: Jorim Jaggi Date: Fri, 11 May 2018 17:23:58 -0700 Subject: [PATCH] Do not immediately perform traversals when executing transition Such that we don't block the binder client, leading to delays. Test: Cold start app Test: AppTransitionTests Change-Id: If39d679ca2461b2c1b488616149397604b2d0765 Fixes: 78646173 --- .../java/com/android/server/wm/WindowManagerService.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 10dfdf2a982e1..224784bef257b 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -2691,12 +2691,7 @@ public class WindowManagerService extends IWindowManager.Stub + " Callers=" + Debug.getCallers(5)); if (mAppTransition.isTransitionSet()) { mAppTransition.setReady(); - final long origId = Binder.clearCallingIdentity(); - try { - mWindowPlacerLocked.performSurfacePlacement(); - } finally { - Binder.restoreCallingIdentity(origId); - } + mWindowPlacerLocked.requestTraversal(); } } }