Bug fixes

- Fixing issue where drop target is not as tall as it should be (5116098)
- Fixing issue where number of cells was being computed incorrectly (5112002)
- Disabling side page fading in AppsCustomize on the phone UI
- Should be using action bar bg states instead of tab bg states (5086625)

Change-Id: I0ec927f87cede48dcf4b66cbaa1d62a09f3492b8
diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java
index e5fe7bd..53d154f 100644
--- a/src/com/android/launcher2/AppsCustomizePagedView.java
+++ b/src/com/android/launcher2/AppsCustomizePagedView.java
@@ -228,6 +228,7 @@
         // (top + bottom)
         mWidgetPreviewIconPaddedDimension =
             (int) (mAppIconSize * (1 + (2 * sWidgetPreviewIconPaddingPercentage)));
+        mFadeInAdjacentScreens = LauncherApplication.isScreenLarge();
     }
 
     @Override
@@ -567,7 +568,9 @@
         layout.allowHardwareLayerCreation();
         layout.createHardwareLayers();
 
-        prepareGenerateHoloOutlinesTask(page, items, images);
+        if (mFadeInAdjacentScreens) {
+            prepareGenerateHoloOutlinesTask(page, items, images);
+        }
     }
 
     /**
@@ -929,7 +932,10 @@
 
         invalidate();
         forceUpdateAdjacentPagesAlpha();
-        prepareGenerateHoloOutlinesTask(data.page, data.items, data.generatedImages);
+
+        if (mFadeInAdjacentScreens) {
+            prepareGenerateHoloOutlinesTask(data.page, data.items, data.generatedImages);
+        }
     }
     private void onHolographicPageItemsLoaded(AsyncTaskPageData data) {
         // Invalidate early to short-circuit children invalidates
diff --git a/src/com/android/launcher2/CellLayout.java b/src/com/android/launcher2/CellLayout.java
index 0a3c96d..d9d0487 100644
--- a/src/com/android/launcher2/CellLayout.java
+++ b/src/com/android/launcher2/CellLayout.java
@@ -1528,8 +1528,8 @@
         int smallerSize = Math.min(actualWidth, actualHeight);
 
         // Always round up to next largest cell
-        int spanX = (width + smallerSize) / smallerSize;
-        int spanY = (height + smallerSize) / smallerSize;
+        int spanX = (int) Math.ceil(width / (float) smallerSize);
+        int spanY = (int) Math.ceil(height / (float) smallerSize);
 
         if (result == null) {
             return new int[] { spanX, spanY };