diff options
author | Michael Jurka <mikejurka@google.com> | 2012-05-14 23:13:15 -0700 |
---|---|---|
committer | Michael Jurka <mikejurka@google.com> | 2012-05-15 16:53:00 -0700 |
commit | 5e368ffbad2fb08e3eadab98eeefd4e1d05bdb2b (patch) | |
tree | 6efd6f14b5f6f52d6ff3a4311d574438424e51b1 /src | |
parent | ceca4ff1891baf033cd9d6951ec5a1d31473642f (diff) | |
download | android_packages_apps_Trebuchet-5e368ffbad2fb08e3eadab98eeefd4e1d05bdb2b.tar.gz android_packages_apps_Trebuchet-5e368ffbad2fb08e3eadab98eeefd4e1d05bdb2b.tar.bz2 android_packages_apps_Trebuchet-5e368ffbad2fb08e3eadab98eeefd4e1d05bdb2b.zip |
Solve stutter when swiping All Apps the first time
Bug: 6024062
Change-Id: I6e05e9916389b1d90bd59443a04720fbf2338f5e
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher2/AppsCustomizePagedView.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher2/PagedView.java | 5 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java index 5c91d35cc..8aaa2d9df 100644 --- a/src/com/android/launcher2/AppsCustomizePagedView.java +++ b/src/com/android/launcher2/AppsCustomizePagedView.java @@ -811,6 +811,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen onSyncWidgetPageItems(d); } mDeferredSyncWidgetPageItems.clear(); + mForceDrawAllChildrenNextFrame = !toWorkspace; } @Override @@ -1514,7 +1515,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen @Override protected void onPageEndMoving() { super.onPageEndMoving(); - + mForceDrawAllChildrenNextFrame = true; // We reset the save index when we change pages so that it will be recalculated on next // rotation mSaveInstanceStateItemIndex = -1; diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java index 5d9cf81eb..a9603acb0 100644 --- a/src/com/android/launcher2/PagedView.java +++ b/src/com/android/launcher2/PagedView.java @@ -133,6 +133,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc protected boolean mAllowOverScroll = true; protected int mUnboundedScrollX; protected int[] mTempVisiblePagesRange = new int[2]; + protected boolean mForceDrawAllChildrenNextFrame; // mOverScrollX is equal to getScrollX() when we're within the normal scroll range. Otherwise // it is equal to the scaled overscroll position. We use a separate value so as to prevent @@ -796,13 +797,15 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc // View.INVISIBLE, preventing re-drawing of their hardware layer for (int i = getChildCount() - 1; i >= 0; i--) { final View v = getPageAt(i); - if (leftScreen <= i && i <= rightScreen && shouldDrawChild(v)) { + if (mForceDrawAllChildrenNextFrame || + (leftScreen <= i && i <= rightScreen && shouldDrawChild(v))) { v.setVisibility(VISIBLE); drawChild(canvas, v, drawingTime); } else { v.setVisibility(INVISIBLE); } } + mForceDrawAllChildrenNextFrame = false; canvas.restore(); } } |