Merge "Revert "Use carrier config API entrypoint"" into mnc-dev
diff --git a/res/values-mcc310-mnc410/config.xml b/res/values-mcc310-mnc410/config.xml
index 7dd16b1..bf89c34 100644
--- a/res/values-mcc310-mnc410/config.xml
+++ b/res/values-mcc310-mnc410/config.xml
@@ -16,4 +16,5 @@
   -->
 
 <resources>
-</resources>
+    <bool name="support_pause_ims_video_calls" translatable="false">false</bool>
+</resources>
\ No newline at end of file
diff --git a/res/values-mcc311-mnc480/config.xml b/res/values-mcc311-mnc480/config.xml
index 5cae0bc..b7d0d6e 100755
--- a/res/values-mcc311-mnc480/config.xml
+++ b/res/values-mcc311-mnc480/config.xml
@@ -23,4 +23,5 @@
     <!-- Determine whether the voicemail notification is persistent in the notification bar.
          If true, the voicemail notifications cannot be dismissed from the notification bar. -->
     <bool name="voicemail_notification_persistent">true</bool>
+    <bool name="support_pause_ims_video_calls" translatable="false">true</bool>
 </resources>
diff --git a/res/values/config.xml b/res/values/config.xml
index 3df92f8..61af525 100755
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -157,6 +157,9 @@
          If true, the voicemail notifications cannot be dismissed from the notification bar. -->
     <bool name="voicemail_notification_persistent">false</bool>
 
+    <!-- For IMS video over LTE calls, determines whether video pause signalling is supported. -->
+    <bool name="support_pause_ims_video_calls" translatable="false">true</bool>
+
     <!-- Disables dialing "*228" (OTASP provisioning) on CDMA carriers where it is not supported or
          is potentially harmful by locking the SIM to 3G. -->
     <string name="config_disable_cdma_activation_code" translatable="false">false</string>
diff --git a/src/com/android/services/telephony/TelecomAccountRegistry.java b/src/com/android/services/telephony/TelecomAccountRegistry.java
index 3a94f98..eab1ced 100644
--- a/src/com/android/services/telephony/TelecomAccountRegistry.java
+++ b/src/com/android/services/telephony/TelecomAccountRegistry.java
@@ -27,12 +27,9 @@
 import android.graphics.drawable.Drawable;
 import android.graphics.drawable.Icon;
 import android.net.Uri;
-import android.os.PersistableBundle;
-import android.os.RemoteException;
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
-import android.telephony.CarrierConfigManager;
 import android.telephony.PhoneStateListener;
 import android.telephony.ServiceState;
 import android.telephony.SubscriptionInfo;
@@ -41,7 +38,6 @@
 import android.telephony.TelephonyManager;
 import android.text.TextUtils;
 
-import com.android.internal.telephony.ICarrierConfigLoader;
 import com.android.internal.telephony.Phone;
 import com.android.internal.telephony.PhoneFactory;
 import com.android.internal.telephony.PhoneProxy;
@@ -236,20 +232,10 @@
                 configuration.mnc = subscriptionInfo.getMnc();
             }
 
-            // Check if IMS video pause is supported.
-            mIsVideoPauseSupported = false;
-
-            ICarrierConfigLoader configLoader =
-                (ICarrierConfigLoader) mContext.getSystemService(Context.CARRIER_CONFIG_SERVICE);
-            if (configLoader != null) {
-                try {
-                    PersistableBundle b = configLoader.getConfigForSubId(mPhone.getSubId());
-                    mIsVideoPauseSupported
-                        = b.getBoolean(CarrierConfigManager.KEY_SUPPORT_PAUSE_IMS_VIDEO_CALLS_BOOL);
-                } catch (RemoteException e) {
-                    Log.i(this, "updateVideoPauseSupport: unable to access carrier config service");
-                }
-            }
+            // Load the MNC/MCC specific configuration.
+            Context subContext = mContext.createConfigurationContext(configuration);
+            mIsVideoPauseSupported = subContext.getResources().getBoolean(
+                    R.bool.support_pause_ims_video_calls);
         }
 
         /**