Simplifying logic to create/destroy hardware layers in All Apps

Bug # 3422984
diff --git a/src/com/android/launcher2/AllAppsPagedView.java b/src/com/android/launcher2/AllAppsPagedView.java
index daa5d64..1e4821a 100644
--- a/src/com/android/launcher2/AllAppsPagedView.java
+++ b/src/com/android/launcher2/AllAppsPagedView.java
@@ -515,6 +515,7 @@
             layout.addViewToCellLayout(icon, -1, 0,
                     new PagedViewCellLayout.LayoutParams(0, 0, 4, 1));
         }
+        layout.createHardwareLayers();
     }
 
     /*
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index 05e4086..cb0d4ba 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -597,21 +597,7 @@
             canvas.clipRect(mScrollX, mScrollY, mScrollX + mRight - mLeft,
                     mScrollY + mBottom - mTop);
 
-            for (int i = 0; i < pageCount; i++) {
-                View child = getChildAt(i);
-                if (child != null && child instanceof PagedViewCellLayout) {
-                    boolean willBeDrawn = i >= leftScreen && i <= rightScreen;
-                    if (!willBeDrawn) {
-                        ((PagedViewCellLayout)child).destroyHardwareLayers();
-                    }
-                }
-            }
-
             for (int i = leftScreen; i <= rightScreen; i++) {
-                View child = getChildAt(i);
-                if (child != null && child instanceof PagedViewCellLayout) {
-                    ((PagedViewCellLayout)child).createHardwareLayers();
-                }
                 drawChild(canvas, getChildAt(i), drawingTime);
             }
             canvas.restore();
diff --git a/src/com/android/launcher2/PagedViewCellLayout.java b/src/com/android/launcher2/PagedViewCellLayout.java
index d64f3c9..57d41fa 100644
--- a/src/com/android/launcher2/PagedViewCellLayout.java
+++ b/src/com/android/launcher2/PagedViewCellLayout.java
@@ -141,6 +141,7 @@
     public void removeAllViewsOnPage() {
         mChildren.removeAllViews();
         mHolographicChildren.removeAllViews();
+        destroyHardwareLayers();
     }
 
     @Override