diff options
author | Winson Chung <winsonc@google.com> | 2018-02-08 17:08:43 -0800 |
---|---|---|
committer | Winson Chung <winsonc@google.com> | 2018-02-09 12:43:36 -0800 |
commit | 05a31ede4f00c842d7eb18f31483cc149488d14d (patch) | |
tree | c29dc82d718d5d67d2ed3e2c33ba8f711c1a5255 /src | |
parent | 006239bab96963b4f2578554744e97093d0ff36a (diff) | |
download | android_packages_apps_Trebuchet-05a31ede4f00c842d7eb18f31483cc149488d14d.tar.gz android_packages_apps_Trebuchet-05a31ede4f00c842d7eb18f31483cc149488d14d.tar.bz2 android_packages_apps_Trebuchet-05a31ede4f00c842d7eb18f31483cc149488d14d.zip |
Defer launching the quickscrub task until after the page settles
- Tweak the durations to be less laggy
- Add some state logging
Bug: 67957962
Bug: 70180755
Change-Id: Ia0caa5178b3ed976705eb2d973bc00d8f1b9e3ca
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/PagedView.java | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java index 0ebae8135..bb137b0d6 100644 --- a/src/com/android/launcher3/PagedView.java +++ b/src/com/android/launcher3/PagedView.java @@ -1622,7 +1622,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc return (float) Math.sin(f); } - protected void snapToPageWithVelocity(int whichPage, int velocity) { + protected boolean snapToPageWithVelocity(int whichPage, int velocity) { whichPage = validateNewPage(whichPage); int halfScreenSize = getMeasuredWidth() / 2; @@ -1633,8 +1633,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc if (Math.abs(velocity) < mMinFlingVelocity) { // If the velocity is low enough, then treat this more as an automatic page advance // as opposed to an apparent physical response to flinging - snapToPage(whichPage, PAGE_SNAP_ANIMATION_DURATION); - return; + return snapToPage(whichPage, PAGE_SNAP_ANIMATION_DURATION); } // Here we compute a "distance" that will be used in the computation of the overall @@ -1653,39 +1652,39 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc // interpolator at zero, ie. 5. We use 4 to make it a little slower. duration = 4 * Math.round(1000 * Math.abs(distance / velocity)); - snapToPage(whichPage, delta, duration); + return snapToPage(whichPage, delta, duration); } - public void snapToPage(int whichPage) { - snapToPage(whichPage, PAGE_SNAP_ANIMATION_DURATION); + public boolean snapToPage(int whichPage) { + return snapToPage(whichPage, PAGE_SNAP_ANIMATION_DURATION); } - public void snapToPageImmediately(int whichPage) { - snapToPage(whichPage, PAGE_SNAP_ANIMATION_DURATION, true, null); + public boolean snapToPageImmediately(int whichPage) { + return snapToPage(whichPage, PAGE_SNAP_ANIMATION_DURATION, true, null); } - public void snapToPage(int whichPage, int duration) { - snapToPage(whichPage, duration, false, null); + public boolean snapToPage(int whichPage, int duration) { + return snapToPage(whichPage, duration, false, null); } - protected void snapToPage(int whichPage, int duration, TimeInterpolator interpolator) { - snapToPage(whichPage, duration, false, interpolator); + protected boolean snapToPage(int whichPage, int duration, TimeInterpolator interpolator) { + return snapToPage(whichPage, duration, false, interpolator); } - protected void snapToPage(int whichPage, int duration, boolean immediate, + protected boolean snapToPage(int whichPage, int duration, boolean immediate, TimeInterpolator interpolator) { whichPage = validateNewPage(whichPage); int newX = getScrollForPage(whichPage); final int delta = newX - getUnboundedScrollX(); - snapToPage(whichPage, delta, duration, immediate, interpolator); + return snapToPage(whichPage, delta, duration, immediate, interpolator); } - protected void snapToPage(int whichPage, int delta, int duration) { - snapToPage(whichPage, delta, duration, false, null); + protected boolean snapToPage(int whichPage, int delta, int duration) { + return snapToPage(whichPage, delta, duration, false, null); } - protected void snapToPage(int whichPage, int delta, int duration, boolean immediate, + protected boolean snapToPage(int whichPage, int delta, int duration, boolean immediate, TimeInterpolator interpolator) { whichPage = validateNewPage(whichPage); @@ -1723,6 +1722,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc } invalidate(); + return Math.abs(delta) > 0; } public void scrollLeft() { |