Fix the hit testing so the regions line up with the icons.
diff --git a/res/raw/rollo.c b/res/raw/rollo.c
index 59862bc..0844c97 100644
--- a/res/raw/rollo.c
+++ b/res/raw/rollo.c
@@ -363,10 +363,27 @@
draw_page(icon, lastIcon, -pageAngle*currentPagePosition, scale);
draw_page(icon+iconsPerPage, lastIcon, (-pageAngle*currentPagePosition)+pageAngle, scale);
+ // Draw the border lines for debugging ========================================
+ /*
+ bindProgramVertex(NAMED_PVOrtho);
+ bindProgramFragment(NAMED_PFOrtho);
+ bindProgramFragmentStore(NAMED_PFSText);
+
+ color(1.0f, 1.0f, 0.0f, 0.99f);
+ int i;
+ for (i=0; i<ROWS_PER_PAGE+1; i++) {
+ int y = loadI32(ALLOC_Y_BORDERS, i);
+ drawRect(0, y, SCREEN_WIDTH_PX, y+1, 0.0f);
+ }
+ for (i=0; i<COLUMNS_PER_PAGE+1; i++) {
+ int x = loadI32(ALLOC_X_BORDERS, i);
+ drawRect(x, 0, x+1, SCREEN_HEIGHT_PX, 0.0f);
+ }
+ */
// Draw the scroll handle ========================================
/*
- bindTexture(NAMED_PFText, 0, loadI32(ALLOC_PARAMS, PARAM_SCROLL_HANDLE_ID));
+ bindTexture(NAMED_PFOrtho, 0, loadI32(ALLOC_PARAMS, PARAM_SCROLL_HANDLE_ID));
float handleLeft = 40 + (320 * (scrollXPx/(float)(maxScrollXPx)));
float handleTop = 680;
float handleWidth = loadI32(ALLOC_PARAMS, PARAM_SCROLL_HANDLE_TEX_WIDTH);
diff --git a/src/com/android/launcher2/AllAppsView.java b/src/com/android/launcher2/AllAppsView.java
index 388a9bf..26d8166 100644
--- a/src/com/android/launcher2/AllAppsView.java
+++ b/src/com/android/launcher2/AllAppsView.java
@@ -399,7 +399,7 @@
private ProgramStore mPSText;
private ProgramFragment mPFDebug;
private ProgramFragment mPFImages;
- private ProgramFragment mPFText;
+ private ProgramFragment mPFOrtho;
private ProgramVertex mPV;
private ProgramVertex.MatrixAllocation mPVAlloc;
private ProgramVertex mPVOrtho;
@@ -523,10 +523,10 @@
mPFImages.bindSampler(mSampler, 0);
bf.setTexEnvMode(ProgramFragment.EnvMode.MODULATE, 0);
- //mPFText = bf.create();
- mPFText = (new ProgramFragment.Builder(mRS, null, null)).create();
- mPFText.setName("PFText");
- mPFText.bindSampler(mSamplerText, 0);
+ //mPFOrtho = bf.create();
+ mPFOrtho = (new ProgramFragment.Builder(mRS, null, null)).create();
+ mPFOrtho.setName("PFOrtho");
+ mPFOrtho.bindSampler(mSamplerText, 0);
ProgramStore.Builder bs = new ProgramStore.Builder(mRS, null, null);
bs.setDepthFunc(ProgramStore.DepthFunc.ALWAYS);
@@ -691,20 +691,20 @@
int cellHeight = iconsSize / Defines.ROWS_PER_PAGE;
int cellWidth = iconsSize / Defines.COLUMNS_PER_PAGE;
- int centerY = (height / 2) - (int)(cellHeight * 0.35f);
- mTouchYBorders[0] = centerY - (int)(2.4f * cellHeight);
- mTouchYBorders[1] = centerY - (int)(1.15f * cellHeight);
+ int centerY = (height / 2) - (int)(cellHeight * 0.2f);
+ mTouchYBorders[0] = centerY - (int)(2.8f * cellHeight);
+ mTouchYBorders[1] = centerY - (int)(1.25f * cellHeight);
mTouchYBorders[2] = centerY;
- mTouchYBorders[3] = centerY + (int)(1.15f * cellHeight);;
- mTouchYBorders[4] = centerY + (int)(2.4f * cellHeight);
+ mTouchYBorders[3] = centerY + (int)(1.25f * cellHeight);;
+ mTouchYBorders[4] = centerY + (int)(2.6f * cellHeight);
mAllocTouchYBorders.data(mTouchYBorders);
int centerX = (width / 2);
mTouchXBorders[0] = centerX - (2 * cellWidth);
- mTouchXBorders[1] = centerX - (int)(0.83f * cellWidth);;
+ mTouchXBorders[1] = centerX - (int)(0.85f * cellWidth);
mTouchXBorders[2] = centerX;
- mTouchXBorders[3] = centerX + (int)(0.83f * cellWidth);;
+ mTouchXBorders[3] = centerX + (int)(0.85f * cellWidth);
mTouchXBorders[4] = centerX + (2 * cellWidth);
mAllocTouchXBorders.data(mTouchXBorders);