Remove unnecessary allocations during draw
Bug #7327799

Change-Id: Ic3a18fb9d850f2c692dcb187a206c61dfa8108a4
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index 6350c84..4940ae0 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -254,6 +254,13 @@
     private float[] mNewRotationYs;
     private float mTransitionProgress;
 
+    private final Runnable mBindPages = new Runnable() {
+        @Override
+        public void run() {
+            mLauncher.getModel().bindRemainingSynchronousPages();
+        }
+    };
+
     /**
      * Used to inflate the Workspace from XML.
      *
@@ -1292,12 +1299,7 @@
         super.onDraw(canvas);
 
         // Call back to LauncherModel to finish binding after the first draw
-        post(new Runnable() {
-            @Override
-            public void run() {
-                mLauncher.getModel().bindRemainingSynchronousPages();
-            }
-        });
+        post(mBindPages);
     }
 
     boolean isDrawingBackgroundGradient() {