diff options
| author | Adam Powell <adamp@google.com> | 2011-02-28 10:27:49 -0800 |
|---|---|---|
| committer | Adam Powell <adamp@google.com> | 2011-02-28 18:15:23 -0800 |
| commit | 9bc30d31322848d61f518c1db43544988faaba8f (patch) | |
| tree | 70504fcefadb4310d7b8480174e9f445631f6977 /core/java/android/widget/ScrollView.java | |
| parent | 4fdc6ebb9130ace5687ad2192507d47c48e8b8c1 (diff) | |
Change behavior of multitouch in scrolling views.
New pointers touching the screen always become the active pointer.
Still to do: allow flings until another pointer moves enough to stop
it. Currently flings will be immediately stopped by the other pointers
still contacting the screen.
Change-Id: Ic1c7bf98dcf40252593cec0ab1f0d524aaeed8e4
Diffstat (limited to 'core/java/android/widget/ScrollView.java')
| -rw-r--r-- | core/java/android/widget/ScrollView.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/core/java/android/widget/ScrollView.java b/core/java/android/widget/ScrollView.java index 7aca0dbb4ae9..4b4f5f2dbfd7 100644 --- a/core/java/android/widget/ScrollView.java +++ b/core/java/android/widget/ScrollView.java @@ -607,8 +607,16 @@ public class ScrollView extends FrameLayout { endDrag(); } break; + case MotionEvent.ACTION_POINTER_DOWN: { + final int index = ev.getActionIndex(); + final float y = ev.getY(index); + mLastMotionY = y; + mActivePointerId = ev.getPointerId(index); + break; + } case MotionEvent.ACTION_POINTER_UP: onSecondaryPointerUp(ev); + mLastMotionY = ev.getY(ev.findPointerIndex(mActivePointerId)); break; } return true; |
