Tablet/AllApps fixes.

- Fixing regression where the power button did not dismiss Apps/Customize
- Fixing regression in number of icons in portrain in AC, and removing legacy peek var for calculations (5122724)
- Fixing spacing in shop button on tablet
- Fixing bug where the apps pane was being changed as we were animating (5139543)

Change-Id: I3a3e5f224fd92e99072c830d13423d195179e7c7
diff --git a/src/com/android/launcher2/AppsCustomizeTabHost.java b/src/com/android/launcher2/AppsCustomizeTabHost.java
index 25001b1..8f067fa 100644
--- a/src/com/android/launcher2/AppsCustomizeTabHost.java
+++ b/src/com/android/launcher2/AppsCustomizeTabHost.java
@@ -45,6 +45,9 @@
     private ViewGroup mTabsContainer;
     private AppsCustomizePagedView mAppsCustomizePane;
 
+    private boolean mInTransition;
+    private boolean mResetAfterTransition;
+
     public AppsCustomizeTabHost(Context context, AttributeSet attrs) {
         super(context, attrs);
         mLayoutInflater = LayoutInflater.from(context);
@@ -223,9 +226,20 @@
         return super.getDescendantFocusability();
     }
 
+    void reset() {
+        if (mInTransition) {
+            // Defer to after the transition to reset
+            mResetAfterTransition = true;
+        } else {
+            // Reset immediately
+            mAppsCustomizePane.reset();
+        }
+    }
+
     /* LauncherTransitionable overrides */
     @Override
     public void onLauncherTransitionStart(Animator animation, boolean toWorkspace) {
+        mInTransition = true;
         // isHardwareAccelerated() checks if we're attached to a window and if that
         // window is HW accelerated-- we were sometimes not attached to a window
         // and buildLayer was throwing an IllegalStateException
@@ -240,10 +254,15 @@
         if (!toWorkspace && !LauncherApplication.isScreenLarge()) {
             mAppsCustomizePane.showScrollingIndicator(false);
         }
+        if (mResetAfterTransition) {
+            mAppsCustomizePane.reset();
+            mResetAfterTransition = false;
+        }
     }
 
     @Override
     public void onLauncherTransitionEnd(Animator animation, boolean toWorkspace) {
+        mInTransition = false;
         if (animation != null) {
             setLayerType(LAYER_TYPE_NONE, null);
         }