Add a glow selection to the icons. I'm not sure if I like it.
diff --git a/src/com/android/launcher2/AllAppsView.java b/src/com/android/launcher2/AllAppsView.java
index f7908b6..2199432 100644
--- a/src/com/android/launcher2/AllAppsView.java
+++ b/src/com/android/launcher2/AllAppsView.java
@@ -39,7 +39,6 @@
import android.database.DataSetObserver;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
-import android.graphics.BlurMaskFilter;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.drawable.BitmapDrawable;
@@ -386,6 +385,7 @@
private Allocation mAllocTouchXBorders;
private Bitmap mSelectionBitmap;
+ private Canvas mSelectionCanvas;
Params mParams;
State mState;
@@ -534,20 +534,9 @@
mParams.save();
mState.save();
- mSelectionBitmap = Bitmap.createBitmap(Defines.ICON_WIDTH_PX, Defines.ICON_HEIGHT_PX,
- Bitmap.Config.ARGB_8888);
- Bitmap selectionBitmap = mSelectionBitmap;
- Paint paint = new Paint();
- float radius = 12 * getContext().getResources().getDisplayMetrics().density;
- //paint.setMaskFilter(new BlurMaskFilter(radius, BlurMaskFilter.Blur.OUTER));
- Canvas canvas = new Canvas(selectionBitmap);
- canvas.drawColor(0xffff0000);
-
- mSelectedIcon = Allocation.createFromBitmap(mRS, selectionBitmap,
- Element.RGBA_8888, false);
- mSelectedIcon.uploadToTexture(0);
-
- mState.selectedIconTexture = mSelectedIcon.getID();
+ mSelectionBitmap = Bitmap.createBitmap(Defines.ICON_TEXTURE_WIDTH_PX,
+ Defines.ICON_TEXTURE_HEIGHT_PX, Bitmap.Config.ARGB_8888);
+ mSelectionCanvas = new Canvas(mSelectionBitmap);
Log.d(TAG, "initData calling mRollo.setApps");
setApps(null);
@@ -612,6 +601,9 @@
mScript.bindAllocation(mAllocLabelID, Defines.ALLOC_LABEL_IDS);
}
+ if (mAllAppsList != null) {
+ selectIcon(0); // TODO remove
+ }
mState.save();
}
@@ -676,13 +668,29 @@
* You need to call save() on mState on your own after calling this.
*/
void selectIcon(int x, int y, int scrollX, int currentPage) {
- int iconCount = mAllAppsList.size();
int index = chooseTappedIcon(x, y, scrollX, currentPage);
+ selectIcon(index);
+ }
+
+ void selectIcon(int index) {
+ Log.d(TAG, "selectIcon index=" + index);
+ int iconCount = mAllAppsList.size();
if (index < 0 || index >= iconCount) {
mState.selectedIconIndex = -1;
return;
} else {
mState.selectedIconIndex = index;
+
+ Bitmap selectionBitmap = mSelectionBitmap;
+
+ Utilities.drawSelectedAllAppsBitmap(mSelectionCanvas,
+ selectionBitmap.getWidth(), selectionBitmap.getHeight(),
+ mAllAppsList.get(index).iconBitmap);
+
+ mSelectedIcon = Allocation.createFromBitmap(mRS, selectionBitmap,
+ Element.RGBA_8888, false);
+ mSelectedIcon.uploadToTexture(0);
+ mState.selectedIconTexture = mSelectedIcon.getID();
}
}
@@ -690,7 +698,7 @@
* You need to call save() on mState on your own after calling this.
*/
void clearSelectedIcon() {
- mState.selectedIconIndex = -1;
+ //mState.selectedIconIndex = -1;
}
}
}