From a8be1b99ec6c9ad675d80717c25a57fed0aea923 Mon Sep 17 00:00:00 2001 From: Chong Zhang Date: Tue, 29 Sep 2015 13:54:44 -0700 Subject: [PATCH] Carry over app token when preserving window Otherwise the token in the window's attr will be null after relaunch. When this attr is updated with WindowManagerGlobal, setStoppedState() will no longer find the view from the token. bug: 24404382 Change-Id: Ib6935b03346a84dd023e224f72896041fda9dcd5 --- core/java/com/android/internal/policy/PhoneWindow.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/com/android/internal/policy/PhoneWindow.java b/core/java/com/android/internal/policy/PhoneWindow.java index 2e4d9b50b7bea..41c92576ffeab 100644 --- a/core/java/com/android/internal/policy/PhoneWindow.java +++ b/core/java/com/android/internal/policy/PhoneWindow.java @@ -337,6 +337,10 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { mElevation = preservedWindow.getElevation(); mLoadEleveation = false; mForceDecorInstall = true; + // If we're preserving window, carry over the app token from the preserved + // window, as we'll be skipping the addView in handleResumeActivity(), and + // the token will not be updated as for a new window. + getAttributes().token = preservedWindow.getAttributes().token; } }