Lock device on short power button press.
If a device is configured to dream on short power press, also make sure it locks as well. Also fixes an issue where the screen does not turn off when another user (not user zero) presses the power button. Bug: 260135090 Test: manually by configuring device to dream on short power press and then making sure it is also locked after press. Change-Id: I16ca4eab7a0e8a3f2ef42c090147bd7e62445c69
This commit is contained in:
@@ -1049,6 +1049,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();
|
||||
|
||||
Reference in New Issue
Block a user