summaryrefslogtreecommitdiff
path: root/InCallUI/src/com/android/incallui/CallButtonFragment.java
diff options
context:
space:
mode:
authorAndrew Lee <anwlee@google.com>2014-07-18 18:00:44 -0700
committerAndrew Lee <anwlee@google.com>2014-07-21 13:46:32 -0700
commitf6e7ba0ca231fb5373510c6c622674a13e54ff99 (patch)
tree191ac62f84fdf5bde2f96597b707926ef2efc1e9 /InCallUI/src/com/android/incallui/CallButtonFragment.java
parent2e46f6b84fd69db43a782a5fbb01448da4f0fef2 (diff)
Implement new video-call-related buttons.
- Implemented downgrade/upgrade, switch camera, pause camear. - Implemented code to find front/back-facing cameraIds. - Also, cleaned up listener logic in CallButtonFragment to be more consistent. Bug: 16014280 Change-Id: I267a73943dc768900b663bb4db6ec52f4a35cac5
Diffstat (limited to 'InCallUI/src/com/android/incallui/CallButtonFragment.java')
-rw-r--r--InCallUI/src/com/android/incallui/CallButtonFragment.java89
1 files changed, 48 insertions, 41 deletions
diff --git a/InCallUI/src/com/android/incallui/CallButtonFragment.java b/InCallUI/src/com/android/incallui/CallButtonFragment.java
index 077c8124b..80119a404 100644
--- a/InCallUI/src/com/android/incallui/CallButtonFragment.java
+++ b/InCallUI/src/com/android/incallui/CallButtonFragment.java
@@ -68,8 +68,7 @@ public class CallButtonFragment
@Override
CallButtonPresenter createPresenter() {
- // TODO: find a cleaner way to include audio mode provider than
- // having a singleton instance.
+ // TODO: find a cleaner way to include audio mode provider than having a singleton instance.
return new CallButtonPresenter();
}
@@ -91,50 +90,20 @@ public class CallButtonFragment
mExtraRowButton = parent.findViewById(R.id.extraButtonRow);
mManageConferenceButton = parent.findViewById(R.id.manageConferenceButton);
- mManageConferenceButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- getPresenter().manageConferenceButtonClicked();
- }
- });
+ mManageConferenceButton.setOnClickListener(this);
mGenericMergeButton = parent.findViewById(R.id.cdmaMergeButton);
- mGenericMergeButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- getPresenter().mergeClicked();
- }
- });
-
- mMuteButton = (ImageButton) parent.findViewById(R.id.muteButton);
- mMuteButton.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- final ImageButton button = (ImageButton) v;
- getPresenter().muteClicked(!button.isSelected());
- }
- });
+ mGenericMergeButton.setOnClickListener(this);
mAudioButton = (ImageButton) parent.findViewById(R.id.audioButton);
- mAudioButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- onAudioButtonClicked();
- }
- });
-
- mHoldButton = (ImageButton) parent.findViewById(R.id.holdButton);
- mHoldButton.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- final ImageButton button = (ImageButton) v;
- getPresenter().holdClicked(!button.isSelected());
- }
- });
-
+ mAudioButton.setOnClickListener(this);
mChangeToVoiceButton = (ImageButton) parent.findViewById(R.id.changeToVoiceButton);
mChangeToVoiceButton. setOnClickListener(this);
+ mMuteButton = (ImageButton) parent.findViewById(R.id.muteButton);
+ mMuteButton.setOnClickListener(this);
mShowDialpadButton = (ImageButton) parent.findViewById(R.id.dialpadButton);
mShowDialpadButton.setOnClickListener(this);
+ mHoldButton = (ImageButton) parent.findViewById(R.id.holdButton);
+ mHoldButton.setOnClickListener(this);
mSwapButton = (ImageButton) parent.findViewById(R.id.swapButton);
mSwapButton.setOnClickListener(this);
mChangeToVideoButton = (ImageButton) parent.findViewById(R.id.changeToVideoButton);
@@ -159,6 +128,7 @@ public class CallButtonFragment
// set the buttons
updateAudioButtons(getPresenter().getSupportedAudio());
+ getPresenter().initializeCameraManager(getActivity().getApplicationContext());
}
@Override
@@ -179,24 +149,51 @@ public class CallButtonFragment
Log.d(this, "onClick(View " + view + ", id " + id + ")...");
switch(id) {
+ case R.id.audioButton:
+ onAudioButtonClicked();
+ break;
case R.id.addButton:
getPresenter().addCallClicked();
break;
+ case R.id.changeToVoiceButton:
+ getPresenter().changeToVoiceClicked();
+ break;
+ case R.id.muteButton: {
+ final ImageButton button = (ImageButton) view;
+ getPresenter().muteClicked(!button.isSelected());
+ break;
+ }
+ case R.id.cdmaMergeButton:
case R.id.mergeButton:
getPresenter().mergeClicked();
break;
+ case R.id.holdButton: {
+ final ImageButton button = (ImageButton) view;
+ getPresenter().holdClicked(!button.isSelected());
+ break;
+ }
case R.id.swapButton:
getPresenter().swapClicked();
break;
case R.id.dialpadButton:
getPresenter().showDialpadClicked(!mShowDialpadButton.isSelected());
break;
- case R.id.changeToVoiceButton:
case R.id.changeToVideoButton:
+ getPresenter().changeToVideoClicked();
+ break;
case R.id.switchCameraButton:
+ getPresenter().switchCameraClicked(
+ mSwitchCameraButton.isSelected() /* useFrontFacingCamera */);
+ break;
case R.id.pauseVideoButton:
+ getPresenter().pauseVideoClicked(
+ !mPauseVideoButton.isSelected() /* pause */);
+ break;
case R.id.overflowButton:
- // TODO: Implement these button behaviors.
+ // TODO: Implement.
+ break;
+ case R.id.manageConferenceButton:
+ getPresenter().manageConferenceButtonClicked();
break;
default:
Log.wtf(this, "onClick: unexpected");
@@ -282,6 +279,11 @@ public class CallButtonFragment
}
@Override
+ public void setSwitchCameraButton(boolean isBackFacingCamera) {
+ mSwitchCameraButton.setSelected(isBackFacingCamera);
+ }
+
+ @Override
public void showAddCallButton(boolean show) {
mAddCallButton.setVisibility(show ? View.VISIBLE : View.GONE);
}
@@ -302,6 +304,11 @@ public class CallButtonFragment
}
@Override
+ public void setPauseVideoButton(boolean isPaused) {
+ mPauseVideoButton.setSelected(isPaused);
+ }
+
+ @Override
public void showOverflowButton(boolean show) {
mOverflowButton.setVisibility(show ? View.VISIBLE : View.GONE);
}