Add or remove WFC setting when Wireless settings activity is resumed
WFC availability changes when SIM is inserted/removed. Settings
should be updated if this has happened.
Bug: 22642035
Change-Id: I361748440033e703b771175aa79767c53f0da458
diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index 32d50bf..8cc98cc 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -237,11 +237,7 @@
mAirplaneModeEnabler = new AirplaneModeEnabler(activity, mAirplaneModePreference);
mNfcEnabler = new NfcEnabler(activity, nfc, androidBeam);
- if (ImsManager.isWfcEnabledByPlatform(activity)) {
- mButtonWfc = (PreferenceScreen) findPreference(KEY_WFC_SETTINGS);
- } else {
- removePreference(KEY_WFC_SETTINGS);
- }
+ mButtonWfc = (PreferenceScreen) findPreference(KEY_WFC_SETTINGS);
// Remove NSD checkbox by default
getPreferenceScreen().removePreference(nsd);
@@ -373,10 +369,15 @@
mNsdEnabler.resume();
}
+ // update WFC setting
final Context context = getActivity();
if (ImsManager.isWfcEnabledByPlatform(context)) {
+ getPreferenceScreen().addPreference(mButtonWfc);
+
mButtonWfc.setSummary(WifiCallingSettings.getWfcModeSummary(
context, ImsManager.getWfcMode(context)));
+ } else {
+ removePreference(KEY_WFC_SETTINGS);
}
}