aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHonggang Luo <honggang.luo@sony.com>2018-07-04 11:04:36 +0200
committerTorbjorn Eklund <torbjorn.eklund@sony.com>2018-09-20 15:20:01 +0200
commit0b38a4b98d6f76aad57fba90bd2efcd5189f6dd6 (patch)
treee8d4b3a5868d059a8cbec29fa3faef027cdc7be4
parent439561ad21ada21c32977f8189af4b01aaacaff8 (diff)
downloadims-0b38a4b98d6f76aad57fba90bd2efcd5189f6dd6.tar.gz
Use KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL when VoLTE Setting hidden
If "Enhanced 4G LTE Mode" Switch setting is hidden, use the default value specified by KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL as Enhanced 4G LTE Mode setting. Bug: 113346089 Test: Manual Change-Id: Iccb43cedac38364e619ad6f374481799606aba44
-rw-r--r--src/java/com/android/ims/ImsManager.java18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java
index dc58813f..3fb9f0c5 100644
--- a/src/java/com/android/ims/ImsManager.java
+++ b/src/java/com/android/ims/ImsManager.java
@@ -434,7 +434,8 @@ public class ImsManager {
/**
* Returns the user configuration of Enhanced 4G LTE Mode setting for slot. If the option is
- * not editable ({@link CarrierConfigManager#KEY_EDITABLE_ENHANCED_4G_LTE_BOOL} is false), or
+ * not editable ({@link CarrierConfigManager#KEY_EDITABLE_ENHANCED_4G_LTE_BOOL} is false),
+ * hidden ({@link CarrierConfigManager#KEY_HIDE_ENHANCED_4G_LTE_BOOL} is true), or
* the setting is not initialized, this method will return default value specified by
* {@link CarrierConfigManager#KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL}.
*
@@ -448,8 +449,10 @@ public class ImsManager {
boolean onByDefault = getBooleanCarrierConfig(
CarrierConfigManager.KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL);
- // If Enhanced 4G LTE Mode is uneditable or not initialized, we use the default value
+ // If Enhanced 4G LTE Mode is uneditable, hidden or not initialized, we use the default
+ // value
if (!getBooleanCarrierConfig(CarrierConfigManager.KEY_EDITABLE_ENHANCED_4G_LTE_BOOL)
+ || getBooleanCarrierConfig(CarrierConfigManager.KEY_HIDE_ENHANCED_4G_LTE_BOOL)
|| setting == SUB_PROPERTY_NOT_INITIALIZED) {
return onByDefault;
} else {
@@ -474,15 +477,16 @@ public class ImsManager {
/**
* Change persistent Enhanced 4G LTE Mode setting. If the option is not editable
- * ({@link CarrierConfigManager#KEY_EDITABLE_ENHANCED_4G_LTE_BOOL} is false), this method will
- * set the setting to the default value specified by
+ * ({@link CarrierConfigManager#KEY_EDITABLE_ENHANCED_4G_LTE_BOOL} is false)
+ * or hidden ({@link CarrierConfigManager#KEY_HIDE_ENHANCED_4G_LTE_BOOL} is true),
+ * this method will set the setting to the default value specified by
* {@link CarrierConfigManager#KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL}.
- *
*/
public void setEnhanced4gLteModeSetting(boolean enabled) {
int subId = getSubId();
- // If editable=false, we must keep default advanced 4G mode.
- if (!getBooleanCarrierConfig(CarrierConfigManager.KEY_EDITABLE_ENHANCED_4G_LTE_BOOL)) {
+ // If editable=false or hidden=true, we must keep default advanced 4G mode.
+ if (!getBooleanCarrierConfig(CarrierConfigManager.KEY_EDITABLE_ENHANCED_4G_LTE_BOOL) ||
+ getBooleanCarrierConfig(CarrierConfigManager.KEY_HIDE_ENHANCED_4G_LTE_BOOL)) {
enabled = getBooleanCarrierConfig(
CarrierConfigManager.KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL);
}