diff options
author | Gilles Debunne <debunne@google.com> | 2011-01-24 12:54:10 -0800 |
---|---|---|
committer | Gilles Debunne <debunne@google.com> | 2011-01-24 12:54:10 -0800 |
commit | 98dbfd4940fb7f1e3ae11ec73aeb7a9dd26a24ee (patch) | |
tree | 488f0c6f3dd178f99c4b0f4b090f7429525f5f22 | |
parent | b35672e4ef5dfe9719c2ba4b088eceabab0fade8 (diff) | |
download | frameworks_base-98dbfd4940fb7f1e3ae11ec73aeb7a9dd26a24ee.zip frameworks_base-98dbfd4940fb7f1e3ae11ec73aeb7a9dd26a24ee.tar.gz frameworks_base-98dbfd4940fb7f1e3ae11ec73aeb7a9dd26a24ee.tar.bz2 |
Non-editable TextViews should not display a cursor.
Bug 3381320
The tests were inconsistent between makeBlink and onDraw.
If the text is non-editable, do not draw the cursor.
Change-Id: I0405e59444261a553e868b3ae5bdddd278f60bb2
-rw-r--r-- | core/java/android/widget/TextView.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index aac57ed..dc64643 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -4334,7 +4334,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener selStart = getSelectionStart(); selEnd = getSelectionEnd(); - if ((mCursorVisible || mTextIsSelectable) && selStart >= 0 && isEnabled()) { + if ((isCursorVisible() || mTextIsSelectable) && selStart >= 0 && isEnabled()) { if (mHighlightPath == null) mHighlightPath = new Path(); @@ -6490,6 +6490,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener prepareCursorControllers(); } + private boolean isCursorVisible() { + return mCursorVisible && isTextEditable(); + } + private boolean canMarquee() { int width = (mRight - mLeft - getCompoundPaddingLeft() - getCompoundPaddingRight()); return width > 0 && mLayout.getLineWidth(0) > width; @@ -6978,7 +6982,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } private void makeBlink() { - if (!mCursorVisible || !isTextEditable()) { + if (!isCursorVisible()) { if (mBlink != null) { mBlink.removeCallbacks(mBlink); } @@ -7372,8 +7376,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener || windowParams.type > WindowManager.LayoutParams.LAST_SUB_WINDOW; } - mInsertionControllerEnabled = windowSupportsHandles && isTextEditable() && mCursorVisible && - mLayout != null; + mInsertionControllerEnabled = windowSupportsHandles && isCursorVisible() && mLayout != null; mSelectionControllerEnabled = windowSupportsHandles && textCanBeSelected() && mLayout != null; |