Loading InCallUI/src/com/android/incallui/CallButtonFragment.java +70 −85 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.incallui; import static com.android.incallui.CallButtonFragment.Buttons.*; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; Loading Loading @@ -44,7 +46,6 @@ import android.widget.Toast; import android.widget.PopupMenu.OnDismissListener; import android.widget.PopupMenu.OnMenuItemClickListener; import com.android.contacts.common.util.MaterialColorMapUtils; import com.android.contacts.common.util.MaterialColorMapUtils.MaterialPalette; import java.util.ArrayList; Loading @@ -55,8 +56,26 @@ public class CallButtonFragment extends BaseFragment<CallButtonPresenter, CallButtonPresenter.CallButtonUi> implements CallButtonPresenter.CallButtonUi, OnMenuItemClickListener, OnDismissListener, View.OnClickListener { private CompoundButton mAudioButton; private static final int INVALID_INDEX = -1; public interface Buttons { public static final int BUTTON_AUDIO = 1; public static final int BUTTON_DOWNGRADE_TO_VOICE = 2; public static final int BUTTON_MUTE = 3; public static final int BUTTON_DIALPAD = 4; public static final int BUTTON_HOLD = 5; public static final int BUTTON_SWAP = 6; public static final int BUTTON_UPGRADE_TO_VIDEO = 7; public static final int BUTTON_SWITCH_CAMERA = 8; public static final int BUTTON_ADD_CALL = 9; public static final int BUTTON_MERGE = 10; public static final int BUTTON_PAUSE_VIDEO = 11; public static final int BUTTON_MANAGE_VIDEO_CONFERENCE = 12; public static final int BUTTON_OVERFLOW = 13; } private CompoundButton mAudioButton; private ImageButton mChangeToVoiceButton; private CompoundButton mMuteButton; private CompoundButton mShowDialpadButton; Loading Loading @@ -157,7 +176,6 @@ public class CallButtonFragment int id = view.getId(); Log.d(this, "onClick(View " + view + ", id " + id + ")..."); boolean isClickHandled = true; switch(id) { case R.id.audioButton: onAudioButtonClicked(); Loading Loading @@ -206,17 +224,14 @@ public class CallButtonFragment onManageVideoCallConferenceClicked(); break; default: isClickHandled = false; Log.wtf(this, "onClick: unexpected"); break; return; } if (isClickHandled) { view.performHapticFeedback( HapticFeedbackConstants.VIRTUAL_KEY, HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING); } } public void updateColors() { MaterialPalette themeColors = InCallPresenter.getInstance().getThemeColors(); Loading Loading @@ -355,23 +370,53 @@ public class CallButtonFragment } @Override public void showAudioButton(boolean show) { mAudioButton.setVisibility(show ? View.VISIBLE : View.GONE); public void showButton(int buttonId, boolean show) { final View button = getButtonById(buttonId); if (button != null) { button.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void showChangeToVoiceButton(boolean show) { mChangeToVoiceButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void enableMute(boolean enabled) { mMuteButton.setEnabled(enabled); public void enableButton(int buttonId, boolean enable) { final View button = getButtonById(buttonId); if (button != null) { button.setEnabled(enable); } } @Override public void showDialpadButton(boolean show) { mShowDialpadButton.setVisibility(show ? View.VISIBLE : View.GONE); private View getButtonById(int id) { switch (id) { case BUTTON_AUDIO: return mAudioButton; case BUTTON_DOWNGRADE_TO_VOICE: return mChangeToVoiceButton; case BUTTON_MUTE: return mMuteButton; case BUTTON_DIALPAD: return mShowDialpadButton; case BUTTON_HOLD: return mHoldButton; case BUTTON_SWAP: return mSwapButton; case BUTTON_UPGRADE_TO_VIDEO: return mChangeToVideoButton; case BUTTON_SWITCH_CAMERA: return mSwitchCameraButton; case BUTTON_ADD_CALL: return mAddCallButton; case BUTTON_MERGE: return mMergeButton; case BUTTON_PAUSE_VIDEO: return mPauseVideoButton; case BUTTON_MANAGE_VIDEO_CONFERENCE: return mManageVideoCallConferenceButton; case BUTTON_OVERFLOW: return mOverflowButton; default: Log.w(this, "Invalid button id"); return null; } } @Override Loading @@ -382,75 +427,15 @@ public class CallButtonFragment } @Override public void showHoldButton(boolean show) { mHoldButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void enableHold(boolean enabled) { mHoldButton.setEnabled(enabled); } @Override public void showSwapButton(boolean show) { mSwapButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void showChangeToVideoButton(boolean show) { mChangeToVideoButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void enableChangeToVideoButton(boolean enable) { mChangeToVideoButton.setEnabled(enable); } @Override public void showSwitchCameraButton(boolean show) { mSwitchCameraButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void setSwitchCameraButton(boolean isBackFacingCamera) { public void setCameraSwitched(boolean isBackFacingCamera) { mSwitchCameraButton.setSelected(isBackFacingCamera); } @Override public void showAddCallButton(boolean show) { Log.d(this, "show Add call button: " + show); mAddCallButton.setVisibility(show ? View.VISIBLE : View.GONE); } public void showManageConferenceVideoCallButton(boolean show) { mManageVideoCallConferenceButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void showMergeButton(boolean show) { mMergeButton.setVisibility(show ? View.VISIBLE : View.GONE); // If the merge button was disabled, re-enable it when hiding it. if (!show) { mMergeButton.setEnabled(true); } } @Override public void showPauseVideoButton(boolean show) { mPauseVideoButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void setPauseVideoButton(boolean isPaused) { public void setVideoPaused(boolean isPaused) { mPauseVideoButton.setSelected(isPaused); } @Override public void showOverflowButton(boolean show) { mOverflowButton.setVisibility(show ? View.VISIBLE : View.GONE); } /**The function is called when Modify Call button gets pressed. The function creates and * displays modify call options. */ Loading InCallUI/src/com/android/incallui/CallButtonPresenter.java +37 −48 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.incallui; import static com.android.incallui.CallButtonFragment.Buttons.*; import android.app.AlertDialog; import android.content.Context; import android.os.Bundle; Loading Loading @@ -321,7 +323,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto mCall.getVideoState() & ~VideoProfile.VideoState.PAUSED); videoCall.sendSessionModifyRequest(videoProfile); } getUi().setPauseVideoButton(pause); getUi().setVideoPaused(pause); } private void updateUi(InCallState state, Call call) { Loading @@ -342,7 +344,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto updateCallButtons(call, ui.getContext()); ui.enableMute(call.can(android.telecom.Call.Details.CAPABILITY_MUTE)); ui.enableButton(BUTTON_MUTE, call.can(android.telecom.Call.Details.CAPABILITY_MUTE)); } private static int toInteger(boolean b) { Loading @@ -367,13 +369,13 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto final CallButtonUi ui = getUi(); // Show all video-call-related buttons. ui.showSwitchCameraButton(true); ui.showPauseVideoButton(true); ui.showButton(BUTTON_SWITCH_CAMERA, true); ui.showButton(BUTTON_PAUSE_VIDEO, true); final boolean supportHold = call.can(android.telecom.Call.Details.CAPABILITY_SUPPORT_HOLD); final boolean enableHoldOption = call.can(android.telecom.Call.Details.CAPABILITY_HOLD); ui.showHoldButton(supportHold); ui.enableHold(enableHoldOption); ui.showButton(BUTTON_HOLD, supportHold); ui.enableButton(BUTTON_HOLD, enableHoldOption); ui.setHold(call.getState() == Call.State.ONHOLD); } Loading @@ -382,13 +384,13 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto final CallButtonUi ui = getUi(); // Hide all video-call-related buttons. ui.showChangeToVoiceButton(false); ui.showSwitchCameraButton(false); ui.showPauseVideoButton(false); ui.showButton(BUTTON_DOWNGRADE_TO_VOICE, false); ui.showButton(BUTTON_SWITCH_CAMERA, false); ui.showButton(BUTTON_PAUSE_VIDEO, false); // Show all voice-call-related buttons. ui.showAudioButton(true); ui.showDialpadButton(true); ui.showButton(BUTTON_AUDIO, true); ui.showButton(BUTTON_DIALPAD, true); Log.v(this, "Show hold ", call.can(android.telecom.Call.Details.CAPABILITY_SUPPORT_HOLD)); Log.v(this, "Enable hold", call.can(android.telecom.Call.Details.CAPABILITY_HOLD)); Loading @@ -410,7 +412,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto boolean canVideoCall = call.can(android.telecom.Call.Details.CAPABILITY_SUPPORTS_VT_LOCAL) && call.can(android.telecom.Call.Details.CAPABILITY_SUPPORTS_VT_REMOTE); ui.showChangeToVideoButton(canVideoCall); ui.showButton(BUTTON_UPGRADE_TO_VIDEO, canVideoCall); final boolean showMergeOption = call.can( android.telecom.Call.Details.CAPABILITY_MERGE_CONFERENCE); Loading Loading @@ -447,11 +449,11 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto final boolean isOverflowScenario = !canVideoCall && showOverflowMenu; if (isVideoOverflowScenario) { ui.showHoldButton(false); ui.showSwapButton(false); ui.showAddCallButton(false); ui.showMergeButton(false); ui.showManageConferenceVideoCallButton(false); ui.showButton(BUTTON_HOLD, false); ui.showButton(BUTTON_SWAP, false); ui.showButton(BUTTON_ADD_CALL, false); ui.showButton(BUTTON_MERGE, false); ui.showButton(BUTTON_MANAGE_VIDEO_CONFERENCE, false); ui.configureOverflowMenu( showMergeOption, Loading @@ -459,12 +461,12 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto showHoldOption && enableHoldOption /* showHoldMenuOption */, showSwapOption, showManageVideoCallConferenceOption); ui.showOverflowButton(true); ui.showButton(BUTTON_OVERFLOW, true); } else { if (isOverflowScenario) { ui.showAddCallButton(false); ui.showMergeButton(false); ui.showManageConferenceVideoCallButton(false); ui.showButton(BUTTON_ADD_CALL, false); ui.showButton(BUTTON_MERGE, false); ui.showButton(BUTTON_MANAGE_VIDEO_CONFERENCE, false); ui.configureOverflowMenu( showMergeOption, Loading @@ -473,15 +475,15 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto false /* showSwapMenuOption */, showManageVideoCallConferenceOption); } else { ui.showMergeButton(showMergeOption); ui.showAddCallButton(showAddCallOption); ui.showManageConferenceVideoCallButton(showManageVideoCallConferenceOption); ui.showButton(BUTTON_MERGE, showMergeOption); ui.showButton(BUTTON_ADD_CALL, showAddCallOption); ui.showButton(BUTTON_MANAGE_VIDEO_CONFERENCE, showManageVideoCallConferenceOption); } ui.showOverflowButton(isOverflowScenario); ui.showHoldButton(showHoldOption); ui.enableHold(enableHoldOption); ui.showSwapButton(showSwapOption); ui.showButton(BUTTON_OVERFLOW, isOverflowScenario); ui.showButton(BUTTON_HOLD, showHoldOption); ui.enableButton(BUTTON_HOLD, enableHoldOption); ui.showButton(BUTTON_SWAP, showSwapOption); } } Loading Loading @@ -514,31 +516,18 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto } public interface CallButtonUi extends Ui { void showButton(int buttonId, boolean show); void enableButton(int buttonId, boolean enable); void setEnabled(boolean on); void setMute(boolean on); void enableMute(boolean enabled); void showAudioButton(boolean show); void showChangeToVoiceButton(boolean show); void showDialpadButton(boolean show); void setHold(boolean on); void showHoldButton(boolean show); void enableHold(boolean enabled); void showSwapButton(boolean show); void showChangeToVideoButton(boolean show); void enableChangeToVideoButton(boolean enable); void showSwitchCameraButton(boolean show); void setSwitchCameraButton(boolean isBackFacingCamera); void showAddCallButton(boolean show); void showManageConferenceVideoCallButton(boolean show); void showMergeButton(boolean show); void showPauseVideoButton(boolean show); void setPauseVideoButton(boolean isPaused); void showOverflowButton(boolean show); void setCameraSwitched(boolean isBackFacingCamera); void setVideoPaused(boolean isPaused); void setAudio(int mode); void setSupportedAudio(int mask); void displayDialpad(boolean on, boolean animate); void displayModifyCallOptions(); boolean isDialpadVisible(); void setAudio(int mode); void setSupportedAudio(int mask); void configureOverflowMenu(boolean showMergeMenuOption, boolean showAddMenuOption, boolean showHoldMenuOption, boolean showSwapMenuOption, boolean showManageConferenceVideoCallOption); Loading @@ -550,6 +539,6 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto if (getUi() == null) { return; } getUi().setSwitchCameraButton(!isUsingFrontFacingCamera); getUi().setCameraSwitched(!isUsingFrontFacingCamera); } } Loading
InCallUI/src/com/android/incallui/CallButtonFragment.java +70 −85 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.incallui; import static com.android.incallui.CallButtonFragment.Buttons.*; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; Loading Loading @@ -44,7 +46,6 @@ import android.widget.Toast; import android.widget.PopupMenu.OnDismissListener; import android.widget.PopupMenu.OnMenuItemClickListener; import com.android.contacts.common.util.MaterialColorMapUtils; import com.android.contacts.common.util.MaterialColorMapUtils.MaterialPalette; import java.util.ArrayList; Loading @@ -55,8 +56,26 @@ public class CallButtonFragment extends BaseFragment<CallButtonPresenter, CallButtonPresenter.CallButtonUi> implements CallButtonPresenter.CallButtonUi, OnMenuItemClickListener, OnDismissListener, View.OnClickListener { private CompoundButton mAudioButton; private static final int INVALID_INDEX = -1; public interface Buttons { public static final int BUTTON_AUDIO = 1; public static final int BUTTON_DOWNGRADE_TO_VOICE = 2; public static final int BUTTON_MUTE = 3; public static final int BUTTON_DIALPAD = 4; public static final int BUTTON_HOLD = 5; public static final int BUTTON_SWAP = 6; public static final int BUTTON_UPGRADE_TO_VIDEO = 7; public static final int BUTTON_SWITCH_CAMERA = 8; public static final int BUTTON_ADD_CALL = 9; public static final int BUTTON_MERGE = 10; public static final int BUTTON_PAUSE_VIDEO = 11; public static final int BUTTON_MANAGE_VIDEO_CONFERENCE = 12; public static final int BUTTON_OVERFLOW = 13; } private CompoundButton mAudioButton; private ImageButton mChangeToVoiceButton; private CompoundButton mMuteButton; private CompoundButton mShowDialpadButton; Loading Loading @@ -157,7 +176,6 @@ public class CallButtonFragment int id = view.getId(); Log.d(this, "onClick(View " + view + ", id " + id + ")..."); boolean isClickHandled = true; switch(id) { case R.id.audioButton: onAudioButtonClicked(); Loading Loading @@ -206,17 +224,14 @@ public class CallButtonFragment onManageVideoCallConferenceClicked(); break; default: isClickHandled = false; Log.wtf(this, "onClick: unexpected"); break; return; } if (isClickHandled) { view.performHapticFeedback( HapticFeedbackConstants.VIRTUAL_KEY, HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING); } } public void updateColors() { MaterialPalette themeColors = InCallPresenter.getInstance().getThemeColors(); Loading Loading @@ -355,23 +370,53 @@ public class CallButtonFragment } @Override public void showAudioButton(boolean show) { mAudioButton.setVisibility(show ? View.VISIBLE : View.GONE); public void showButton(int buttonId, boolean show) { final View button = getButtonById(buttonId); if (button != null) { button.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void showChangeToVoiceButton(boolean show) { mChangeToVoiceButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void enableMute(boolean enabled) { mMuteButton.setEnabled(enabled); public void enableButton(int buttonId, boolean enable) { final View button = getButtonById(buttonId); if (button != null) { button.setEnabled(enable); } } @Override public void showDialpadButton(boolean show) { mShowDialpadButton.setVisibility(show ? View.VISIBLE : View.GONE); private View getButtonById(int id) { switch (id) { case BUTTON_AUDIO: return mAudioButton; case BUTTON_DOWNGRADE_TO_VOICE: return mChangeToVoiceButton; case BUTTON_MUTE: return mMuteButton; case BUTTON_DIALPAD: return mShowDialpadButton; case BUTTON_HOLD: return mHoldButton; case BUTTON_SWAP: return mSwapButton; case BUTTON_UPGRADE_TO_VIDEO: return mChangeToVideoButton; case BUTTON_SWITCH_CAMERA: return mSwitchCameraButton; case BUTTON_ADD_CALL: return mAddCallButton; case BUTTON_MERGE: return mMergeButton; case BUTTON_PAUSE_VIDEO: return mPauseVideoButton; case BUTTON_MANAGE_VIDEO_CONFERENCE: return mManageVideoCallConferenceButton; case BUTTON_OVERFLOW: return mOverflowButton; default: Log.w(this, "Invalid button id"); return null; } } @Override Loading @@ -382,75 +427,15 @@ public class CallButtonFragment } @Override public void showHoldButton(boolean show) { mHoldButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void enableHold(boolean enabled) { mHoldButton.setEnabled(enabled); } @Override public void showSwapButton(boolean show) { mSwapButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void showChangeToVideoButton(boolean show) { mChangeToVideoButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void enableChangeToVideoButton(boolean enable) { mChangeToVideoButton.setEnabled(enable); } @Override public void showSwitchCameraButton(boolean show) { mSwitchCameraButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void setSwitchCameraButton(boolean isBackFacingCamera) { public void setCameraSwitched(boolean isBackFacingCamera) { mSwitchCameraButton.setSelected(isBackFacingCamera); } @Override public void showAddCallButton(boolean show) { Log.d(this, "show Add call button: " + show); mAddCallButton.setVisibility(show ? View.VISIBLE : View.GONE); } public void showManageConferenceVideoCallButton(boolean show) { mManageVideoCallConferenceButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void showMergeButton(boolean show) { mMergeButton.setVisibility(show ? View.VISIBLE : View.GONE); // If the merge button was disabled, re-enable it when hiding it. if (!show) { mMergeButton.setEnabled(true); } } @Override public void showPauseVideoButton(boolean show) { mPauseVideoButton.setVisibility(show ? View.VISIBLE : View.GONE); } @Override public void setPauseVideoButton(boolean isPaused) { public void setVideoPaused(boolean isPaused) { mPauseVideoButton.setSelected(isPaused); } @Override public void showOverflowButton(boolean show) { mOverflowButton.setVisibility(show ? View.VISIBLE : View.GONE); } /**The function is called when Modify Call button gets pressed. The function creates and * displays modify call options. */ Loading
InCallUI/src/com/android/incallui/CallButtonPresenter.java +37 −48 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.incallui; import static com.android.incallui.CallButtonFragment.Buttons.*; import android.app.AlertDialog; import android.content.Context; import android.os.Bundle; Loading Loading @@ -321,7 +323,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto mCall.getVideoState() & ~VideoProfile.VideoState.PAUSED); videoCall.sendSessionModifyRequest(videoProfile); } getUi().setPauseVideoButton(pause); getUi().setVideoPaused(pause); } private void updateUi(InCallState state, Call call) { Loading @@ -342,7 +344,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto updateCallButtons(call, ui.getContext()); ui.enableMute(call.can(android.telecom.Call.Details.CAPABILITY_MUTE)); ui.enableButton(BUTTON_MUTE, call.can(android.telecom.Call.Details.CAPABILITY_MUTE)); } private static int toInteger(boolean b) { Loading @@ -367,13 +369,13 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto final CallButtonUi ui = getUi(); // Show all video-call-related buttons. ui.showSwitchCameraButton(true); ui.showPauseVideoButton(true); ui.showButton(BUTTON_SWITCH_CAMERA, true); ui.showButton(BUTTON_PAUSE_VIDEO, true); final boolean supportHold = call.can(android.telecom.Call.Details.CAPABILITY_SUPPORT_HOLD); final boolean enableHoldOption = call.can(android.telecom.Call.Details.CAPABILITY_HOLD); ui.showHoldButton(supportHold); ui.enableHold(enableHoldOption); ui.showButton(BUTTON_HOLD, supportHold); ui.enableButton(BUTTON_HOLD, enableHoldOption); ui.setHold(call.getState() == Call.State.ONHOLD); } Loading @@ -382,13 +384,13 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto final CallButtonUi ui = getUi(); // Hide all video-call-related buttons. ui.showChangeToVoiceButton(false); ui.showSwitchCameraButton(false); ui.showPauseVideoButton(false); ui.showButton(BUTTON_DOWNGRADE_TO_VOICE, false); ui.showButton(BUTTON_SWITCH_CAMERA, false); ui.showButton(BUTTON_PAUSE_VIDEO, false); // Show all voice-call-related buttons. ui.showAudioButton(true); ui.showDialpadButton(true); ui.showButton(BUTTON_AUDIO, true); ui.showButton(BUTTON_DIALPAD, true); Log.v(this, "Show hold ", call.can(android.telecom.Call.Details.CAPABILITY_SUPPORT_HOLD)); Log.v(this, "Enable hold", call.can(android.telecom.Call.Details.CAPABILITY_HOLD)); Loading @@ -410,7 +412,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto boolean canVideoCall = call.can(android.telecom.Call.Details.CAPABILITY_SUPPORTS_VT_LOCAL) && call.can(android.telecom.Call.Details.CAPABILITY_SUPPORTS_VT_REMOTE); ui.showChangeToVideoButton(canVideoCall); ui.showButton(BUTTON_UPGRADE_TO_VIDEO, canVideoCall); final boolean showMergeOption = call.can( android.telecom.Call.Details.CAPABILITY_MERGE_CONFERENCE); Loading Loading @@ -447,11 +449,11 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto final boolean isOverflowScenario = !canVideoCall && showOverflowMenu; if (isVideoOverflowScenario) { ui.showHoldButton(false); ui.showSwapButton(false); ui.showAddCallButton(false); ui.showMergeButton(false); ui.showManageConferenceVideoCallButton(false); ui.showButton(BUTTON_HOLD, false); ui.showButton(BUTTON_SWAP, false); ui.showButton(BUTTON_ADD_CALL, false); ui.showButton(BUTTON_MERGE, false); ui.showButton(BUTTON_MANAGE_VIDEO_CONFERENCE, false); ui.configureOverflowMenu( showMergeOption, Loading @@ -459,12 +461,12 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto showHoldOption && enableHoldOption /* showHoldMenuOption */, showSwapOption, showManageVideoCallConferenceOption); ui.showOverflowButton(true); ui.showButton(BUTTON_OVERFLOW, true); } else { if (isOverflowScenario) { ui.showAddCallButton(false); ui.showMergeButton(false); ui.showManageConferenceVideoCallButton(false); ui.showButton(BUTTON_ADD_CALL, false); ui.showButton(BUTTON_MERGE, false); ui.showButton(BUTTON_MANAGE_VIDEO_CONFERENCE, false); ui.configureOverflowMenu( showMergeOption, Loading @@ -473,15 +475,15 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto false /* showSwapMenuOption */, showManageVideoCallConferenceOption); } else { ui.showMergeButton(showMergeOption); ui.showAddCallButton(showAddCallOption); ui.showManageConferenceVideoCallButton(showManageVideoCallConferenceOption); ui.showButton(BUTTON_MERGE, showMergeOption); ui.showButton(BUTTON_ADD_CALL, showAddCallOption); ui.showButton(BUTTON_MANAGE_VIDEO_CONFERENCE, showManageVideoCallConferenceOption); } ui.showOverflowButton(isOverflowScenario); ui.showHoldButton(showHoldOption); ui.enableHold(enableHoldOption); ui.showSwapButton(showSwapOption); ui.showButton(BUTTON_OVERFLOW, isOverflowScenario); ui.showButton(BUTTON_HOLD, showHoldOption); ui.enableButton(BUTTON_HOLD, enableHoldOption); ui.showButton(BUTTON_SWAP, showSwapOption); } } Loading Loading @@ -514,31 +516,18 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto } public interface CallButtonUi extends Ui { void showButton(int buttonId, boolean show); void enableButton(int buttonId, boolean enable); void setEnabled(boolean on); void setMute(boolean on); void enableMute(boolean enabled); void showAudioButton(boolean show); void showChangeToVoiceButton(boolean show); void showDialpadButton(boolean show); void setHold(boolean on); void showHoldButton(boolean show); void enableHold(boolean enabled); void showSwapButton(boolean show); void showChangeToVideoButton(boolean show); void enableChangeToVideoButton(boolean enable); void showSwitchCameraButton(boolean show); void setSwitchCameraButton(boolean isBackFacingCamera); void showAddCallButton(boolean show); void showManageConferenceVideoCallButton(boolean show); void showMergeButton(boolean show); void showPauseVideoButton(boolean show); void setPauseVideoButton(boolean isPaused); void showOverflowButton(boolean show); void setCameraSwitched(boolean isBackFacingCamera); void setVideoPaused(boolean isPaused); void setAudio(int mode); void setSupportedAudio(int mask); void displayDialpad(boolean on, boolean animate); void displayModifyCallOptions(); boolean isDialpadVisible(); void setAudio(int mode); void setSupportedAudio(int mask); void configureOverflowMenu(boolean showMergeMenuOption, boolean showAddMenuOption, boolean showHoldMenuOption, boolean showSwapMenuOption, boolean showManageConferenceVideoCallOption); Loading @@ -550,6 +539,6 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto if (getUi() == null) { return; } getUi().setSwitchCameraButton(!isUsingFrontFacingCamera); getUi().setCameraSwitched(!isUsingFrontFacingCamera); } }