Loading src/com/android/launcher3/BaseRecyclerView.java +7 −0 Original line number Diff line number Diff line Loading @@ -267,6 +267,13 @@ public abstract class BaseRecyclerView extends RecyclerView mScrollbar.setThumbOffset(scrollBarX, scrollBarY); } /** * Returns whether fast scrolling is supported in the current state. */ protected boolean supportsFastScrolling() { return true; } /** * Maps the touch (from 0..1) to the adapter position that should be visible. * <p>Override in each subclass of this base class. Loading src/com/android/launcher3/BaseRecyclerViewFastScrollBar.java +2 −1 Original line number Diff line number Diff line Loading @@ -189,7 +189,8 @@ public class BaseRecyclerViewFastScrollBar { // Check if we should start scrolling, but ignore this fastscroll gesture if we have // exceeded some fixed movement mIgnoreDragGesture |= Math.abs(y - downY) > config.getScaledPagingTouchSlop(); if (!mIsDragging && !mIgnoreDragGesture && isNearThumb(downX, lastY) && if (!mIsDragging && !mIgnoreDragGesture && mRv.supportsFastScrolling() && isNearThumb(downX, lastY) && Math.abs(y - downY) > config.getScaledTouchSlop()) { mRv.getParent().requestDisallowInterceptTouchEvent(true); mIsDragging = true; Loading src/com/android/launcher3/allapps/AllAppsRecyclerView.java +7 −0 Original line number Diff line number Diff line Loading @@ -431,6 +431,13 @@ public class AllAppsRecyclerView extends BaseRecyclerView } } @Override protected boolean supportsFastScrolling() { // Only allow fast scrolling when the user is not searching, since the results are not // grouped in a meaningful order return !mApps.hasFilter(); } /** * Returns the scrollY for the given position in the adapter. */ Loading Loading
src/com/android/launcher3/BaseRecyclerView.java +7 −0 Original line number Diff line number Diff line Loading @@ -267,6 +267,13 @@ public abstract class BaseRecyclerView extends RecyclerView mScrollbar.setThumbOffset(scrollBarX, scrollBarY); } /** * Returns whether fast scrolling is supported in the current state. */ protected boolean supportsFastScrolling() { return true; } /** * Maps the touch (from 0..1) to the adapter position that should be visible. * <p>Override in each subclass of this base class. Loading
src/com/android/launcher3/BaseRecyclerViewFastScrollBar.java +2 −1 Original line number Diff line number Diff line Loading @@ -189,7 +189,8 @@ public class BaseRecyclerViewFastScrollBar { // Check if we should start scrolling, but ignore this fastscroll gesture if we have // exceeded some fixed movement mIgnoreDragGesture |= Math.abs(y - downY) > config.getScaledPagingTouchSlop(); if (!mIsDragging && !mIgnoreDragGesture && isNearThumb(downX, lastY) && if (!mIsDragging && !mIgnoreDragGesture && mRv.supportsFastScrolling() && isNearThumb(downX, lastY) && Math.abs(y - downY) > config.getScaledTouchSlop()) { mRv.getParent().requestDisallowInterceptTouchEvent(true); mIsDragging = true; Loading
src/com/android/launcher3/allapps/AllAppsRecyclerView.java +7 −0 Original line number Diff line number Diff line Loading @@ -431,6 +431,13 @@ public class AllAppsRecyclerView extends BaseRecyclerView } } @Override protected boolean supportsFastScrolling() { // Only allow fast scrolling when the user is not searching, since the results are not // grouped in a meaningful order return !mApps.hasFilter(); } /** * Returns the scrollY for the given position in the adapter. */ Loading