diff options
| author | 2022-12-10 03:52:47 +0000 | |
|---|---|---|
| committer | 2022-12-10 03:52:47 +0000 | |
| commit | bc77c0a8b1c3f65aa66cc38e4a5bcfbbac2a7c9f (patch) | |
| tree | c3899db08ec959d297ab5fe0dd682eb88dc36af0 | |
| parent | a2907066179cc7fd7be870edf73dc5f178b12dd5 (diff) | |
| parent | 37929e00a5adf1e3e43a8f544230a8e3d546f262 (diff) | |
Merge "Lock device on short power button press." into tm-qpr-dev am: 37929e00a5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20583933
Change-Id: I2494354420ebfe49315462a9728641d2cba48eb6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/core/java/com/android/server/policy/PhoneWindowManager.java | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java index 9b4498f7bb7e..a154552914be 100644 --- a/services/core/java/com/android/server/policy/PhoneWindowManager.java +++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java @@ -1051,6 +1051,19 @@ public class PhoneWindowManager implements WindowManagerPolicy { return; } + // Make sure the device locks. Unfortunately, this has the side-effect of briefly revealing + // the lock screen before the dream appears. Note that this locking behavior needs to + // happen regardless of whether we end up dreaming (below) or not. + // TODO(b/261662912): Find a better way to lock the device that doesn't result in jank. + lockNow(null); + + // Don't dream if the user isn't user zero. + // TODO(b/261907079): Move this check to DreamManagerService#canStartDreamingInternal(). + if (ActivityManager.getCurrentUser() != UserHandle.USER_SYSTEM) { + noDreamAction.run(); + return; + } + final DreamManagerInternal dreamManagerInternal = getDreamManagerInternal(); if (dreamManagerInternal == null || !dreamManagerInternal.canStartDreaming(isScreenOn)) { noDreamAction.run(); |