From 54b90dcbf4c488f4f818b8c37a3b1277e7790d9e Mon Sep 17 00:00:00 2001 From: Christine Chen Date: Mon, 14 Oct 2013 14:58:13 -0700 Subject: Replaces ToggleButtons with ImageButtons - Defer setting the toggled/selected state until TeleService gets back to us. Bug: 11172457 Change-Id: I4d103c1288b6e730c61aaf49e679f6b58746897b --- InCallUI/res/drawable/btn_compound_audio.xml | 2 +- InCallUI/res/drawable/btn_compound_hold.xml | 30 ------------------ InCallUI/res/drawable/btn_compound_mute.xml | 30 ------------------ .../res/drawable/btn_fake_compound_background.xml | 36 ++++++++++++++++++++++ InCallUI/res/drawable/btn_fake_compound_hold.xml | 30 ++++++++++++++++++ InCallUI/res/drawable/btn_fake_compound_mute.xml | 30 ++++++++++++++++++ .../list_selector_selected_and_pressed.xml | 20 ++++++++++++ InCallUI/res/layout/call_button_fragment.xml | 16 +++++----- .../com/android/incallui/CallButtonFragment.java | 29 ++++++++--------- .../com/android/incallui/CallButtonPresenter.java | 3 +- 10 files changed, 142 insertions(+), 84 deletions(-) delete mode 100644 InCallUI/res/drawable/btn_compound_hold.xml delete mode 100644 InCallUI/res/drawable/btn_compound_mute.xml create mode 100644 InCallUI/res/drawable/btn_fake_compound_background.xml create mode 100644 InCallUI/res/drawable/btn_fake_compound_hold.xml create mode 100644 InCallUI/res/drawable/btn_fake_compound_mute.xml create mode 100644 InCallUI/res/drawable/list_selector_selected_and_pressed.xml (limited to 'InCallUI') diff --git a/InCallUI/res/drawable/btn_compound_audio.xml b/InCallUI/res/drawable/btn_compound_audio.xml index c348c98c1..5d364942d 100644 --- a/InCallUI/res/drawable/btn_compound_audio.xml +++ b/InCallUI/res/drawable/btn_compound_audio.xml @@ -37,7 +37,7 @@ (In states where the audio button *not* a toggle, we explicitly hide this layer.) --> + android:drawable="@drawable/btn_fake_compound_background" /> - - - - - - - - - - - - - diff --git a/InCallUI/res/drawable/btn_compound_mute.xml b/InCallUI/res/drawable/btn_compound_mute.xml deleted file mode 100644 index 4e09bd9c3..000000000 --- a/InCallUI/res/drawable/btn_compound_mute.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/InCallUI/res/drawable/btn_fake_compound_background.xml b/InCallUI/res/drawable/btn_fake_compound_background.xml new file mode 100644 index 000000000..197f589d1 --- /dev/null +++ b/InCallUI/res/drawable/btn_fake_compound_background.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/InCallUI/res/drawable/btn_fake_compound_hold.xml b/InCallUI/res/drawable/btn_fake_compound_hold.xml new file mode 100644 index 000000000..04bdd9441 --- /dev/null +++ b/InCallUI/res/drawable/btn_fake_compound_hold.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + diff --git a/InCallUI/res/drawable/btn_fake_compound_mute.xml b/InCallUI/res/drawable/btn_fake_compound_mute.xml new file mode 100644 index 000000000..69048a27f --- /dev/null +++ b/InCallUI/res/drawable/btn_fake_compound_mute.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + diff --git a/InCallUI/res/drawable/list_selector_selected_and_pressed.xml b/InCallUI/res/drawable/list_selector_selected_and_pressed.xml new file mode 100644 index 000000000..d81ee36ea --- /dev/null +++ b/InCallUI/res/drawable/list_selector_selected_and_pressed.xml @@ -0,0 +1,20 @@ + + + + + + + \ No newline at end of file diff --git a/InCallUI/res/layout/call_button_fragment.xml b/InCallUI/res/layout/call_button_fragment.xml index 1e7049d30..013d1b22a 100644 --- a/InCallUI/res/layout/call_button_fragment.xml +++ b/InCallUI/res/layout/call_button_fragment.xml @@ -101,8 +101,8 @@ action button that brings up a popup menu; see btn_compound_audio.xml and InCallTouchUi.updateAudioButton() for the full details. --> - @@ -112,9 +112,9 @@ - @@ -126,9 +126,9 @@ must always be set to GONE. --> - diff --git a/InCallUI/src/com/android/incallui/CallButtonFragment.java b/InCallUI/src/com/android/incallui/CallButtonFragment.java index b0fdda18c..ed7690334 100644 --- a/InCallUI/src/com/android/incallui/CallButtonFragment.java +++ b/InCallUI/src/com/android/incallui/CallButtonFragment.java @@ -41,9 +41,9 @@ public class CallButtonFragment implements CallButtonPresenter.CallButtonUi, OnMenuItemClickListener, OnDismissListener, View.OnClickListener, CompoundButton.OnCheckedChangeListener { - private ToggleButton mMuteButton; - private ToggleButton mAudioButton; - private ToggleButton mHoldButton; + private ImageButton mMuteButton; + private ImageButton mAudioButton; + private ImageButton mHoldButton; private ToggleButton mShowDialpadButton; private ImageButton mMergeButton; private ImageButton mAddCallButton; @@ -107,16 +107,16 @@ public class CallButtonFragment // along the inside perimeter of the button. mEndCallButton.setOnTouchListener(new SmallerHitTargetTouchListener()); - mMuteButton = (ToggleButton) parent.findViewById(R.id.muteButton); + mMuteButton = (ImageButton) parent.findViewById(R.id.muteButton); mMuteButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { - final CompoundButton button = (CompoundButton) v; - getPresenter().muteClicked(button.isChecked()); + final ImageButton button = (ImageButton) v; + getPresenter().muteClicked(!button.isSelected()); } }); - mAudioButton = (ToggleButton) parent.findViewById(R.id.audioButton); + mAudioButton = (ImageButton) parent.findViewById(R.id.audioButton); mAudioButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -124,11 +124,12 @@ public class CallButtonFragment } }); - mHoldButton = (ToggleButton) parent.findViewById(R.id.holdButton); - mHoldButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + mHoldButton = (ImageButton) parent.findViewById(R.id.holdButton); + mHoldButton.setOnClickListener(new OnClickListener() { @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - getPresenter().holdClicked(isChecked); + public void onClick(View v) { + final ImageButton button = (ImageButton) v; + getPresenter().holdClicked(!button.isSelected()); } }); @@ -210,7 +211,7 @@ public class CallButtonFragment @Override public void setMute(boolean value) { - mMuteButton.setChecked(value); + mMuteButton.setSelected(value); } @Override @@ -220,7 +221,7 @@ public class CallButtonFragment @Override public void setHold(boolean value) { - mHoldButton.setChecked(value); + mHoldButton.setSelected(value); } @Override @@ -422,7 +423,7 @@ public class CallButtonFragment final int VISIBLE = 255; mAudioButton.setEnabled(audioButtonEnabled); - mAudioButton.setChecked(audioButtonChecked); + mAudioButton.setSelected(audioButtonChecked); final LayerDrawable layers = (LayerDrawable) mAudioButton.getBackground(); Log.d(this, "'layers' drawable: " + layers); diff --git a/InCallUI/src/com/android/incallui/CallButtonPresenter.java b/InCallUI/src/com/android/incallui/CallButtonPresenter.java index 3b1411be1..be257378f 100644 --- a/InCallUI/src/com/android/incallui/CallButtonPresenter.java +++ b/InCallUI/src/com/android/incallui/CallButtonPresenter.java @@ -66,6 +66,7 @@ public class CallButtonPresenter extends Presenter