Merge "Make the fastscroll thumb tell the parent to not intercept touch events, to keep the list from moving sideways in a "workspace" environment. Fixes one of the issues listed in bug 2374212"

This commit is contained in:
Marco Nelissen
2010-02-03 10:45:51 -08:00
committed by Android (Google) Code Review

View File

@@ -428,12 +428,21 @@ class FastScroller {
if (mListAdapter == null && mList != null) {
getSectionsFromIndexer();
}
if (mList != null) {
mList.requestDisallowInterceptTouchEvent(true);
}
cancelFling();
return true;
}
} else if (action == MotionEvent.ACTION_UP) {
} else if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_CANCEL) {
if (mState == STATE_DRAGGING) {
if (mList != null) {
// ViewGroup does the right thing already, but there might
// be other classes that don't properly reset on touch-up,
// so do this explicitly just in case.
mList.requestDisallowInterceptTouchEvent(false);
}
setState(STATE_VISIBLE);
final Handler handler = mHandler;
handler.removeCallbacks(mScrollFade);