Merge "Do not let guest user disable secuer nfc via SettingsSlice" into qt-dev am: 2f184b0ff4 am: e3bbadb7df am: 6fd7cf1993 am: 165c11c0da am: 2e68c87afc am: b2a6f3b640 am: e6ee0ba1ca
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18158869
Change-Id: Idd1b1e42bacbb74d950d9aa9a367b0f3a9fe176c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/src/com/android/settings/nfc/SecureNfcPreferenceController.java b/src/com/android/settings/nfc/SecureNfcPreferenceController.java
index e1d27d0..cf43ec3 100644
--- a/src/com/android/settings/nfc/SecureNfcPreferenceController.java
+++ b/src/com/android/settings/nfc/SecureNfcPreferenceController.java
@@ -17,6 +17,7 @@
import android.content.Context;
import android.nfc.NfcAdapter;
+import android.os.UserManager;
import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;
@@ -32,10 +33,12 @@
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 @@
@Override
public boolean setChecked(boolean isChecked) {
- return mNfcAdapter.enableSecureNfc(isChecked);
+ if (isToggleable()) {
+ return mNfcAdapter.enableSecureNfc(isChecked);
+ } else {
+ return false;
+ }
}
@Override
@@ -100,4 +107,12 @@
mSecureNfcEnabler.pause();
}
}
+
+ private boolean isToggleable() {
+ if (mUserManager.isGuestUser()) {
+ return false;
+ }
+ return true;
+ }
+
}