Fix Settings crash when clicks Notifications am: 2790889921
Change-Id: I3449fd3cc7fe1473d3fbbd0adc7b5e31b9ec2bae
This commit is contained in:
@@ -63,6 +63,7 @@ public class FaceSettings extends DashboardFragment {
|
|||||||
private FaceSettingsAttentionPreferenceController mAttentionController;
|
private FaceSettingsAttentionPreferenceController mAttentionController;
|
||||||
private FaceSettingsRemoveButtonPreferenceController mRemoveController;
|
private FaceSettingsRemoveButtonPreferenceController mRemoveController;
|
||||||
private FaceSettingsEnrollButtonPreferenceController mEnrollController;
|
private FaceSettingsEnrollButtonPreferenceController mEnrollController;
|
||||||
|
private FaceSettingsLockscreenBypassPreferenceController mLockscreenController;
|
||||||
private List<AbstractPreferenceController> mControllers;
|
private List<AbstractPreferenceController> mControllers;
|
||||||
|
|
||||||
private List<Preference> mTogglePreferences;
|
private List<Preference> mTogglePreferences;
|
||||||
@@ -129,7 +130,7 @@ public class FaceSettings extends DashboardFragment {
|
|||||||
Preference attentionPref = findPreference(FaceSettingsAttentionPreferenceController.KEY);
|
Preference attentionPref = findPreference(FaceSettingsAttentionPreferenceController.KEY);
|
||||||
Preference confirmPref = findPreference(FaceSettingsConfirmPreferenceController.KEY);
|
Preference confirmPref = findPreference(FaceSettingsConfirmPreferenceController.KEY);
|
||||||
Preference bypassPref =
|
Preference bypassPref =
|
||||||
findPreference(FaceSettingsLockscreenBypassPreferenceController.KEY);
|
findPreference(mLockscreenController.getPreferenceKey());
|
||||||
mTogglePreferences = new ArrayList<>(
|
mTogglePreferences = new ArrayList<>(
|
||||||
Arrays.asList(keyguardPref, appPref, attentionPref, confirmPref, bypassPref));
|
Arrays.asList(keyguardPref, appPref, attentionPref, confirmPref, bypassPref));
|
||||||
|
|
||||||
@@ -142,8 +143,6 @@ 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);
|
||||||
@@ -151,7 +150,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);
|
removePreference(mLockscreenController.getPreferenceKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (savedInstanceState != null) {
|
if (savedInstanceState != null) {
|
||||||
@@ -159,6 +158,14 @@ public class FaceSettings extends DashboardFragment {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAttach(Context context) {
|
||||||
|
super.onAttach(context);
|
||||||
|
|
||||||
|
mLockscreenController = use(FaceSettingsLockscreenBypassPreferenceController.class);
|
||||||
|
mLockscreenController.setUserId(mUserId);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
@@ -263,7 +270,6 @@ public class FaceSettings extends DashboardFragment {
|
|||||||
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
||||||
controllers.add(new FaceSettingsVideoPreferenceController(context));
|
controllers.add(new FaceSettingsVideoPreferenceController(context));
|
||||||
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));
|
||||||
|
@@ -30,16 +30,10 @@ import com.android.internal.annotations.VisibleForTesting;
|
|||||||
public class FaceSettingsLockscreenBypassPreferenceController
|
public class FaceSettingsLockscreenBypassPreferenceController
|
||||||
extends FaceSettingsPreferenceController {
|
extends FaceSettingsPreferenceController {
|
||||||
|
|
||||||
static final String KEY = "security_lockscreen_bypass";
|
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
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)) {
|
||||||
|
Reference in New Issue
Block a user