Merge "Make nfc toggability logic static and public." into oc-dr1-dev am: b27d65fa55

am: db1158f855

Change-Id: I39a83eff9705f8ed5e66a4ea4aeada9f262d12aa
This commit is contained in:
Daniel Nishi
2017-08-01 23:27:41 +00:00
committed by android-build-merger

View File

@@ -64,10 +64,8 @@ public class NfcPreferenceController extends AbstractPreferenceController
mBeamPreference = (RestrictedPreference) screen.findPreference(
KEY_ANDROID_BEAM_SETTINGS);
mNfcEnabler = new NfcEnabler(mContext, mNfcPreference, mBeamPreference);
String toggleable = Settings.Global.getString(mContext.getContentResolver(),
Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS);
// Manually set dependencies for NFC when not toggleable.
if (toggleable == null || !toggleable.contains(Settings.Global.RADIO_NFC)) {
if (!isToggleableInAirplaneMode(mContext)) {
mAirplaneModeObserver = new AirplaneModeObserver();
updateNfcPreference();
}
@@ -131,6 +129,12 @@ public class NfcPreferenceController extends AbstractPreferenceController
mBeamPreference.setEnabled(toggleable);
}
public static boolean isToggleableInAirplaneMode(Context context) {
String toggleable = Settings.Global.getString(context.getContentResolver(),
Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS);
return toggleable != null && toggleable.contains(Settings.Global.RADIO_NFC);
}
private final class AirplaneModeObserver extends ContentObserver {
private final Uri AIRPLANE_MODE_URI =
Settings.Global.getUriFor(Settings.Global.AIRPLANE_MODE_ON);