diff options
author | Santos Cordon <santoscordon@google.com> | 2014-09-04 16:16:51 -0700 |
---|---|---|
committer | Santos Cordon <santoscordon@google.com> | 2014-09-05 16:18:30 -0700 |
commit | 52c30ebe11e132c5b00a15aabdf4a411355bf0f4 (patch) | |
tree | 11bd21ac930d208b6adcfad423767cf82cffd2fd /src/com/android/incallui/Call.java | |
parent | 913ee5e915bbfd799f412dcad903dc773680aea4 (diff) | |
download | packages_apps_InCallUI-52c30ebe11e132c5b00a15aabdf4a411355bf0f4.tar.gz packages_apps_InCallUI-52c30ebe11e132c5b00a15aabdf4a411355bf0f4.tar.bz2 packages_apps_InCallUI-52c30ebe11e132c5b00a15aabdf4a411355bf0f4.zip |
Support CDMA conference calling.
Bug:17316859
Change from using GENERIC_CONFERENCE to a better MANAGE_CONFERENCE.
Change-Id: I0306aaa5cf4d35bf095d85db63b3d08395394645
Diffstat (limited to 'src/com/android/incallui/Call.java')
-rw-r--r-- | src/com/android/incallui/Call.java | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/com/android/incallui/Call.java b/src/com/android/incallui/Call.java index b2a19ab5..dd899b46 100644 --- a/src/com/android/incallui/Call.java +++ b/src/com/android/incallui/Call.java @@ -182,11 +182,6 @@ public final class Call { mTelecommCall = telecommCall; mId = ID_PREFIX + Integer.toString(sIdCounter++); updateFromTelecommCall(); - if (getState() == Call.State.INCOMING) { - CallList.getInstance().onIncoming(this, getCannedSmsResponses()); - } else { - CallList.getInstance().onUpdate(this); - } mTelecommCall.addListener(mTelecommCallListener); } @@ -306,12 +301,17 @@ public final class Call { /** Checks if the call supports the given set of capabilities supplied as a bit mask. */ public boolean can(int capabilities) { - if (PhoneCapabilities.MERGE_CALLS == (capabilities & PhoneCapabilities.MERGE_CALLS)) { - if (mTelecommCall.getConferenceableCalls().isEmpty()) { + int supportedCapabilities = mTelecommCall.getDetails().getCallCapabilities(); + + if ((capabilities & PhoneCapabilities.MERGE_CONFERENCE) != 0) { + // We allow you to merge if the capabilities allow it or if it is a call with + // conferenceable calls. + if (mTelecommCall.getConferenceableCalls().isEmpty() && + ((PhoneCapabilities.MERGE_CONFERENCE & supportedCapabilities) == 0)) { // Cannot merge calls if there are no calls to merge with. return false; } - capabilities &= ~PhoneCapabilities.MERGE_CALLS; + capabilities &= ~PhoneCapabilities.MERGE_CONFERENCE; } return (capabilities == (capabilities & mTelecommCall.getDetails().getCallCapabilities())); } |