From 036e7cbbfab764ea054e55c8d0746389cf6e2fdf Mon Sep 17 00:00:00 2001 From: John Spurlock Date: Mon, 15 Jun 2015 13:49:57 -0400 Subject: [PATCH] QS: Add disable animations for the DND tile. Elide the disabled -> enabled anim, since we launch the detail panel instead. Bug: 21118976 Change-Id: I392f848641190f114b7838515acb13f22c96e37d --- .../anim/ic_dnd_disable_alpha_animation.xml | 26 ++++++++++ .../anim/ic_dnd_disable_bar01_0_animation.xml | 26 ++++++++++ .../anim/ic_dnd_disable_mask_1_animation.xml | 26 ++++++++++ ..._total_silence_disable_alpha_animation.xml | 26 ++++++++++ ...total_silence_disable_mask_1_animation.xml | 26 ++++++++++ ...ce_disable_outer_ring_merged_animation.xml | 26 ++++++++++ .../SystemUI/res/drawable/ic_dnd_disable.xml | 48 +++++++++++++++++++ .../res/drawable/ic_dnd_disable_animation.xml | 29 +++++++++++ .../drawable/ic_dnd_total_silence_disable.xml | 39 +++++++++++++++ ...ic_dnd_total_silence_disable_animation.xml | 29 +++++++++++ .../android/systemui/qs/tiles/DndTile.java | 15 +++++- 11 files changed, 314 insertions(+), 2 deletions(-) create mode 100644 packages/SystemUI/res/anim/ic_dnd_disable_alpha_animation.xml create mode 100644 packages/SystemUI/res/anim/ic_dnd_disable_bar01_0_animation.xml create mode 100644 packages/SystemUI/res/anim/ic_dnd_disable_mask_1_animation.xml create mode 100644 packages/SystemUI/res/anim/ic_dnd_total_silence_disable_alpha_animation.xml create mode 100644 packages/SystemUI/res/anim/ic_dnd_total_silence_disable_mask_1_animation.xml create mode 100644 packages/SystemUI/res/anim/ic_dnd_total_silence_disable_outer_ring_merged_animation.xml create mode 100644 packages/SystemUI/res/drawable/ic_dnd_disable.xml create mode 100644 packages/SystemUI/res/drawable/ic_dnd_disable_animation.xml create mode 100644 packages/SystemUI/res/drawable/ic_dnd_total_silence_disable.xml create mode 100644 packages/SystemUI/res/drawable/ic_dnd_total_silence_disable_animation.xml diff --git a/packages/SystemUI/res/anim/ic_dnd_disable_alpha_animation.xml b/packages/SystemUI/res/anim/ic_dnd_disable_alpha_animation.xml new file mode 100644 index 0000000000000..21caab4fae18a --- /dev/null +++ b/packages/SystemUI/res/anim/ic_dnd_disable_alpha_animation.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/packages/SystemUI/res/anim/ic_dnd_disable_bar01_0_animation.xml b/packages/SystemUI/res/anim/ic_dnd_disable_bar01_0_animation.xml new file mode 100644 index 0000000000000..a914687c8166a --- /dev/null +++ b/packages/SystemUI/res/anim/ic_dnd_disable_bar01_0_animation.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/packages/SystemUI/res/anim/ic_dnd_disable_mask_1_animation.xml b/packages/SystemUI/res/anim/ic_dnd_disable_mask_1_animation.xml new file mode 100644 index 0000000000000..3c60c013ed126 --- /dev/null +++ b/packages/SystemUI/res/anim/ic_dnd_disable_mask_1_animation.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_alpha_animation.xml b/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_alpha_animation.xml new file mode 100644 index 0000000000000..21caab4fae18a --- /dev/null +++ b/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_alpha_animation.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_mask_1_animation.xml b/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_mask_1_animation.xml new file mode 100644 index 0000000000000..8d3296efaf64b --- /dev/null +++ b/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_mask_1_animation.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_outer_ring_merged_animation.xml b/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_outer_ring_merged_animation.xml new file mode 100644 index 0000000000000..262649953a1a5 --- /dev/null +++ b/packages/SystemUI/res/anim/ic_dnd_total_silence_disable_outer_ring_merged_animation.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/packages/SystemUI/res/drawable/ic_dnd_disable.xml b/packages/SystemUI/res/drawable/ic_dnd_disable.xml new file mode 100644 index 0000000000000..ba4692a14cd75 --- /dev/null +++ b/packages/SystemUI/res/drawable/ic_dnd_disable.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + diff --git a/packages/SystemUI/res/drawable/ic_dnd_disable_animation.xml b/packages/SystemUI/res/drawable/ic_dnd_disable_animation.xml new file mode 100644 index 0000000000000..13ed767d0ca0c --- /dev/null +++ b/packages/SystemUI/res/drawable/ic_dnd_disable_animation.xml @@ -0,0 +1,29 @@ + + + + + + + diff --git a/packages/SystemUI/res/drawable/ic_dnd_total_silence_disable.xml b/packages/SystemUI/res/drawable/ic_dnd_total_silence_disable.xml new file mode 100644 index 0000000000000..1a332557ebe91 --- /dev/null +++ b/packages/SystemUI/res/drawable/ic_dnd_total_silence_disable.xml @@ -0,0 +1,39 @@ + + + + + + + + + + diff --git a/packages/SystemUI/res/drawable/ic_dnd_total_silence_disable_animation.xml b/packages/SystemUI/res/drawable/ic_dnd_total_silence_disable_animation.xml new file mode 100644 index 0000000000000..c0b2d69e2524c --- /dev/null +++ b/packages/SystemUI/res/drawable/ic_dnd_total_silence_disable_animation.xml @@ -0,0 +1,29 @@ + + + + + + + diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/DndTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/DndTile.java index f4d6f04ca38b6..f97f519cafc22 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/DndTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/DndTile.java @@ -38,6 +38,7 @@ import com.android.systemui.volume.ZenModePanel; /** Quick settings tile: Do not disturb **/ public class DndTile extends QSTile { + private static final Intent ZEN_SETTINGS = new Intent(Settings.ACTION_ZEN_MODE_SETTINGS); @@ -47,6 +48,14 @@ public class DndTile extends QSTile { private static final String ACTION_SET_VISIBLE = "com.android.systemui.dndtile.SET_VISIBLE"; private static final String EXTRA_VISIBLE = "visible"; + private static final QSTile.Icon TOTAL_SILENCE = + ResourceIcon.get(R.drawable.ic_qs_dnd_on_total_silence); + + private final AnimationIcon mDisable = + new AnimationIcon(R.drawable.ic_dnd_disable_animation); + private final AnimationIcon mDisableTotalSilence = + new AnimationIcon(R.drawable.ic_dnd_total_silence_disable_animation); + private final ZenModeController mController; private final DndDetailAdapter mDetailAdapter; @@ -89,6 +98,8 @@ public class DndTile extends QSTile { @Override public void handleClick() { + mDisable.setAllowAnimation(true); + mDisableTotalSilence.setAllowAnimation(true); MetricsLogger.action(mContext, getMetricsCategory(), !mState.value); if (mState.value) { mController.setZen(Global.ZEN_MODE_OFF, null, TAG); @@ -114,7 +125,7 @@ public class DndTile extends QSTile { R.string.accessibility_quick_settings_dnd_priority_on); break; case Global.ZEN_MODE_NO_INTERRUPTIONS: - state.icon = ResourceIcon.get(R.drawable.ic_qs_dnd_on_total_silence); + state.icon = TOTAL_SILENCE; state.label = mContext.getString(R.string.quick_settings_dnd_none_label); state.contentDescription = mContext.getString( R.string.accessibility_quick_settings_dnd_none_on); @@ -126,7 +137,7 @@ public class DndTile extends QSTile { R.string.accessibility_quick_settings_dnd_alarms_on); break; default: - state.icon = ResourceIcon.get(R.drawable.ic_qs_dnd_off); + state.icon = TOTAL_SILENCE.equals(state.icon) ? mDisableTotalSilence : mDisable; state.label = mContext.getString(R.string.quick_settings_dnd_label); state.contentDescription = mContext.getString( R.string.accessibility_quick_settings_dnd_off);