summaryrefslogtreecommitdiff
path: root/InCallUI
diff options
context:
space:
mode:
Diffstat (limited to 'InCallUI')
-rw-r--r--InCallUI/src/com/android/incallui/CallButtonFragment.java5
-rw-r--r--InCallUI/src/com/android/incallui/CallButtonPresenter.java5
2 files changed, 9 insertions, 1 deletions
diff --git a/InCallUI/src/com/android/incallui/CallButtonFragment.java b/InCallUI/src/com/android/incallui/CallButtonFragment.java
index 64f74ff6f..3324c91e5 100644
--- a/InCallUI/src/com/android/incallui/CallButtonFragment.java
+++ b/InCallUI/src/com/android/incallui/CallButtonFragment.java
@@ -272,6 +272,11 @@ public class CallButtonFragment
}
@Override
+ public void enableChangeToVideoButton(boolean enable) {
+ mChangeToVideoButton.setEnabled(enable);
+ }
+
+ @Override
public void showSwitchCameraButton(boolean show) {
mSwitchCameraButton.setVisibility(show ? View.VISIBLE : View.GONE);
}
diff --git a/InCallUI/src/com/android/incallui/CallButtonPresenter.java b/InCallUI/src/com/android/incallui/CallButtonPresenter.java
index 0d7d88fcf..e630cf896 100644
--- a/InCallUI/src/com/android/incallui/CallButtonPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallButtonPresenter.java
@@ -384,10 +384,12 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto
final boolean canAdd = call.can(PhoneCapabilities.ADD_CALL);
final boolean enableHoldOption = call.can(PhoneCapabilities.HOLD);
final boolean supportHold = call.can(PhoneCapabilities.SUPPORT_HOLD);
+ final boolean isCallOnHold = call.getState() == Call.State.ONHOLD;
boolean canVideoCall = call.can(PhoneCapabilities.SUPPORTS_VT_LOCAL)
&& call.can(PhoneCapabilities.SUPPORTS_VT_REMOTE);
ui.showChangeToVideoButton(canVideoCall);
+ ui.enableChangeToVideoButton(!isCallOnHold);
final boolean showMergeOption = call.can(PhoneCapabilities.MERGE_CONFERENCE);
final boolean showAddCallOption = canAdd;
@@ -398,7 +400,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto
final boolean showSwapOption = call.can(PhoneCapabilities.SWAP_CONFERENCE);
final boolean showHoldOption = !showSwapOption && (enableHoldOption || supportHold);
- ui.setHold(call.getState() == Call.State.ONHOLD);
+ ui.setHold(isCallOnHold);
// If we show video upgrade and add/merge and hold/swap, the overflow menu is needed.
final boolean isVideoOverflowScenario = canVideoCall
&& (showAddCallOption || showMergeOption) && (showHoldOption || showSwapOption);
@@ -463,6 +465,7 @@ public class CallButtonPresenter extends Presenter<CallButtonPresenter.CallButto
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);