summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2012-06-06 11:48:13 -0700
committerMichael Jurka <mikejurka@google.com>2012-06-06 11:48:13 -0700
commitf6a9690c3471a8114250f10d8c7c0f22f43ffb8b (patch)
treeae33d8efe1f0e6f48fd4ef95c2df87094d0813da /src/com
parentf9426d5df0592a67c8a998d3ab445a3bb5eafc18 (diff)
downloadandroid_packages_apps_Trebuchet-f6a9690c3471a8114250f10d8c7c0f22f43ffb8b.tar.gz
android_packages_apps_Trebuchet-f6a9690c3471a8114250f10d8c7c0f22f43ffb8b.tar.bz2
android_packages_apps_Trebuchet-f6a9690c3471a8114250f10d8c7c0f22f43ffb8b.zip
Defer loading widget previews until after All Apps transition
Bug: 6615463
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/launcher2/AppsCustomizePagedView.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java
index 3a4125510..f12da7d05 100644
--- a/src/com/android/launcher2/AppsCustomizePagedView.java
+++ b/src/com/android/launcher2/AppsCustomizePagedView.java
@@ -310,6 +310,8 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
private boolean mInTransition;
private ArrayList<AsyncTaskPageData> mDeferredSyncWidgetPageItems =
new ArrayList<AsyncTaskPageData>();
+ private ArrayList<Runnable> mDeferredPrepareLoadWidgetPreviewsTasks =
+ new ArrayList<Runnable>();
// Used for drawing shortcut previews
BitmapCache mCachedShortcutPreviewBitmap = new BitmapCache();
@@ -940,6 +942,10 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
onSyncWidgetPageItems(d);
}
mDeferredSyncWidgetPageItems.clear();
+ for (Runnable r : mDeferredPrepareLoadWidgetPreviewsTasks) {
+ r.run();
+ }
+ mDeferredPrepareLoadWidgetPreviewsTasks.clear();
mForceDrawAllChildrenNextFrame = !toWorkspace;
}
@@ -1023,6 +1029,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
}
}
mDeferredSyncWidgetPageItems.clear();
+ mDeferredPrepareLoadWidgetPreviewsTasks.clear();
}
public void setContentType(ContentType type) {
@@ -1511,8 +1518,12 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
loadWidgetPreviewsInBackground(null, data);
onSyncWidgetPageItems(data);
} else {
- prepareLoadWidgetPreviewsTask(page, items,
- maxPreviewWidth, maxPreviewHeight, mWidgetCountX);
+ if (mInTransition) {
+ mDeferredPrepareLoadWidgetPreviewsTasks.add(this);
+ } else {
+ prepareLoadWidgetPreviewsTask(page, items,
+ maxPreviewWidth, maxPreviewHeight, mWidgetCountX);
+ }
}
}
});