summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Mark Wagner <mxw@google.com> 2010-01-13 16:17:47 -0800
committer Mark Wagner <mxw@google.com> 2010-01-13 16:42:01 -0800
commit670dd819425b44ab4cb7565a322fd21ab6e811f5 (patch)
tree6274a59e65ff8c999b733a51c4e9c11134a526fa
parent5a2ade33fa21dc866a52005c1bbdb8ba7d768ae9 (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.java7
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();