Fixing widget minResizeWidth/Height interpretation (Issue 5327589)

Change-Id: I16bf9bb20baad4fa1e0676d98bb93de758af0ebc
diff --git a/src/com/android/launcher2/AppWidgetResizeFrame.java b/src/com/android/launcher2/AppWidgetResizeFrame.java
index c7dbc0f..4762193 100644
--- a/src/com/android/launcher2/AppWidgetResizeFrame.java
+++ b/src/com/android/launcher2/AppWidgetResizeFrame.java
@@ -64,11 +64,13 @@
     public static final int RIGHT = 2;
     public static final int BOTTOM = 3;
 
+    private Launcher mLauncher;
+
     public AppWidgetResizeFrame(Context context, ItemInfo itemInfo, 
             LauncherAppWidgetHostView widgetView, CellLayout cellLayout, DragLayer dragLayer) {
 
         super(context);
-        mContext = context;
+        mLauncher = (Launcher) context;
         mItemInfo = itemInfo;
         mCellLayout = cellLayout;
         mWidgetView = widgetView;
@@ -77,7 +79,7 @@
         mWorkspace = (Workspace) dragLayer.findViewById(R.id.workspace);
 
         final AppWidgetProviderInfo info = widgetView.getAppWidgetInfo();
-        int[] result = mCellLayout.rectToCell(info.minResizeWidth, info.minResizeHeight, null);
+        int[] result = mLauncher.getMinResizeSpanForWidget(info, null);
         mMinHSpan = result[0];
         mMinVSpan = result[1];
 
@@ -123,7 +125,7 @@
             mRightHandle.setVisibility(GONE);
         }
 
-        final float density = mContext.getResources().getDisplayMetrics().density;
+        final float density = mLauncher.getResources().getDisplayMetrics().density;
         mBackgroundPadding = (int) Math.ceil(density * BACKGROUND_PADDING);
         mTouchTargetWidth = 2 * mBackgroundPadding;
     }
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index c3edb99..b6393ca 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -902,6 +902,10 @@
         return getSpanForWidget(info.provider, info.minWidth, info.minHeight, spanXY);
     }
 
+    int[] getMinResizeSpanForWidget(AppWidgetProviderInfo info, int[] spanXY) {
+        return getSpanForWidget(info.provider, info.minResizeWidth, info.minResizeHeight, spanXY);
+    }
+
     int[] getSpanForWidget(PendingAddWidgetInfo info, int[] spanXY) {
         return getSpanForWidget(info.componentName, info.minWidth, info.minHeight, spanXY);
     }