diff options
author | Sungmin Choi <sungmin.choi@lge.com> | 2015-12-23 14:24:52 +0900 |
---|---|---|
committer | Pavel Zhamaitsiak <pavelz@google.com> | 2016-01-11 11:06:41 -0800 |
commit | 577add865a0ca3d225b0fdc248b099ea05984a75 (patch) | |
tree | f99ecc2cb7120659a525735b429af444f2605f1f /src | |
parent | 119d589ea5aa9c2ccc5164279d718a20d0865f20 (diff) | |
download | packages_apps_Settings-577add865a0ca3d225b0fdc248b099ea05984a75.zip packages_apps_Settings-577add865a0ca3d225b0fdc248b099ea05984a75.tar.gz packages_apps_Settings-577add865a0ca3d225b0fdc248b099ea05984a75.tar.bz2 |
Select or not Wi-Fi Calling preference as CarrierConfig
Some operators support Wi-Fi Calling only, not VoLTE.
They don't need "Cellular preferred" option.
In this case, set uneditalbe attribute for preferred preference.
Bug: 26299288
Change-Id: I58b44bbd85bb5ef436d32a5e34d7372532695b91
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/settings/WifiCallingSettings.java | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/com/android/settings/WifiCallingSettings.java b/src/com/android/settings/WifiCallingSettings.java index 787ccb4..f8446f8 100644 --- a/src/com/android/settings/WifiCallingSettings.java +++ b/src/com/android/settings/WifiCallingSettings.java @@ -23,9 +23,11 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; +import android.os.PersistableBundle; import android.preference.ListPreference; import android.preference.Preference; import android.preference.PreferenceScreen; +import android.telephony.CarrierConfigManager; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; import android.util.Log; @@ -58,6 +60,7 @@ public class WifiCallingSettings extends SettingsPreferenceFragment private TextView mEmptyView; private boolean mValidListener = false; + private boolean mEditableWfcMode = true; private final PhoneStateListener mPhoneStateListener = new PhoneStateListener() { /* @@ -161,6 +164,15 @@ public class WifiCallingSettings extends SettingsPreferenceFragment mIntentFilter = new IntentFilter(); mIntentFilter.addAction(ImsManager.ACTION_IMS_REGISTRATION_ERROR); + + CarrierConfigManager configManager = (CarrierConfigManager) + getSystemService(Context.CARRIER_CONFIG_SERVICE); + if (configManager != null) { + PersistableBundle b = configManager.getConfig(); + if (b != null) { + mEditableWfcMode = b.getBoolean(CarrierConfigManager.KEY_EDITABLE_WFC_MODE_BOOL); + } + } } @Override @@ -240,6 +252,7 @@ public class WifiCallingSettings extends SettingsPreferenceFragment } else { preferenceScreen.removePreference(mButtonWfcMode); } + preferenceScreen.setEnabled(mEditableWfcMode); } @Override |