Speed up overview transition

Change-Id: Ie4086717318939875228dd3a920cecf79ba0ff91
diff --git a/res/values/config.xml b/res/values/config.xml
index 0766d76..4978281 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -14,6 +14,8 @@
     <!-- The alpha of the AppsCustomize bg in spring loaded mode -->
     <integer name="config_appsCustomizeSpringLoadedBgAlpha">65</integer>
     <integer name="config_workspaceUnshrinkTime">300</integer>
+    <integer name="config_overviewTransitionTime">250</integer>
+
     <!-- Out of 100, the percent to shrink the workspace during spring loaded mode. -->
     <integer name="config_workspaceSpringLoadShrinkPercentage">80</integer>
     <!-- Out of 100, the percent to shrink the workspace during overview mode. -->
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index 1f4a07b..38275b6 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -1974,9 +1974,15 @@
             }
         }
 
-        final int duration = workspaceToAllApps ?
-                getResources().getInteger(R.integer.config_workspaceUnshrinkTime) :
-                getResources().getInteger(R.integer.config_appsCustomizeWorkspaceShrinkTime);
+        final int duration;
+        if (workspaceToAllApps) {
+            duration = getResources().getInteger(R.integer.config_workspaceUnshrinkTime);
+        } else if (workspaceToOverview || overviewToWorkspace) {
+            duration = getResources().getInteger(R.integer.config_overviewTransitionTime);
+        } else {
+            duration = getResources().getInteger(R.integer.config_appsCustomizeWorkspaceShrinkTime);
+        }
+
         for (int i = 0; i < getChildCount(); i++) {
             final CellLayout cl = (CellLayout) getChildAt(i);
             boolean isCurrentPage = (i == getNextPage());
@@ -2011,6 +2017,7 @@
         final View overviewPanel = mLauncher.getOverviewPanel();
         final View hotseat = mLauncher.getHotseat();
         if (animated) {
+            anim.setDuration(duration);
             LauncherViewPropertyAnimator scale = new LauncherViewPropertyAnimator(this);
             scale.scaleX(mNewScale)
                 .scaleY(mNewScale)
@@ -2029,14 +2036,13 @@
                         LauncherViewPropertyAnimator alphaAnim =
                             new LauncherViewPropertyAnimator(cl.getShortcutsAndWidgets());
                         alphaAnim.alpha(mNewAlphas[i])
-                            .setDuration(duration)
                             .setInterpolator(mZoomInInterpolator);
                         anim.play(alphaAnim);
                     }
                     if (mOldBackgroundAlphas[i] != 0 ||
                         mNewBackgroundAlphas[i] != 0) {
                         ValueAnimator bgAnim =
-                                LauncherAnimUtils.ofFloat(cl, 0f, 1f).setDuration(duration);
+                                LauncherAnimUtils.ofFloat(cl, 0f, 1f);
                         bgAnim.setInterpolator(mZoomInInterpolator);
                         bgAnim.addUpdateListener(new LauncherAnimatorUpdateListener() {
                                 public void onAnimationUpdate(float a, float b) {