confirm SIM deletion should be disabled when the guest mode is enabled.
Bug: 228451314 Change-Id: I83337980fe4bcfa6771de290fd0e44217ea51dec Test: manual
This commit is contained in:
@@ -19,6 +19,7 @@ package com.android.settings.security;
|
|||||||
import android.app.KeyguardManager;
|
import android.app.KeyguardManager;
|
||||||
import android.app.settings.SettingsEnums;
|
import android.app.settings.SettingsEnums;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.os.UserManager;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
@@ -39,6 +40,8 @@ public class ConfirmSimDeletionPreferenceController extends BasePreferenceContro
|
|||||||
ConfirmationSimDeletionPredicate.KEY_CONFIRM_SIM_DELETION;
|
ConfirmationSimDeletionPredicate.KEY_CONFIRM_SIM_DELETION;
|
||||||
private boolean mConfirmationDefaultOn;
|
private boolean mConfirmationDefaultOn;
|
||||||
private MetricsFeatureProvider mMetricsFeatureProvider;
|
private MetricsFeatureProvider mMetricsFeatureProvider;
|
||||||
|
private UserManager mUserManager;
|
||||||
|
private KeyguardManager mKeyguardManager;
|
||||||
|
|
||||||
public ConfirmSimDeletionPreferenceController(Context context, String key) {
|
public ConfirmSimDeletionPreferenceController(Context context, String key) {
|
||||||
super(context, key);
|
super(context, key);
|
||||||
@@ -46,6 +49,9 @@ public class ConfirmSimDeletionPreferenceController extends BasePreferenceContro
|
|||||||
context.getResources()
|
context.getResources()
|
||||||
.getBoolean(R.bool.config_sim_deletion_confirmation_default_on);
|
.getBoolean(R.bool.config_sim_deletion_confirmation_default_on);
|
||||||
mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
|
mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
|
||||||
|
|
||||||
|
mUserManager = context.getSystemService(UserManager.class);
|
||||||
|
mKeyguardManager = mContext.getSystemService(KeyguardManager.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -99,8 +105,7 @@ public class ConfirmSimDeletionPreferenceController extends BasePreferenceContro
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateState(Preference preference) {
|
public void updateState(Preference preference) {
|
||||||
final KeyguardManager keyguardManager = mContext.getSystemService(KeyguardManager.class);
|
if (!mKeyguardManager.isKeyguardSecure() && mUserManager.isGuestUser()) {
|
||||||
if (!keyguardManager.isKeyguardSecure()) {
|
|
||||||
preference.setEnabled(false);
|
preference.setEnabled(false);
|
||||||
if (preference instanceof TwoStatePreference) {
|
if (preference instanceof TwoStatePreference) {
|
||||||
((TwoStatePreference) preference).setChecked(false);
|
((TwoStatePreference) preference).setChecked(false);
|
||||||
|
Reference in New Issue
Block a user