Promotion of atel.lnx.2.0-00057.

CRs      Change ID                                   Subject
--------------------------------------------------------------------------------------------------------------
2004551   I3a833fb1dc0f40d5544b627efd91f3a6d3c12131   IMS: Fix held call is not showing for some operators

Change-Id: I54a8f59eb1916f3a6622794c5eefecf3f930c563
CRs-Fixed: 2004551
diff --git a/InCallUI/src/com/android/incallui/CallCardPresenter.java b/InCallUI/src/com/android/incallui/CallCardPresenter.java
index 63d98f4..496c349 100644
--- a/InCallUI/src/com/android/incallui/CallCardPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallCardPresenter.java
@@ -60,6 +60,8 @@
 
 import java.lang.ref.WeakReference;
 
+import org.codeaurora.ims.utils.QtiImsExtUtils;
+
 import static com.android.contacts.common.compat.CallSdkCompat.Details.PROPERTY_ENTERPRISE_CALL;
 /**
  * Presenter for the Call Card Fragment.
@@ -956,9 +958,13 @@
             return;
         }
 
-        final boolean notUpdateSecondary = mSecondary.getState() == Call.State.ACTIVE
-                && !mSecondary.can(android.telecom.Call.Details.CAPABILITY_SUPPORT_HOLD)
-                && !mSecondary.can(android.telecom.Call.Details.CAPABILITY_HOLD);
+        boolean notUpdateSecondary = false;
+        if (QtiImsExtUtils.isCarrierConfigEnabled(mContext,
+                "hide_held_call_when_end_conf_call")) {
+            notUpdateSecondary = mSecondary.getState() == Call.State.ACTIVE
+                    && !mSecondary.can(android.telecom.Call.Details.CAPABILITY_SUPPORT_HOLD)
+                    && !mSecondary.can(android.telecom.Call.Details.CAPABILITY_HOLD);
+        }
         Log.d(TAG, "notUpdateSecondary:" + notUpdateSecondary);
         if (mSecondary.isConferenceCall()) {
             ui.setSecondary(