From 24dbd51bdaee076f5b3076bb652686be68aa090a Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Wed, 16 Mar 2016 14:56:42 -0400 Subject: [PATCH] Change drag label while dragging QS tiles Bug: 27316050 Change-Id: I20b4f3c94f1362e9990cebefdfa900a23636a938 --- packages/SystemUI/res/values/strings.xml | 3 +++ .../com/android/systemui/qs/customize/TileAdapter.java | 10 +++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml index 8af413c4816c7..20a3c8b3123ec 100644 --- a/packages/SystemUI/res/values/strings.xml +++ b/packages/SystemUI/res/values/strings.xml @@ -1435,6 +1435,9 @@ Drag to add tiles + + Drag here to remove + Edit diff --git a/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java b/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java index d9b3b3f6ed4cc..57db3a6acba25 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java +++ b/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java @@ -28,6 +28,7 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; +import android.widget.TextView; import com.android.systemui.R; import com.android.systemui.qs.QSIconView; import com.android.systemui.qs.QSTileView; @@ -153,7 +154,12 @@ public class TileAdapter extends RecyclerView.Adapter implements TileSta @Override public void onBindViewHolder(final Holder holder, int position) { - if (holder.getItemViewType() == TYPE_EDIT) return; + if (holder.getItemViewType() == TYPE_EDIT) { + ((TextView) holder.itemView.findViewById(android.R.id.title)).setText( + mCurrentDrag != null ? R.string.drag_to_remove_tiles + : R.string.drag_to_add_tiles); + return; + } TileInfo info = mTiles.get(position); holder.mTileView.onStateChanged(info.state); @@ -250,11 +256,13 @@ public class TileAdapter extends RecyclerView.Adapter implements TileSta super.onSelectedChanged(viewHolder, actionState); if (mCurrentDrag != null) { mCurrentDrag.stopDrag(); + mCurrentDrag = null; } if (viewHolder != null) { mCurrentDrag = (Holder) viewHolder; mCurrentDrag.startDrag(); } + notifyItemChanged(mDividerIndex); } @Override