diff --git a/src/com/android/launcher2/AllAppsView.java b/src/com/android/launcher2/AllAppsView.java
index fa272b9..8d24ea3 100644
--- a/src/com/android/launcher2/AllAppsView.java
+++ b/src/com/android/launcher2/AllAppsView.java
@@ -658,11 +658,7 @@
     public void setApps(ArrayList<ApplicationInfo> list) {
         mAllAppsList = list;
         if (mRollo != null) {
-            if (mRollo.mHasSurface) {
-                mRollo.setApps(list);
-            } else {
-                mRollo.mAppsDirty = true;
-            }
+            mRollo.setApps(list);
         }
         mLocks &= ~LOCK_ICONS_PENDING;
     }
@@ -1084,7 +1080,13 @@
             mState.iconCount = count;
             for (int i=0; i < mState.iconCount; i++) {
                 createAppIconAllocations(i, list.get(i));
-                uploadAppIcon(i, list.get(i));
+            }
+            if (mHasSurface) {
+                for (int i=0; i < mState.iconCount; i++) {
+                    uploadAppIcon(i, list.get(i));
+                }
+            } else {
+                mRollo.mAppsDirty = true;
             }
             saveAppsList();
         }
