From abc218009071244c211936bc91c96ed26220bc0d Mon Sep 17 00:00:00 2001 From: Ronnie Leng Date: Mon, 4 Jan 2016 11:36:08 -0600 Subject: [PATCH] [WindowManagerService] fix starting window issue Symptom: 1. Acitivity A and B belong to same task. 2. A is started and start B in its code 3. B is opened with blank screen If starting icon has been display, both startingWindow and startingView should not be null. Current logic only uses judgement on startWindow. In above case, it leads startingView set to null as A and B shares the same starting window due to same task. Then system will not get chance to remove startingView as it is null. It needs add judgement on startingView. Based on https://android-review.googlesource.com/#/c/194370/ Change-Id: I6cfa1a3ebce93ce435cc2d9ada239b1e808988de --- .../core/java/com/android/server/wm/WindowManagerService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index f7b81cb9634e2..d389a967e1d0e 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -3881,7 +3881,7 @@ public class WindowManagerService extends IWindowManager.Stub return false; } WindowState startingWindow = ttoken.startingWindow; - if (startingWindow != null) { + if (startingWindow != null && ttoken.startingView != null) { // In this case, the starting icon has already been displayed, so start // letting windows get shown immediately without any more transitions. mSkipAppTransitionAnimation = true;