From e17caeea3f633d60f1f8e0e2f5b8857c62f3e320 Mon Sep 17 00:00:00 2001 From: Ilya Matyukhin Date: Mon, 25 Nov 2019 17:01:22 -0800 Subject: [PATCH] Fix "Skip lock screen" not working for secondary user Bug: 140878309 Test: the option is not grayed out for secondary user. Change-Id: I2413aa3c634e89a90d104e9ad60df15e49c75ed2 --- src/com/android/settings/biometrics/face/FaceSettings.java | 4 ++++ .../FaceSettingsLockscreenBypassPreferenceController.java | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/com/android/settings/biometrics/face/FaceSettings.java b/src/com/android/settings/biometrics/face/FaceSettings.java index eea3bd59762..86b628ec255 100644 --- a/src/com/android/settings/biometrics/face/FaceSettings.java +++ b/src/com/android/settings/biometrics/face/FaceSettings.java @@ -149,6 +149,8 @@ public class FaceSettings extends DashboardFragment { ((FaceSettingsPreferenceController) controller).setUserId(mUserId); } else if (controller instanceof FaceSettingsEnrollButtonPreferenceController) { ((FaceSettingsEnrollButtonPreferenceController) controller).setUserId(mUserId); + } else if (controller instanceof FaceSettingsLockscreenBypassPreferenceController) { + ((FaceSettingsLockscreenBypassPreferenceController) controller).setUserId(mUserId); } } mRemoveController.setUserId(mUserId); @@ -156,6 +158,7 @@ public class FaceSettings extends DashboardFragment { // Don't show keyguard controller for work profile settings. if (mUserManager.isManagedProfile(mUserId)) { removePreference(FaceSettingsKeyguardPreferenceController.KEY); + removePreference(FaceSettingsLockscreenBypassPreferenceController.KEY); } if (savedInstanceState != null) { @@ -266,6 +269,7 @@ public class FaceSettings extends DashboardFragment { Lifecycle lifecycle) { final List controllers = new ArrayList<>(); controllers.add(new FaceSettingsKeyguardPreferenceController(context)); + controllers.add(new FaceSettingsLockscreenBypassPreferenceController(context)); controllers.add(new FaceSettingsAppPreferenceController(context)); controllers.add(new FaceSettingsAttentionPreferenceController(context)); controllers.add(new FaceSettingsRemoveButtonPreferenceController(context)); diff --git a/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java b/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java index e717cb2008b..44165b8211a 100644 --- a/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java +++ b/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java @@ -36,6 +36,10 @@ public class FaceSettingsLockscreenBypassPreferenceController protected FaceManager mFaceManager; private UserManager mUserManager; + public FaceSettingsLockscreenBypassPreferenceController(Context context) { + this(context, KEY); + } + public FaceSettingsLockscreenBypassPreferenceController(Context context, String preferenceKey) { super(context, preferenceKey); if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) {