Merge "Fixing various tests" into ub-launcher3-dorval-polish2
diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java
index 031bfe1..6dfb190 100644
--- a/src/com/android/launcher3/DeviceProfile.java
+++ b/src/com/android/launcher3/DeviceProfile.java
@@ -63,7 +63,7 @@
      */
     private static final float MAX_HORIZONTAL_PADDING_PERCENT = 0.14f;
 
-    private static final float TALL_DEVICE_ASPECT_RATIO_THRESHOLD = 1.82f;
+    private static final float TALL_DEVICE_ASPECT_RATIO_THRESHOLD = 2.0f;
 
     // Overview mode
     private final int overviewModeMinIconZoneHeightPx;
@@ -238,17 +238,17 @@
         updateAvailableDimensions(dm, res);
 
         // Now that we have all of the variables calculated, we can tune certain sizes.
-        float aspectRatio = ((float) Math.max(availableWidthPx, availableHeightPx))
-                / Math.min(availableWidthPx, availableHeightPx);
+        float aspectRatio = ((float) Math.max(widthPx, heightPx)) / Math.min(widthPx, heightPx);
         boolean isTallDevice = Float.compare(aspectRatio, TALL_DEVICE_ASPECT_RATIO_THRESHOLD) >= 0;
         if (!isVerticalBarLayout() && isPhone && isTallDevice) {
-            // We increase the page indicator size when there is extra space.
+            // We increase the hotseat size when there is extra space.
             // ie. For a display with a large aspect ratio, we can keep the icons on the workspace
-            // in portrait mode closer together by increasing the page indicator size.
+            // in portrait mode closer together by adding more height to the hotseat.
             // Note: This calculation was created after noticing a pattern in the design spec.
-            pageIndicatorSizePx = getCellSize().y - iconSizePx - iconDrawablePaddingPx;
+            int extraSpace = getCellSize().y - iconSizePx - iconDrawablePaddingPx;
+            hotseatBarHeightPx += extraSpace - pageIndicatorSizePx;
 
-            // Recalculate the available dimensions using the new page indicator size.
+            // Recalculate the available dimensions using the new hotseat size.
             updateAvailableDimensions(dm, res);
         }
 
@@ -301,10 +301,10 @@
         // In normal cases, All Apps cell height should equal the Workspace cell height.
         // Since we are removing labels from the Workspace, we need to manually compute the
         // All Apps cell height.
+        int topBottomPadding = allAppsIconDrawablePaddingPx * (isVerticalBarLayout() ? 2 : 1);
         allAppsCellHeightPx = allAppsIconSizePx + allAppsIconDrawablePaddingPx
                 + Utilities.calculateTextHeight(allAppsIconTextSizePx)
-                // Top and bottom padding is equal to the drawable padding
-                + allAppsIconDrawablePaddingPx * 2;
+                + topBottomPadding * 2;
     }
 
     /**
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index 4b1812e..7c25861 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -465,9 +465,6 @@
         setOrientation();
 
         setContentView(mLauncherView);
-        if (mLauncherCallbacks != null) {
-            mLauncherCallbacks.onCreate(savedInstanceState);
-        }
 
         // Listen for broadcasts
         IntentFilter filter = new IntentFilter();
@@ -478,6 +475,10 @@
 
         getSystemUiController().updateUiState(SystemUiController.UI_STATE_BASE_WINDOW,
                 Themes.getAttrBoolean(this, R.attr.isWorkspaceDarkText));
+
+        if (mLauncherCallbacks != null) {
+            mLauncherCallbacks.onCreate(savedInstanceState);
+        }
     }
 
     @Override