diff options
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 e194bc2..d6dd15e 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -2980,8 +2980,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener "/" + ss.selEnd + " out of range for " + restored + "text " + mText); } else { - Selection.setSelection((Spannable) mText, ss.selStart, - ss.selEnd); + Selection.setSelection((Spannable) mText, ss.selStart, ss.selEnd); if (ss.frozenWithFocus) { createEditorIfNeeded("restore instance with focus"); @@ -6983,6 +6982,9 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener */ protected void onSelectionChanged(int selStart, int selEnd) { sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_TEXT_SELECTION_CHANGED); + // mEditor may be null if selection is created programatically. + createEditorIfNeeded("onSelectionChanged"); + // Invalidate even when selection range is empty, to remove previous highlight getEditor().mTextDisplayListIsValid = false; } |
