summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Robin Lee <rgl@google.com> 2023-09-26 17:37:59 +0000
committer Robin Lee <rgl@google.com> 2023-09-27 13:47:35 +0000
commit5a255ffc0324b94e2a33cf22d66b3b24e65bea74 (patch)
tree621dea3e198d558ca326980fc63c41918f608e7a
parentd62cfd94edb9c017ac9f6cb175e818e07b7c8661 (diff)
Run TaskDisplayArea recovery during sleep tokens
In AOD we can have a showWhenLocked activity visible but put to sleep by the Keyguard sleep token. Checking for isSleeping stops us from recovering display area visibility when: - AOD is active - A showWhenLocked, non-turnScreenOn app starts to launch - Post-collect, app calls recreate(), adds FLAG_TURN_SCREEN_ON - App becomes visible in relayout Change-Id: I660967a2eed3ea1c0ef1845afbdf416c26fa82ae Test: atest --iterations 10 CtsWindowManagerDeviceKeyguard:KeyguardTests Test: atest --iterations 10 CtsWindowManagerDeviceKeyguard:KeyguardLockedTests Bug: 292571302
-rw-r--r--services/core/java/com/android/server/wm/ActivityRecord.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java
index a0c78702fec5..831c8fd2f98b 100644
--- a/services/core/java/com/android/server/wm/ActivityRecord.java
+++ b/services/core/java/com/android/server/wm/ActivityRecord.java
@@ -5365,7 +5365,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
// Finish should only ever commit visibility=false, so we can check full containment
// rather than just direct membership.
inFinishingTransition = mTransitionController.inFinishingTransition(this);
- if (!inFinishingTransition && !mDisplayContent.isSleeping()) {
+ if (!inFinishingTransition && (visible || !mDisplayContent.isSleeping())) {
Slog.e(TAG, "setVisibility=" + visible
+ " while transition is not collecting or finishing "
+ this + " caller=" + Debug.getCallers(8));