diff options
author | Gilles Debunne <debunne@google.com> | 2012-01-20 10:27:00 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-01-20 10:27:00 -0800 |
commit | 7418c35d80e3462fe6f80ed1394e2d31c8b1b6bf (patch) | |
tree | e9b7215e4b851b16ea07596d8eb77b9d79fd2260 | |
parent | 7524a592526a14d20ec3f3acffd61fe18afaa4b4 (diff) | |
parent | 92db51938f6dac6227ab362e851858bc848efd9e (diff) | |
download | frameworks_base-7418c35d80e3462fe6f80ed1394e2d31c8b1b6bf.zip frameworks_base-7418c35d80e3462fe6f80ed1394e2d31c8b1b6bf.tar.gz frameworks_base-7418c35d80e3462fe6f80ed1394e2d31c8b1b6bf.tar.bz2 |
Merge "Make sure text selection always starts"
-rw-r--r-- | core/java/android/widget/TextView.java | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index e508e9a..1ec869d 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -8920,14 +8920,12 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener wordIterator.setCharSequence(mText, minOffset, maxOffset); selectionStart = wordIterator.getBeginning(minOffset); - if (selectionStart == BreakIterator.DONE) return false; - selectionEnd = wordIterator.getEnd(maxOffset); - if (selectionEnd == BreakIterator.DONE) return false; - if (selectionStart == selectionEnd) { + if (selectionStart == BreakIterator.DONE || selectionEnd == BreakIterator.DONE || + selectionStart == selectionEnd) { // Possible when the word iterator does not properly handle the text's language - long range = getCharRange(selectionStart); + long range = getCharRange(minOffset); selectionStart = extractRangeStartFromLong(range); selectionEnd = extractRangeEndFromLong(range); } |