Fix for an IndentOutOfBounds in TextField.
Bug http://b/issue?id=2971995 Change-Id: Id6a40e81b26e14c1e5f06ed1bd70ee419c501c69
This commit is contained in:
@@ -6499,6 +6499,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
|
|||||||
if (!mFrozenWithFocus || (selStart < 0 || selEnd < 0)) {
|
if (!mFrozenWithFocus || (selStart < 0 || selEnd < 0)) {
|
||||||
// Has to be done before onTakeFocus, which can be overloaded.
|
// Has to be done before onTakeFocus, which can be overloaded.
|
||||||
if (mLastTouchOffset >= 0) {
|
if (mLastTouchOffset >= 0) {
|
||||||
|
// Can happen when a TextView is displayed after its content has been deleted.
|
||||||
|
mLastTouchOffset = Math.min(mLastTouchOffset, mText.length());
|
||||||
Selection.setSelection((Spannable) mText, mLastTouchOffset);
|
Selection.setSelection((Spannable) mText, mLastTouchOffset);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6515,7 +6517,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
|
|||||||
// ExtractEditText clears focus, which gives focus to the ExtractEditText.
|
// ExtractEditText clears focus, which gives focus to the ExtractEditText.
|
||||||
// This special case ensure that we keep current selection in that case.
|
// This special case ensure that we keep current selection in that case.
|
||||||
// It would be better to know why the DecorView does not have focus at that time.
|
// It would be better to know why the DecorView does not have focus at that time.
|
||||||
if (((this instanceof ExtractEditText) || mSelectionMoved) && selStart >= 0 && selEnd >= 0) {
|
if (((this instanceof ExtractEditText) || mSelectionMoved) &&
|
||||||
|
selStart >= 0 && selEnd >= 0) {
|
||||||
/*
|
/*
|
||||||
* Someone intentionally set the selection, so let them
|
* Someone intentionally set the selection, so let them
|
||||||
* do whatever it is that they wanted to do instead of
|
* do whatever it is that they wanted to do instead of
|
||||||
|
|||||||
Reference in New Issue
Block a user