Improve workspace's scrolling performance.

This is achieved by moving the 3D All Apps surface out of the screen when
it is not needed anymore. This saves us compositing costs that slow down
the drawing of the workspace.

Change-Id: I06ce1f77449fe1864517f4161913bc162c8e6b46
diff --git a/src/com/android/launcher2/AllApps3D.java b/src/com/android/launcher2/AllApps3D.java
index 9c3b3e4..b8aa8ec 100644
--- a/src/com/android/launcher2/AllApps3D.java
+++ b/src/com/android/launcher2/AllApps3D.java
@@ -961,7 +961,23 @@
         public void run() {
             sRollo.mScrollPos = ((float)mData[0]) / (1 << 16);
             mVelocity = ((float)mData[1]) / (1 << 16);
+
+            boolean lastVisible = isVisible();
             mZoom = ((float)mData[2]) / (1 << 16);
+
+            final boolean visible = isVisible();
+            if (visible != lastVisible) {
+                post(new Runnable() {
+                    public void run() {
+                        if (visible) {
+                            showSurface();
+                        } else {
+                            hideSurface();
+                        }
+                    }
+                });
+            }
+
             sZoomDirty = false;
         }
     }