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

This commit is contained in:
Daniel Nishi
2017-08-01 23:11:18 +00:00
committed by Android (Google) Code Review

View File

@@ -66,10 +66,8 @@ public class NfcPreferenceController extends PreferenceController
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();
}
@@ -133,6 +131,12 @@ public class NfcPreferenceController extends PreferenceController
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);