diff options
author | Andrew Lee <anwlee@google.com> | 2014-05-09 18:17:47 -0700 |
---|---|---|
committer | Andrew Lee <anwlee@google.com> | 2014-05-09 18:40:04 -0700 |
commit | 5a0df35b85a3d561f60e0663a45b4f6712d1a17f (patch) | |
tree | e94bded47aa6091babff7a7d604cd348095edab3 | |
parent | 215a0b09d59ef4384c4aef7b53cf70f8fff6fd80 (diff) |
Change tints, backgrounds on incoming call icons.
- Also tweaked icon tints for the InCall buttons, to make them less
prominent in the disabled state.
- Strengthened the logic around setting the audio button's enabled
state in the call button fragment. Before, updateAudioButtons() was
setting the audio button to be enabled after setEnabled(false) was
called on the fragment, causing it to be set to disabled notably
later than the other buttons.
Bug: 14658215
Change-Id: I68145fcc7420713e492e96b6c6a636fad9047ed1
17 files changed, 69 insertions, 47 deletions
diff --git a/InCallUI/res/color/selectable_icon_tint.xml b/InCallUI/res/color/selectable_icon_tint.xml index a5f80b774..b8aad1303 100644 --- a/InCallUI/res/color/selectable_icon_tint.xml +++ b/InCallUI/res/color/selectable_icon_tint.xml @@ -16,9 +16,9 @@ --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:color="@color/button_disabled_color" android:state_enabled="false" /> <item android:color="@color/incall_accent_color" android:state_selected="true" /> <item android:color="@color/incall_accent_color" android:state_pressed="true" /> - <!-- 70% white. --> - <item android:color="#b3ffffff" /> + <item android:color="@color/button_default_color" /> </selector> diff --git a/InCallUI/res/drawable-hdpi/fab_teal_background.png b/InCallUI/res/drawable-hdpi/fab_teal_background.png Binary files differnew file mode 100644 index 000000000..88e849596 --- /dev/null +++ b/InCallUI/res/drawable-hdpi/fab_teal_background.png diff --git a/InCallUI/res/drawable-mdpi/fab_teal_background.png b/InCallUI/res/drawable-mdpi/fab_teal_background.png Binary files differnew file mode 100644 index 000000000..3a37b274b --- /dev/null +++ b/InCallUI/res/drawable-mdpi/fab_teal_background.png diff --git a/InCallUI/res/drawable-xhdpi/fab_teal_background.png b/InCallUI/res/drawable-xhdpi/fab_teal_background.png Binary files differnew file mode 100644 index 000000000..b2ed8cddb --- /dev/null +++ b/InCallUI/res/drawable-xhdpi/fab_teal_background.png diff --git a/InCallUI/res/drawable-xxhdpi/fab_teal_background.png b/InCallUI/res/drawable-xxhdpi/fab_teal_background.png Binary files differnew file mode 100644 index 000000000..6bb4d2010 --- /dev/null +++ b/InCallUI/res/drawable-xxhdpi/fab_teal_background.png diff --git a/InCallUI/res/drawable/btn_background.xml b/InCallUI/res/drawable/btn_background.xml index cb7042b41..9a6c2f0cc 100644 --- a/InCallUI/res/drawable/btn_background.xml +++ b/InCallUI/res/drawable/btn_background.xml @@ -22,7 +22,7 @@ android:tint="@color/incall_accent_color" android:pinned="true"> <item> - <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <selector> <item android:state_focused="true" android:drawable="@drawable/btn_unselected_focused" /> diff --git a/InCallUI/res/drawable/ic_in_call_touch_handle.xml b/InCallUI/res/drawable/ic_in_call_touch_handle.xml index 7e234b62b..47d902bb7 100644 --- a/InCallUI/res/drawable/ic_in_call_touch_handle.xml +++ b/InCallUI/res/drawable/ic_in_call_touch_handle.xml @@ -17,17 +17,24 @@ <!-- Touch handle for the GlowPadView widget on the incoming call screen --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <!-- Call icon on tinted floating action bar background. --> <item android:state_enabled="true" android:state_active="false" - android:state_focused="false" - android:drawable="@drawable/ic_in_call_touch_handle_normal" /> - - <!-- "Pressed" state uses the same simple "ring" image as on the lockscreen --> - <item - android:state_enabled="true" - android:state_active="true" - android:state_focused="false" - android:drawable="@drawable/ic_lockscreen_handle_pressed" /> + android:state_focused="false"> + <layer-list> + <item> + <bitmap + android:src="@drawable/fab_teal_background" + android:tint="@color/glowpad_incoming_widget_background_tint" /> + </item> + <item> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_call" + android:tint="@color/glowpad_incoming_widget_tint" /> + </item> + </layer-list> + </item> </selector> diff --git a/InCallUI/res/drawable/ic_lockscreen_answer_activated_layer.xml b/InCallUI/res/drawable/ic_lockscreen_answer_activated_layer.xml index 1b4b8ad78..b49d1dfd7 100644 --- a/InCallUI/res/drawable/ic_lockscreen_answer_activated_layer.xml +++ b/InCallUI/res/drawable/ic_lockscreen_answer_activated_layer.xml @@ -14,15 +14,11 @@ limitations under the License. --> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:drawable="@drawable/fab_teal_background" /> <item> - <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> - <solid android:color="#99cc00"/> - <size - android:width="@dimen/incoming_call_widget_circle_size" - android:height="@dimen/incoming_call_widget_circle_size" /> - </shape> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_call" + android:tint="@color/glowpad_widget_active_color" /> </item> - <item - android:gravity="center" - android:drawable="@drawable/fab_ic_call" /> </layer-list> diff --git a/InCallUI/res/drawable/ic_lockscreen_answer_normal_layer.xml b/InCallUI/res/drawable/ic_lockscreen_answer_normal_layer.xml index 3d1ef47db..28988239c 100644 --- a/InCallUI/res/drawable/ic_lockscreen_answer_normal_layer.xml +++ b/InCallUI/res/drawable/ic_lockscreen_answer_normal_layer.xml @@ -23,7 +23,10 @@ android:height="@dimen/incoming_call_widget_circle_size" /> </shape> </item> - <item - android:gravity="center" - android:drawable="@drawable/fab_ic_call" /> + <item> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_call" + android:tint="@color/glowpad_call_widget_normal_tint" /> + </item> </layer-list> diff --git a/InCallUI/res/drawable/ic_lockscreen_decline_activated_layer.xml b/InCallUI/res/drawable/ic_lockscreen_decline_activated_layer.xml index 9b52e0294..6bddf9850 100644 --- a/InCallUI/res/drawable/ic_lockscreen_decline_activated_layer.xml +++ b/InCallUI/res/drawable/ic_lockscreen_decline_activated_layer.xml @@ -14,15 +14,11 @@ limitations under the License. --> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:drawable="@drawable/fab_red_background" /> <item> - <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> - <solid android:color="#ff4040"/> - <size - android:width="@dimen/incoming_call_widget_circle_size" - android:height="@dimen/incoming_call_widget_circle_size" /> - </shape> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_end_call" + android:tint="@color/glowpad_widget_active_color" /> </item> - <item - android:gravity="center" - android:drawable="@drawable/fab_ic_end_call" /> </layer-list> diff --git a/InCallUI/res/drawable/ic_lockscreen_decline_normal_layer.xml b/InCallUI/res/drawable/ic_lockscreen_decline_normal_layer.xml index af0ccbfb8..4da5f8d66 100644 --- a/InCallUI/res/drawable/ic_lockscreen_decline_normal_layer.xml +++ b/InCallUI/res/drawable/ic_lockscreen_decline_normal_layer.xml @@ -23,7 +23,10 @@ android:height="@dimen/incoming_call_widget_circle_size" /> </shape> </item> - <item - android:gravity="center" - android:drawable="@drawable/fab_ic_end_call" /> + <item> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_end_call" + android:tint="@color/glowpad_end_call_widget_normal_tint" /> + </item> </layer-list> diff --git a/InCallUI/res/drawable/ic_lockscreen_outerring.xml b/InCallUI/res/drawable/ic_lockscreen_outerring.xml index b84a94a0b..489515fbc 100644 --- a/InCallUI/res/drawable/ic_lockscreen_outerring.xml +++ b/InCallUI/res/drawable/ic_lockscreen_outerring.xml @@ -18,6 +18,5 @@ android:shape="oval"> <size android:height="@dimen/glowpadview_outerring_diameter" android:width="@dimen/glowpadview_outerring_diameter" /> - <solid android:color="#00000000" /> <stroke android:color="@color/glowpad_outer_ring_color" android:width="1dp" /> </shape> diff --git a/InCallUI/res/drawable/ic_lockscreen_text_activated_layer.xml b/InCallUI/res/drawable/ic_lockscreen_text_activated_layer.xml index 8da428a5c..040b39913 100644 --- a/InCallUI/res/drawable/ic_lockscreen_text_activated_layer.xml +++ b/InCallUI/res/drawable/ic_lockscreen_text_activated_layer.xml @@ -16,14 +16,16 @@ <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> - <solid android:color="@null" /> <stroke android:color="@color/glowpad_text_widget_ring_color" android:width="1dp"/> <size android:width="@dimen/incoming_call_widget_circle_size" android:height="@dimen/incoming_call_widget_circle_size" /> </shape> </item> - <item - android:gravity="center" - android:drawable="@drawable/fab_ic_message" /> + <item> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_message" + android:tint="@color/glowpad_widget_active_color" /> + </item> </layer-list> diff --git a/InCallUI/res/drawable/ic_lockscreen_text_normal_layer.xml b/InCallUI/res/drawable/ic_lockscreen_text_normal_layer.xml index 3665879e1..950d1c38c 100644 --- a/InCallUI/res/drawable/ic_lockscreen_text_normal_layer.xml +++ b/InCallUI/res/drawable/ic_lockscreen_text_normal_layer.xml @@ -23,7 +23,10 @@ android:height="@dimen/incoming_call_widget_circle_size" /> </shape> </item> - <item - android:gravity="center" - android:drawable="@drawable/fab_ic_message" /> + <item> + <bitmap + android:gravity="center" + android:src="@drawable/fab_ic_message" + android:tint="@color/glowpad_text_widget_normal_tint" /> + </item> </layer-list> diff --git a/InCallUI/res/layout/call_button_fragment.xml b/InCallUI/res/layout/call_button_fragment.xml index 7fa3c56ab..b455241d8 100644 --- a/InCallUI/res/layout/call_button_fragment.xml +++ b/InCallUI/res/layout/call_button_fragment.xml @@ -38,6 +38,7 @@ android:padding="0dp" android:layout_height="wrap_content" android:layout_alignParentBottom="true" + android:animateLayoutChanges="true" android:visibility="invisible" > <!-- Row 1, the "extra button row": A couple of relatively rare diff --git a/InCallUI/res/values/colors.xml b/InCallUI/res/values/colors.xml index 5836bd791..b82c89601 100644 --- a/InCallUI/res/values/colors.xml +++ b/InCallUI/res/values/colors.xml @@ -53,10 +53,12 @@ <color name="incall_dialpad_background">#e6ffffff</color> <color name="incall_dialpad_background_pressed">#ccaaaaaa</color> - <!-- Button background color. --> <color name="button_background_color">@color/incall_background_color</color> <color name="button_selected_color">#00acc1</color> - + <!-- 70% opacity, white. --> + <color name="button_default_color">#b3ffffff</color> + <!-- 25% opacity, white. --> + <color name="button_disabled_color">#40ffffff</color> <!-- Background color of action bars --> <color name="actionbar_background_color">#3B77E7</color> @@ -68,5 +70,11 @@ <!-- 15% opacity, white. --> <color name="glowpad_outer_ring_color">#26ffffff</color> <color name="glowpad_text_widget_ring_color">#ffffff</color> + <color name="glowpad_widget_active_color">#ffffff</color> + <color name="glowpad_text_widget_normal_tint">#cccccc</color> + <color name="glowpad_call_widget_normal_tint">#00e5ff</color> + <color name="glowpad_end_call_widget_normal_tint">#ff1744</color> + <color name="glowpad_incoming_widget_tint">#a3a3a3</color> + <color name="glowpad_incoming_widget_background_tint">#ffffff</color> </resources> diff --git a/InCallUI/src/com/android/incallui/CallButtonFragment.java b/InCallUI/src/com/android/incallui/CallButtonFragment.java index f2146a60e..d9fc68de3 100644 --- a/InCallUI/src/com/android/incallui/CallButtonFragment.java +++ b/InCallUI/src/com/android/incallui/CallButtonFragment.java @@ -61,6 +61,8 @@ public class CallButtonFragment private static final int HIDDEN = 0; private static final int VISIBLE = 255; + private boolean mIsEnabled; + @Override CallButtonPresenter createPresenter() { // TODO: find a cleaner way to include audio mode provider than @@ -189,6 +191,7 @@ public class CallButtonFragment @Override public void setEnabled(boolean isEnabled) { + mIsEnabled = isEnabled; View view = getView(); if (view.getVisibility() != View.VISIBLE) { view.setVisibility(View.VISIBLE); @@ -420,7 +423,8 @@ public class CallButtonFragment Log.v(this, "showSpeakerphoneOffIcon: " + showSpeakerphoneOffIcon); Log.v(this, "showHandsetIcon: " + showHandsetIcon); - mAudioButton.setEnabled(audioButtonEnabled); + // Only enable the audio button if the fragment is enabled. + mAudioButton.setEnabled(audioButtonEnabled && mIsEnabled); mAudioButton.setSelected(audioButtonChecked); final LayerDrawable layers = (LayerDrawable) mAudioButton.getBackground(); |