diff options
author | weijiaxu <weijiaxu@google.com> | 2017-10-31 11:11:29 -0700 |
---|---|---|
committer | zachh <zachh@google.com> | 2017-11-01 21:59:34 +0000 |
commit | 5c2d992ba8bb325eec435bef97684317fb800cc6 (patch) | |
tree | 4a104c7cea8a4a19f7dcc2c1c6937f7a4307d906 /java/com/android/dialer/simulator/impl/SimulatorConference.java | |
parent | bd03600f8403816a1225bc8208da133896ab22b4 (diff) |
Add VoLTE conference call to simulator and fix a minor issue for GSM conference.
Bug: 67785540
Test: On a walleye.
PiperOrigin-RevId: 174062497
Change-Id: I757b423f1c9ffe286fab15d3d8b5be8fe7c549dc
Diffstat (limited to 'java/com/android/dialer/simulator/impl/SimulatorConference.java')
-rw-r--r-- | java/com/android/dialer/simulator/impl/SimulatorConference.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/java/com/android/dialer/simulator/impl/SimulatorConference.java b/java/com/android/dialer/simulator/impl/SimulatorConference.java index 7468b56b5..1a12d2a9f 100644 --- a/java/com/android/dialer/simulator/impl/SimulatorConference.java +++ b/java/com/android/dialer/simulator/impl/SimulatorConference.java @@ -58,6 +58,17 @@ public final class SimulatorConference extends Conference implements SimulatorCo return simulatorConference; } + static SimulatorConference newVoLteConference(PhoneAccountHandle handle) { + SimulatorConference simulatorConference = + new SimulatorConference(handle, Simulator.CONFERENCE_TYPE_VOLTE); + simulatorConference.setConnectionCapabilities( + Connection.CAPABILITY_MUTE + | Connection.CAPABILITY_SUPPORT_HOLD + | Connection.CAPABILITY_HOLD + | Connection.CAPABILITY_MANAGE_CONFERENCE); + return simulatorConference; + } + public void addListener(@NonNull Listener listener) { listeners.add(Assert.isNotNull(listener)); } @@ -120,6 +131,11 @@ public final class SimulatorConference extends Conference implements SimulatorCo public void onSeparate(Connection connection) { LogUtil.i("SimulatorConference.onSeparate", "connection: " + connection); onEvent(new Event(Event.SEPARATE, SimulatorSimCallManager.getConnectionTag(connection), null)); + // if there is only 1 connection in a gsm conference, destroy the conference. + if (conferenceType == Simulator.CONFERENCE_TYPE_GSM && getConnections().size() == 1) { + removeConnection(getConnections().get(0)); + destroy(); + } } @Override |