diff options
author | Adam Cohen <adamcohen@google.com> | 2013-10-29 15:25:02 -0700 |
---|---|---|
committer | Adam Cohen <adamcohen@google.com> | 2013-10-29 15:25:12 -0700 |
commit | 8bdbaab8e67d33e3eeece0aa5b893014444c3be8 (patch) | |
tree | c6f3eff59b42629b3ef79a79fc6e616861f654e3 | |
parent | 88400d521e9c46382d835f42c1d50235cf99b2eb (diff) | |
download | android_packages_apps_Trebuchet-8bdbaab8e67d33e3eeece0aa5b893014444c3be8.tar.gz android_packages_apps_Trebuchet-8bdbaab8e67d33e3eeece0aa5b893014444c3be8.tar.bz2 android_packages_apps_Trebuchet-8bdbaab8e67d33e3eeece0aa5b893014444c3be8.zip |
Fixing regression in paging
Change-Id: I9a76448aa09aea6a86a8a97860e48113c222a205
-rw-r--r-- | src/com/android/launcher3/PagedView.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java index 3ff987393..1fee4c23d 100644 --- a/src/com/android/launcher3/PagedView.java +++ b/src/com/android/launcher3/PagedView.java @@ -519,11 +519,13 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc forceFinishScroller(); } - private void abortScrollerAnimation() { + private void abortScrollerAnimation(boolean resetNextPage) { mScroller.abortAnimation(); // We need to clean up the next page here to avoid computeScrollHelper from // updating current page on the pass. - mNextPage = INVALID_PAGE; + if (resetNextPage) { + mNextPage = INVALID_PAGE; + } } private void forceFinishScroller() { @@ -538,7 +540,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc */ void setCurrentPage(int currentPage) { if (!mScroller.isFinished()) { - abortScrollerAnimation(); + abortScrollerAnimation(true); } // don't introduce any checks like mCurrentPage == currentPage here-- if we change the // the default @@ -1372,7 +1374,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc final boolean finishedScrolling = (mScroller.isFinished() || xDist < mTouchSlop); if (finishedScrolling) { mTouchState = TOUCH_STATE_REST; - abortScrollerAnimation(); + abortScrollerAnimation(false); } else { if (isTouchPointInViewportWithBuffer((int) mDownMotionX, (int) mDownMotionY)) { mTouchState = TOUCH_STATE_SCROLLING; @@ -1671,7 +1673,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc * will be false if being flinged. */ if (!mScroller.isFinished()) { - abortScrollerAnimation(); + abortScrollerAnimation(false); } // Remember where the motion event started @@ -1869,7 +1871,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc } } else { if (!mScroller.isFinished()) { - abortScrollerAnimation(); + abortScrollerAnimation(true); } float scaleX = getScaleX(); |