OSDN Git Service

Fix the way Home computes the cell span of widgets.
authorJoe Onorato <joeo@android.com>
Mon, 21 Sep 2009 19:23:04 +0000 (15:23 -0400)
committerJoe Onorato <joeo@android.com>
Mon, 21 Sep 2009 19:23:04 +0000 (15:23 -0400)
This was causing problem on some WVGA devices.

Change-Id: Ic02c0c70fabad7e9c4a7425d6a98cceb7803538f

res/values-land/dimens.xml
src/com/android/launcher2/CellLayout.java

index a9d5082..d2d31c2 100644 (file)
@@ -16,5 +16,8 @@
 
 <resources>
     <dimen name="workspace_cell_width">106dip</dimen>
-    <dimen name="workspace_cell_height">73dip</dimen>
+    <dimen name="workspace_cell_height">74dip</dimen>
+    <dimen name="search_widget_inset">19dip</dimen>
+    <dimen name="gesture_thumbnail_inset">8dip</dimen>
+    <dimen name="gesture_thumbnail_size">64dip</dimen>
 </resources>
index b8d44a1..84e3766 100644 (file)
@@ -18,6 +18,7 @@ package com.android.launcher2;
 
 import android.content.Context;
 import android.content.res.TypedArray;
+import android.content.res.Resources;
 import android.graphics.Rect;
 import android.graphics.RectF;
 import android.util.AttributeSet;
@@ -685,13 +686,15 @@ public class CellLayout extends ViewGroup {
     public int[] rectToCell(int width, int height) {
         // Always assume we're working with the smallest span to make sure we
         // reserve enough space in both orientations.
-        int actualWidth = mCellWidth + mWidthGap;
-        int actualHeight = mCellHeight + mHeightGap;
+        final Resources resources = getResources();
+        int actualWidth = resources.getDimensionPixelSize(R.dimen.workspace_cell_width);
+        int actualHeight = resources.getDimensionPixelSize(R.dimen.workspace_cell_height);
         int smallerSize = Math.min(actualWidth, actualHeight);
-        
+
         // Always round up to next largest cell
         int spanX = (width + smallerSize) / smallerSize;
         int spanY = (height + smallerSize) / smallerSize;
+
         return new int[] { spanX, spanY };
     }