diff options
| author | 2010-01-13 16:17:47 -0800 | |
|---|---|---|
| committer | 2010-01-13 16:42:01 -0800 | |
| commit | 670dd819425b44ab4cb7565a322fd21ab6e811f5 (patch) | |
| tree | 6274a59e65ff8c999b733a51c4e9c11134a526fa | |
| parent | 5a2ade33fa21dc866a52005c1bbdb8ba7d768ae9 (diff) | |
bugfix endfling case (bug 2300534)
When the menu comes up over the activity we call removeCallbacks(mFlingRunnable);
The effect of that is that our mTouchMode variable is left dangling in the fling
state. This change calls endFling() after removeCallbacks. In the specific bug
being addressed we depend on reportScrollStateChange() because we avoid doing
requeries while scrolling.
| -rw-r--r-- | core/java/android/widget/AbsListView.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/widget/AbsListView.java b/core/java/android/widget/AbsListView.java index e241c7734b27..32199a0006f6 100644 --- a/core/java/android/widget/AbsListView.java +++ b/core/java/android/widget/AbsListView.java @@ -1567,7 +1567,12 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te if (!hasWindowFocus) { setChildrenDrawingCacheEnabled(false); - removeCallbacks(mFlingRunnable); + if (mFlingRunnable != null) { + removeCallbacks(mFlingRunnable); + // let the fling runnable report it's new state which + // should be idle + mFlingRunnable.endFling(); + } // Always hide the type filter dismissPopup(); |