Merge "Change quick setting min_num_tiles number and text to resources value." into qt-dev
am: bc058faaa3

Change-Id: I329be5dee77d6f45b4bd5314971655df52525294
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 4df824e..a549870 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -112,6 +112,9 @@
         wifi,bt,dnd,flashlight,rotation,battery,cell,airplane,cast
     </string>
 
+    <!-- The minimum number of tiles to display in QuickSettings -->
+    <integer name="quick_settings_min_num_tiles">6</integer>
+
     <!-- Tiles native to System UI. Order should match "quick_settings_tiles_default" -->
     <string name="quick_settings_tiles_stock" translatable="false">
         wifi,cell,battery,dnd,flashlight,rotation,bt,airplane,location,hotspot,inversion,saver,dark,work,cast,night
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index f60613a..7feacb4 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -2011,7 +2011,7 @@
     <string name="drag_to_remove_tiles">Drag here to remove</string>
 
     <!-- Label to indicate to users that additional tiles cannot be removed. [CHAR LIMIT=60] -->
-    <string name="drag_to_remove_disabled">You need at least 6 tiles</string>
+    <string name="drag_to_remove_disabled">You need at least <xliff:g id="min_num_tiles" example="6">%1$d</xliff:g> tiles</string>
 
     <!-- Button to edit the tile ordering of quick settings [CHAR LIMIT=60] -->
     <string name="qs_edit">Edit</string>
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 8ed5424..2542abd 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java
@@ -19,6 +19,7 @@
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.DialogInterface;
+import android.content.res.Resources;
 import android.graphics.Canvas;
 import android.graphics.drawable.Drawable;
 import android.os.Handler;
@@ -54,7 +55,6 @@
 import java.util.List;
 
 public class TileAdapter extends RecyclerView.Adapter<Holder> implements TileStateListener {
-    private static final int MIN_NUM_TILES = 6;
     private static final long DRAG_LENGTH = 100;
     private static final float DRAG_SCALE = 1.2f;
     public static final long MOVE_DURATION = 150;
@@ -79,6 +79,7 @@
     private final ItemTouchHelper mItemTouchHelper;
     private final ItemDecoration mDecoration;
     private final AccessibilityManager mAccessibilityManager;
+    private final int mMinNumTiles;
     private int mEditIndex;
     private int mTileDividerIndex;
     private boolean mNeedsFocus;
@@ -97,6 +98,7 @@
         mAccessibilityManager = context.getSystemService(AccessibilityManager.class);
         mItemTouchHelper = new ItemTouchHelper(mCallbacks);
         mDecoration = new TileItemDecoration(context);
+        mMinNumTiles = context.getResources().getInteger(R.integer.quick_settings_min_num_tiles);
     }
 
     public void setHost(QSTileHost host) {
@@ -247,15 +249,17 @@
             return;
         }
         if (holder.getItemViewType() == TYPE_EDIT) {
-            final int titleResId;
+            final String titleText;
+            Resources res = mContext.getResources();
             if (mCurrentDrag == null) {
-                titleResId = R.string.drag_to_add_tiles;
+                titleText = res.getString(R.string.drag_to_add_tiles);
             } else if (!canRemoveTiles() && mCurrentDrag.getAdapterPosition() < mEditIndex) {
-                titleResId = R.string.drag_to_remove_disabled;
+                titleText = res.getString(R.string.drag_to_remove_disabled, mMinNumTiles);
             } else {
-                titleResId = R.string.drag_to_remove_tiles;
+                titleText = res.getString(R.string.drag_to_remove_tiles);
             }
-            ((TextView) holder.itemView.findViewById(android.R.id.title)).setText(titleResId);
+
+            ((TextView) holder.itemView.findViewById(android.R.id.title)).setText(titleText);
             return;
         }
         if (holder.getItemViewType() == TYPE_ACCESSIBLE_DROP) {
@@ -337,7 +341,7 @@
     }
 
     private boolean canRemoveTiles() {
-        return mCurrentSpecs.size() > MIN_NUM_TILES;
+        return mCurrentSpecs.size() > mMinNumTiles;
     }
 
     private void selectPosition(int position, View v) {