Merge "Merge RP1A.200221.003" into r-keystone-qcom-dev
diff --git a/src/com/android/services/telephony/ImsConference.java b/src/com/android/services/telephony/ImsConference.java
index d4815bf..ca91b60 100644
--- a/src/com/android/services/telephony/ImsConference.java
+++ b/src/com/android/services/telephony/ImsConference.java
@@ -1431,6 +1431,17 @@
}
/**
+ * @return {@code true} if the carrier associated with the conference supports multianchor
+ * conference, {@code false} otherwise.
+ */
+ public boolean isMultiAnchorConferenceSupported() {
+ PersistableBundle b = getCarrierConfig();
+ // Return false if the CarrierConfig is unavailable
+ return b != null && b.getBoolean(
+ CarrierConfigManager.KEY_CARRIER_SUPPORTS_MULTIANCHOR_CONFERENCE);
+ }
+
+ /**
* @return The maximum size of a conference call where
* {@link #isMaximumConferenceSizeEnforced()} is true.
*/
diff --git a/src/com/android/services/telephony/ImsConferenceController.java b/src/com/android/services/telephony/ImsConferenceController.java
index 8789ba8..aa3f783 100644
--- a/src/com/android/services/telephony/ImsConferenceController.java
+++ b/src/com/android/services/telephony/ImsConferenceController.java
@@ -266,7 +266,8 @@
Log.d(this, "recalc - %s %s", conference.getState(), conference);
}
- if (!conference.isConferenceHost()) {
+ if (!conference.isConferenceHost() &&
+ (!conference.isMultiAnchorConferenceSupported())) {
if (Log.VERBOSE) {
Log.v(this, "skipping conference (not hosted on this device): %s", conference);
}
diff --git a/src/com/android/services/telephony/TelephonyConnection.java b/src/com/android/services/telephony/TelephonyConnection.java
index 6c3b96b..a690208 100755
--- a/src/com/android/services/telephony/TelephonyConnection.java
+++ b/src/com/android/services/telephony/TelephonyConnection.java
@@ -1479,6 +1479,7 @@
mWasImsConnection = true;
} else {
extrasToRemove.add(QtiImsExtUtils.QTI_IMS_PHONE_ID_EXTRA_KEY);
+ extrasToRemove.add(QtiImsExtUtils.EXTRA_TIR_OVERWRITE_ALLOWED);
}
mIsMultiParty = mOriginalConnection.isMultiparty();