diff options
author | Gilles Debunne <debunne@google.com> | 2010-11-30 12:50:54 -0800 |
---|---|---|
committer | Gilles Debunne <debunne@google.com> | 2010-12-01 10:33:26 -0800 |
commit | 0eb704ca7a0844186e0755e86bc4afc23297797d (patch) | |
tree | 53ae5746f8cf05591652b1021250fbdb1658aa89 /core/java/android/text/method | |
parent | de669ee81f7498c72d277118cf5668acbe27ebf0 (diff) | |
download | frameworks_base-0eb704ca7a0844186e0755e86bc4afc23297797d.zip frameworks_base-0eb704ca7a0844186e0755e86bc4afc23297797d.tar.gz frameworks_base-0eb704ca7a0844186e0755e86bc4afc23297797d.tar.bz2 |
Tap inside text selection dismisses selection.
Change-Id: I8ccc952940d3f1b3a52d506f750019a892380f40
Diffstat (limited to 'core/java/android/text/method')
-rw-r--r-- | core/java/android/text/method/ArrowKeyMovementMethod.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/core/java/android/text/method/ArrowKeyMovementMethod.java b/core/java/android/text/method/ArrowKeyMovementMethod.java index 0d012d6..d724320 100644 --- a/core/java/android/text/method/ArrowKeyMovementMethod.java +++ b/core/java/android/text/method/ArrowKeyMovementMethod.java @@ -190,7 +190,9 @@ public class ArrowKeyMovementMethod implements MovementMethod { public boolean onTouchEvent(TextView widget, Spannable buffer, MotionEvent event) { int initialScrollX = -1, initialScrollY = -1; - if (event.getAction() == MotionEvent.ACTION_UP) { + final int action = event.getAction(); + + if (action == MotionEvent.ACTION_UP) { initialScrollX = Touch.getInitialScrollX(widget, buffer); initialScrollY = Touch.getInitialScrollY(widget, buffer); } @@ -198,7 +200,7 @@ public class ArrowKeyMovementMethod implements MovementMethod { boolean handled = Touch.onTouchEvent(widget, buffer, event); if (widget.isFocused() && !widget.didTouchFocusSelect()) { - if (event.getAction() == MotionEvent.ACTION_DOWN) { + if (action == MotionEvent.ACTION_DOWN) { boolean cap = isCap(buffer); if (cap) { int offset = widget.getOffset((int) event.getX(), (int) event.getY()); @@ -211,7 +213,7 @@ public class ArrowKeyMovementMethod implements MovementMethod { // mode once the view detected it needed to scroll. widget.getParent().requestDisallowInterceptTouchEvent(true); } - } else if (event.getAction() == MotionEvent.ACTION_MOVE) { + } else if (action == MotionEvent.ACTION_MOVE) { boolean cap = isCap(buffer); if (cap && handled) { @@ -231,7 +233,7 @@ public class ArrowKeyMovementMethod implements MovementMethod { Selection.extendSelection(buffer, offset); return true; } - } else if (event.getAction() == MotionEvent.ACTION_UP) { + } else if (action == MotionEvent.ACTION_UP) { // If we have scrolled, then the up shouldn't move the cursor, // but we do need to make sure the cursor is still visible at // the current scroll offset to avoid the scroll jumping later |