Fix "Skip lock screen" not working for secondary user

Bug: 140878309
Test: the option is not grayed out for secondary user.
Change-Id: I2413aa3c634e89a90d104e9ad60df15e49c75ed2
This commit is contained in:
Ilya Matyukhin
2019-11-25 17:01:22 -08:00
parent 810f7861f0
commit e17caeea3f
2 changed files with 8 additions and 0 deletions

View File

@@ -149,6 +149,8 @@ public class FaceSettings extends DashboardFragment {
((FaceSettingsPreferenceController) controller).setUserId(mUserId); ((FaceSettingsPreferenceController) controller).setUserId(mUserId);
} else if (controller instanceof FaceSettingsEnrollButtonPreferenceController) { } else if (controller instanceof FaceSettingsEnrollButtonPreferenceController) {
((FaceSettingsEnrollButtonPreferenceController) controller).setUserId(mUserId); ((FaceSettingsEnrollButtonPreferenceController) controller).setUserId(mUserId);
} else if (controller instanceof FaceSettingsLockscreenBypassPreferenceController) {
((FaceSettingsLockscreenBypassPreferenceController) controller).setUserId(mUserId);
} }
} }
mRemoveController.setUserId(mUserId); mRemoveController.setUserId(mUserId);
@@ -156,6 +158,7 @@ public class FaceSettings extends DashboardFragment {
// Don't show keyguard controller for work profile settings. // Don't show keyguard controller for work profile settings.
if (mUserManager.isManagedProfile(mUserId)) { if (mUserManager.isManagedProfile(mUserId)) {
removePreference(FaceSettingsKeyguardPreferenceController.KEY); removePreference(FaceSettingsKeyguardPreferenceController.KEY);
removePreference(FaceSettingsLockscreenBypassPreferenceController.KEY);
} }
if (savedInstanceState != null) { if (savedInstanceState != null) {
@@ -266,6 +269,7 @@ public class FaceSettings extends DashboardFragment {
Lifecycle lifecycle) { Lifecycle lifecycle) {
final List<AbstractPreferenceController> controllers = new ArrayList<>(); final List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(new FaceSettingsKeyguardPreferenceController(context)); controllers.add(new FaceSettingsKeyguardPreferenceController(context));
controllers.add(new FaceSettingsLockscreenBypassPreferenceController(context));
controllers.add(new FaceSettingsAppPreferenceController(context)); controllers.add(new FaceSettingsAppPreferenceController(context));
controllers.add(new FaceSettingsAttentionPreferenceController(context)); controllers.add(new FaceSettingsAttentionPreferenceController(context));
controllers.add(new FaceSettingsRemoveButtonPreferenceController(context)); controllers.add(new FaceSettingsRemoveButtonPreferenceController(context));

View File

@@ -36,6 +36,10 @@ public class FaceSettingsLockscreenBypassPreferenceController
protected FaceManager mFaceManager; protected FaceManager mFaceManager;
private UserManager mUserManager; private UserManager mUserManager;
public FaceSettingsLockscreenBypassPreferenceController(Context context) {
this(context, KEY);
}
public FaceSettingsLockscreenBypassPreferenceController(Context context, String preferenceKey) { public FaceSettingsLockscreenBypassPreferenceController(Context context, String preferenceKey) {
super(context, preferenceKey); super(context, preferenceKey);
if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) { if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) {