summaryrefslogtreecommitdiffstats
path: root/packages/SystemUI/src/com/android/systemui/qs
diff options
context:
space:
mode:
authorRoman Birg <roman@cyngn.com>2016-01-26 10:05:22 -0800
committerRoman Birg <roman@cyngn.com>2016-01-29 08:59:14 -0800
commite94af6a423589d6cc4f0813aeb45e2124ea73ea8 (patch)
tree9cd4168f0f9682dc9e86a93da5134cc4e4024993 /packages/SystemUI/src/com/android/systemui/qs
parent789d700d94df0f761b6a0cf9f40bb42c8a0cb385 (diff)
downloadframeworks_base-e94af6a423589d6cc4f0813aeb45e2124ea73ea8.zip
frameworks_base-e94af6a423589d6cc4f0813aeb45e2124ea73ea8.tar.gz
frameworks_base-e94af6a423589d6cc4f0813aeb45e2124ea73ea8.tar.bz2
SystemUI: add better hints when trying to delete edit tile
Add a clearer indication that the edit tile cannot be deleted via an animation. Animations by Asher Simonds. Ref: CYNGNOS-1644 Change-Id: I829faface9268cd2900533f8194bdfe58339420c Signed-off-by: Roman Birg <roman@cyngn.com>
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/qs')
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java21
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/QSPanelTopView.java16
2 files changed, 25 insertions, 12 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java b/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java
index 0c5b71b..732e4d1 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java
@@ -32,6 +32,7 @@ import android.graphics.Color;
import android.graphics.Point;
import android.graphics.PointF;
import android.graphics.PorterDuff;
+import android.graphics.drawable.Animatable;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.os.Handler;
@@ -143,10 +144,6 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
mQsPanelTop = (QSPanelTopView) LayoutInflater.from(mContext).inflate(R.layout.qs_tile_top,
this, false);
- // tint trash can to default color
- final int color = mContext.getColor(R.color.qs_tile_trash);
- DrawableCompat.setTint(mQsPanelTop.getDropTargetIcon().getDrawable(), color);
-
mBrightnessView = mQsPanelTop.getBrightnessView();
mFooter = new QSFooter(this, mContext);
@@ -965,6 +962,7 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
Log.v(TAG, "ACTION_DRAG_STARTED on target view.");
}
mRestored = false;
+ mQsPanelTop.setDropIcon(R.drawable.ic_qs_tile_delete_disable, R.color.qs_tile_trash_normal_tint);
}
break;
@@ -981,16 +979,17 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
mMovedByLocation = false;
if (v == mQsPanelTop) {
- int color;
+ int icon, color;
if (mDraggingRecord.tile instanceof EditTile) {
// use a different warning, user can't erase this one
- color = mContext.getColor(R.color.qs_tile_trash_delete_tint_warning);
+ icon = R.drawable.ic_qs_tile_delete_disable_avd;
+ color = R.color.qs_tile_trash_delete_tint_warning;
} else {
- color = mContext.getColor(R.color.qs_tile_trash_delete_tint);
+ icon = R.drawable.ic_qs_tile_delete_disable;
+ color = R.color.qs_tile_trash_delete_tint;
}
- DrawableCompat.setTint(mQsPanelTop.getDropTargetIcon().getDrawable(), color);
- mQsPanelTop.getDropTargetIcon().invalidate();
+ mQsPanelTop.setDropIcon(icon, color);
}
if (!originatingTileEvent && v != getDropTarget() && targetTile != null) {
@@ -1057,9 +1056,7 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
}
if (v == mQsPanelTop) {
- final int color = mContext.getColor(R.color.qs_tile_trash);
- DrawableCompat.setTint(mQsPanelTop.getDropTargetIcon().getDrawable(), color);
- mQsPanelTop.getDropTargetIcon().invalidate();
+ mQsPanelTop.setDropIcon(R.drawable.ic_qs_tile_delete_disable, R.color.qs_tile_trash_normal_tint);
}
if (originatingTileEvent
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSPanelTopView.java b/packages/SystemUI/src/com/android/systemui/qs/QSPanelTopView.java
index 35cd929..57c311c 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSPanelTopView.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSPanelTopView.java
@@ -23,8 +23,12 @@ import android.annotation.Nullable;
import android.app.ActivityManager;
import android.content.ContentResolver;
import android.content.Context;
+import android.graphics.PorterDuff;
+import android.graphics.drawable.Animatable;
+import android.graphics.drawable.Drawable;
import android.os.Handler;
import android.os.UserHandle;
+import android.support.v4.graphics.drawable.DrawableCompat;
import android.support.v4.view.animation.FastOutSlowInInterpolator;
import android.util.AttributeSet;
import android.util.Log;
@@ -160,6 +164,18 @@ public class QSPanelTopView extends FrameLayout {
animateToState();
}
+ public void setDropIcon(int resourceId, int colorResourceId) {
+ mDropTargetIcon.setImageResource(resourceId);
+ final Drawable drawable = mDropTargetIcon.getDrawable();
+
+ DrawableCompat.setTintMode(drawable, PorterDuff.Mode.SRC_ATOP);
+ DrawableCompat.setTint(drawable, mContext.getColor(colorResourceId));
+
+ if (drawable instanceof Animatable) {
+ ((Animatable) drawable).start();
+ }
+ }
+
public void toast(int textStrResId) {
mDisplayingToast = true;
mToastView.setText(textStrResId);