aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHall Liu <hallliu@google.com>2020-01-16 10:17:55 -0800
committerandroid-build-merger <android-build-merger@google.com>2020-01-16 10:17:55 -0800
commit585ca17cf52c13ee3e145cd816bda4fa736c8fca (patch)
tree337fbaea13979444f9b48922e949f9f33b9f28ad
parentf25d33be631893925bbd23506159dc0a14f8d00b (diff)
parente4b4098e894437b6cf5603436500c66a27aa4ee5 (diff)
downloadims-585ca17cf52c13ee3e145cd816bda4fa736c8fca.tar.gz
Merge "Revert submission"
am: e4b4098e89 Change-Id: Iabc85bbce26975f7d4582106e9ea2b74b3fac6c9
-rw-r--r--src/java/com/android/ims/ImsManager.java28
1 files changed, 11 insertions, 17 deletions
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java
index 378eec8a..877c1a79 100644
--- a/src/java/com/android/ims/ImsManager.java
+++ b/src/java/com/android/ims/ImsManager.java
@@ -30,6 +30,7 @@ import android.os.PersistableBundle;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemProperties;
+import android.provider.Settings;
import android.telecom.TelecomManager;
import android.telephony.AccessNetworkConstants;
import android.telephony.CarrierConfigManager;
@@ -2039,22 +2040,21 @@ public class ImsManager implements IFeatureConnector {
}
public boolean updateRttConfigValue() {
- // If there's no active sub anywhere on the device, enable RTT on the modem so that
- // the device can make an emergency call.
boolean isCarrierSupported =
getBooleanCarrierConfig(CarrierConfigManager.KEY_RTT_SUPPORTED_BOOL);
+ boolean isRttUiSettingEnabled = Settings.Secure.getInt(mContext.getContentResolver(),
+ Settings.Secure.RTT_CALLING_MODE, 0) != 0;
+ boolean isRttAlwaysOnCarrierConfig = getBooleanCarrierConfig(
+ CarrierConfigManager.KEY_IGNORE_RTT_MODE_SETTING_BOOL);
- boolean isActiveSubscriptionPresent = isActiveSubscriptionPresent();
+ boolean shouldImsRttBeOn = isRttUiSettingEnabled || isRttAlwaysOnCarrierConfig;
+ logi("update RTT: settings value: " + isRttUiSettingEnabled + " always-on carrierconfig: "
+ + isRttAlwaysOnCarrierConfig);
- logi("update RTT: is carrier enabled: "
- + isCarrierSupported + "; is active sub present: "
- + isActiveSubscriptionPresent);
-
- if (isCarrierSupported || !isActiveSubscriptionPresent) {
- setRttConfig(true);
- return true;
+ if (isCarrierSupported) {
+ setRttConfig(shouldImsRttBeOn);
}
- return false;
+ return isCarrierSupported && shouldImsRttBeOn;
}
private void setRttConfig(boolean enabled) {
@@ -2712,12 +2712,6 @@ public class ImsManager implements IFeatureConnector {
subId != SubscriptionManager.DEFAULT_SUBSCRIPTION_ID;
}
- private boolean isActiveSubscriptionPresent() {
- SubscriptionManager sm = (SubscriptionManager) mContext.getSystemService(
- Context.TELEPHONY_SUBSCRIPTION_SERVICE);
- return sm.getActiveSubscriptionIdList().length > 0;
- }
-
private void updateImsCarrierConfigs(PersistableBundle configs) throws ImsException {
checkAndThrowExceptionIfServiceUnavailable();