From 8d68a01edbd8684cb4fb13111cbc1fd4d5ff8d1c Mon Sep 17 00:00:00 2001 From: Tyler Gunn Date: Thu, 2 Oct 2014 15:25:08 -0700 Subject: Conference call merge button visibility issue. (2/2) - Adding onConferenceableCallsChanged override in Incall Call object. This ensures that changes to the conferenceable calls list for the active call triggers UI updates as required. - Added onDetailsChanged listener in CallButtonPresenter; this ensures that changes to the call which occur without it changing status are reflected in the UI. Bug: 17767618 Change-Id: I6c6175c0bab46989ddfc4c4d8f2087e527febbeb --- InCallUI/src/com/android/incallui/Call.java | 6 +++ .../com/android/incallui/CallButtonPresenter.java | 43 ++++++++++++++++++++-- 2 files changed, 45 insertions(+), 4 deletions(-) diff --git a/InCallUI/src/com/android/incallui/Call.java b/InCallUI/src/com/android/incallui/Call.java index d21da7888..45a753f10 100644 --- a/InCallUI/src/com/android/incallui/Call.java +++ b/InCallUI/src/com/android/incallui/Call.java @@ -167,6 +167,12 @@ public final class Call { public void onCallDestroyed(android.telecom.Call call) { call.removeListener(mTelecommCallListener); } + + @Override + public void onConferenceableCallsChanged(android.telecom.Call call, + List conferenceableCalls) { + update(); + } }; private final android.telecom.Call mTelecommCall; diff --git a/InCallUI/src/com/android/incallui/CallButtonPresenter.java b/InCallUI/src/com/android/incallui/CallButtonPresenter.java index f6228bc23..ca4eb8838 100644 --- a/InCallUI/src/com/android/incallui/CallButtonPresenter.java +++ b/InCallUI/src/com/android/incallui/CallButtonPresenter.java @@ -27,14 +27,18 @@ import com.android.incallui.AudioModeProvider.AudioModeListener; import com.android.incallui.InCallPresenter.InCallState; import com.android.incallui.InCallPresenter.InCallStateListener; import com.android.incallui.InCallPresenter.IncomingCallListener; +import com.android.incallui.InCallPresenter.InCallDetailsListener; import android.telephony.PhoneNumberUtils; +import java.util.Objects; + /** * Logic for call buttons. */ public class CallButtonPresenter extends Presenter - implements InCallStateListener, AudioModeListener, IncomingCallListener { + implements InCallStateListener, AudioModeListener, IncomingCallListener, + InCallDetailsListener { private Call mCall; private boolean mAutomaticallyMuted = false; @@ -52,6 +56,7 @@ public class CallButtonPresenter extends Presenter