diff options
| author | Roozbeh Pournader <roozbeh@google.com> | 2017-05-17 15:04:45 -0700 |
|---|---|---|
| committer | Roozbeh Pournader <roozbeh@google.com> | 2017-05-17 15:04:45 -0700 |
| commit | 74e7b26a1099b5531096512adf190157c563fd48 (patch) | |
| tree | 962712ac2eea7f4ff51a4cb7b13a8cae1da1ebee /core/java/android/widget/TextView.java | |
| parent | e943a3cbe7dd9d7f1ab977e64178730190b37755 (diff) | |
In onDragEvent(), don't assume text is Spannable
Previously, onDragEvent() tried to set the anchor even if
the text was not Spannable. Now we check to make sure it is
Spannable before trying to set the selection.
Test: cts-tradefed run cts-dev --module CtsTextTestCases
Change-Id: I835bf3d6024bf3c85e1d248458829eef496ad93d
Fixes: 37261326
Diffstat (limited to 'core/java/android/widget/TextView.java')
| -rw-r--r-- | core/java/android/widget/TextView.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index 77f27d983e17..8542bec0113b 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -11227,8 +11227,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener return true; case DragEvent.ACTION_DRAG_LOCATION: - final int offset = getOffsetForPosition(event.getX(), event.getY()); - Selection.setSelection((Spannable) mText, offset); + if (mText instanceof Spannable) { + final int offset = getOffsetForPosition(event.getX(), event.getY()); + Selection.setSelection((Spannable) mText, offset); + } return true; case DragEvent.ACTION_DROP: |
