Merge "Do not let guest user disable secuer nfc via SettingsSlice" into qt-dev

This commit is contained in:
TreeHugger Robot
2022-06-02 06:52:53 +00:00
committed by Android (Google) Code Review

View File

@@ -17,6 +17,7 @@ package com.android.settings.nfc;
import android.content.Context;
import android.nfc.NfcAdapter;
import android.os.UserManager;
import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;
@@ -32,10 +33,12 @@ public class SecureNfcPreferenceController extends TogglePreferenceController
public static final String KEY_SECURENFC_SETTINGS = "nfc_secure_settings";
private final NfcAdapter mNfcAdapter;
private SecureNfcEnabler mSecureNfcEnabler;
private final UserManager mUserManager;
public SecureNfcPreferenceController(Context context, String key) {
super(context, key);
mNfcAdapter = NfcAdapter.getDefaultAdapter(context);
mUserManager = context.getSystemService(UserManager.class);
}
@Override
@@ -58,7 +61,11 @@ public class SecureNfcPreferenceController extends TogglePreferenceController
@Override
public boolean setChecked(boolean isChecked) {
return mNfcAdapter.enableSecureNfc(isChecked);
if (isToggleable()) {
return mNfcAdapter.enableSecureNfc(isChecked);
} else {
return false;
}
}
@Override
@@ -95,4 +102,12 @@ public class SecureNfcPreferenceController extends TogglePreferenceController
mSecureNfcEnabler.pause();
}
}
private boolean isToggleable() {
if (mUserManager.isGuestUser()) {
return false;
}
return true;
}
}