Deferring create hardware layers until we load widget pages. (5330412)

Change-Id: Ia1b5e3ec3db7b7de4b0a76486136ba9df07ff70f
This commit is contained in:
Winson Chung
2011-09-19 18:34:19 -07:00
parent ff648b5512
commit 7f0acdde96
@@ -600,6 +600,19 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
}
}
@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
// Clean up all the async tasks
Iterator<AppsCustomizeAsyncTask> iter = mRunningTasks.iterator();
while (iter.hasNext()) {
AppsCustomizeAsyncTask task = (AppsCustomizeAsyncTask) iter.next();
task.cancel(false);
iter.remove();
}
}
public void setContentType(ContentType type) {
mContentType = type;
invalidatePageData(0, (type != ContentType.Applications));
@@ -982,7 +995,6 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
prepareLoadWidgetPreviewsTask(page, items, cellWidth, cellHeight, mWidgetCountX);
}
PagedViewGridLayout layout = (PagedViewGridLayout) getPageAt(page);
layout.createHardwareLayer();
}
private void loadWidgetPreviewsInBackground(AppsCustomizeAsyncTask task,
AsyncTaskPageData data) {
@@ -1073,6 +1085,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
if (iy > 0) lp.topMargin = mWidgetHeightGap;
layout.addView(widget, lp);
}
layout.createHardwareLayer();
invalidate();
forceUpdateAdjacentPagesAlpha();