Ensuring that fast scrolling to predictions scrolls list to the top

- Fixes a long standing issue with fast-scrolling to the predicted apps
  not quite scrolling the list to the top of the screen.
- Fixes an issue where we don’t scroll exactly to the fast scroll 
  position due to rounding
- Also fixes a small issue where the thumb would not update when the 
  fast scroll popup was no longer showing, even while dragging.

Bug: 30023608

Change-Id: I6b5080c6aea521ff03dca24317f0405c02725061
This commit is contained in:
Winson
2016-07-12 14:10:50 -07:00
committed by Winson Chung
parent b029e9fd66
commit e8eaa9c94c
5 changed files with 30 additions and 32 deletions

View File

@@ -246,13 +246,18 @@ public abstract class BaseRecyclerView extends RecyclerView
(int) (((float) scrollY / availableScrollHeight) * availableScrollBarHeight);
// Calculate the position and size of the scroll bar
int scrollBarX;
mScrollbar.setThumbOffset(getScrollBarX(), scrollBarY);
}
/**
* @return the x position for the scrollbar thumb
*/
protected int getScrollBarX() {
if (Utilities.isRtl(getResources())) {
scrollBarX = mBackgroundPadding.left;
return mBackgroundPadding.left;
} else {
scrollBarX = getWidth() - mBackgroundPadding.right - mScrollbar.getThumbWidth();
return getWidth() - mBackgroundPadding.right - mScrollbar.getThumbWidth();
}
mScrollbar.setThumbOffset(scrollBarX, scrollBarY);
}
/**