[automerger] [RESTRICT AUTOMERGE] Make Lock task default behaviour consistent with Settings. am: fe9f143d2c
Change-Id: I29e8b905ef0450d9bd7a7fcd82411cffa84394d4
This commit is contained in:
@@ -3969,18 +3969,11 @@ public final class ActivityStackSupervisor implements DisplayListener {
|
||||
mLockTaskNotify = new LockTaskNotify(mService.mContext);
|
||||
}
|
||||
mLockTaskNotify.show(false);
|
||||
try {
|
||||
boolean shouldLockKeyguard = Settings.Secure.getInt(
|
||||
mService.mContext.getContentResolver(),
|
||||
Settings.Secure.LOCK_TO_APP_EXIT_LOCKED) != 0;
|
||||
if (mLockTaskModeState == LOCK_TASK_MODE_PINNED && shouldLockKeyguard) {
|
||||
mWindowManager.lockNow(null);
|
||||
mWindowManager.dismissKeyguard();
|
||||
new LockPatternUtils(mService.mContext)
|
||||
.requireCredentialEntry(UserHandle.USER_ALL);
|
||||
}
|
||||
} catch (SettingNotFoundException e) {
|
||||
// No setting, don't lock.
|
||||
if (mLockTaskModeState == LOCK_TASK_MODE_PINNED && shouldLockKeyguard()) {
|
||||
mWindowManager.lockNow(null);
|
||||
mWindowManager.dismissKeyguard();
|
||||
new LockPatternUtils(mService.mContext)
|
||||
.requireCredentialEntry(UserHandle.USER_ALL);
|
||||
}
|
||||
} catch (RemoteException ex) {
|
||||
throw new RuntimeException(ex);
|
||||
@@ -4017,6 +4010,21 @@ public final class ActivityStackSupervisor implements DisplayListener {
|
||||
}
|
||||
}
|
||||
|
||||
private boolean shouldLockKeyguard() {
|
||||
// This functionality should be kept consistent with
|
||||
// com.android.settings.security.ScreenPinningSettings (see b/127605586)
|
||||
try {
|
||||
return Settings.Secure.getInt(
|
||||
mService.mContext.getContentResolver(),
|
||||
Settings.Secure.LOCK_TO_APP_EXIT_LOCKED) != 0;
|
||||
} catch (Settings.SettingNotFoundException e) {
|
||||
// Log to SafetyNet for b/127605586
|
||||
android.util.EventLog.writeEvent(0x534e4554, "127605586", -1, "");
|
||||
LockPatternUtils lockPatternUtils = new LockPatternUtils(mService.mContext);
|
||||
return lockPatternUtils.isSecure(mCurrentUser);
|
||||
}
|
||||
}
|
||||
|
||||
class ActivityContainer extends android.app.IActivityContainer.Stub {
|
||||
final static int FORCE_NEW_TASK_FLAGS = FLAG_ACTIVITY_NEW_TASK |
|
||||
FLAG_ACTIVITY_MULTIPLE_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION;
|
||||
|
||||
Reference in New Issue
Block a user