Loading core/java/android/widget/TextView.java +17 −18 Original line number Diff line number Diff line Loading @@ -1214,7 +1214,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (imm != null) imm.restartInput(this); } if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); prepareCursorControllers(); // start or stop the cursor blinking as appropriate Loading Loading @@ -2328,7 +2328,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener public void setHighlightColor(int color) { if (mHighlightColor != color) { mHighlightColor = color; if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); invalidate(); } } Loading @@ -2349,7 +2349,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener mShadowDx = dx; mShadowDy = dy; if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); invalidate(); } Loading Loading @@ -2841,7 +2841,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } } if (inval) { if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); invalidate(); } } Loading Loading @@ -3334,7 +3334,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener // Invalidate display list if hint will be used if (mEditor != null && mText.length() == 0 && mHint != null) { getEditor().mTextDisplayListIsValid = false; getEditor().invalidateTextDisplayList(); } } Loading Loading @@ -4426,13 +4426,13 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (dr.mDrawableStart != null) dr.mDrawableStart.mutate().setAlpha(alpha); if (dr.mDrawableEnd != null) dr.mDrawableEnd.mutate().setAlpha(alpha); } if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); } return true; } if (mCurrentAlpha != 255) { if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); } mCurrentAlpha = 255; return false; Loading Loading @@ -6289,7 +6289,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener @Override protected void onLayout(boolean changed, int left, int top, int right, int bottom) { super.onLayout(changed, left, top, right, bottom); if (changed && mEditor != null) getEditor().mTextDisplayListIsValid = false; if (changed && mEditor != null) getEditor().invalidateTextDisplayList(); } private boolean isShowingHint() { Loading Loading @@ -7127,7 +7127,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } else { ims.mContentChanged = true; } if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); } if (MetaKeyKeyListener.isMetaTracker(buf, what)) { Loading Loading @@ -8274,7 +8274,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (getEditor().mPositionListener != null) { getEditor().mPositionListener.onScrollChanged(); } getEditor().mTextDisplayListIsValid = false; getEditor().invalidateTextDisplayList(); } } Loading Loading @@ -11300,7 +11300,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener InputMethodState mInputMethodState; DisplayList mTextDisplayList; boolean mTextDisplayListIsValid; boolean mFrozenWithFocus; boolean mSelectionMoved; Loading Loading @@ -11389,9 +11388,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener removeCallbacks(mShowSuggestionRunnable); } if (mTextDisplayList != null) { mTextDisplayList.invalidate(); } invalidateTextDisplayList(); if (mSpellChecker != null) { mSpellChecker.closeSession(); Loading Loading @@ -11548,7 +11545,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener void sendOnTextChanged(int start, int after) { updateSpellCheckSpans(start, start + after, false); mTextDisplayListIsValid = false; invalidateTextDisplayList(); // Hide the controllers as soon as text is modified (typing, procedural...) // We do not hide the span controllers, since they can be added when a new text is Loading Loading @@ -11705,8 +11702,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener layout.drawBackground(canvas, highlight, mHighlightPaint, cursorOffsetVertical, firstLine, lastLine); if (mTextDisplayList == null || !mTextDisplayList.isValid() || !mTextDisplayListIsValid) { if (mTextDisplayList == null || !mTextDisplayList.isValid()) { if (mTextDisplayList == null) { mTextDisplayList = getHardwareRenderer().createDisplayList("Text"); } Loading @@ -11723,7 +11719,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } finally { hardwareCanvas.onPostDraw(); mTextDisplayList.end(); mTextDisplayListIsValid = true; } } canvas.translate(mScrollX, mScrollY); Loading @@ -11741,6 +11736,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (translate) canvas.translate(0, -cursorOffsetVertical); } private void invalidateTextDisplayList() { if (mTextDisplayList != null) mTextDisplayList.invalidate(); } private void updateCursorsPositions() { if (mCursorDrawableRes == 0) { mCursorCount = 0; Loading Loading
core/java/android/widget/TextView.java +17 −18 Original line number Diff line number Diff line Loading @@ -1214,7 +1214,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (imm != null) imm.restartInput(this); } if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); prepareCursorControllers(); // start or stop the cursor blinking as appropriate Loading Loading @@ -2328,7 +2328,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener public void setHighlightColor(int color) { if (mHighlightColor != color) { mHighlightColor = color; if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); invalidate(); } } Loading @@ -2349,7 +2349,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener mShadowDx = dx; mShadowDy = dy; if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); invalidate(); } Loading Loading @@ -2841,7 +2841,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } } if (inval) { if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); invalidate(); } } Loading Loading @@ -3334,7 +3334,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener // Invalidate display list if hint will be used if (mEditor != null && mText.length() == 0 && mHint != null) { getEditor().mTextDisplayListIsValid = false; getEditor().invalidateTextDisplayList(); } } Loading Loading @@ -4426,13 +4426,13 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (dr.mDrawableStart != null) dr.mDrawableStart.mutate().setAlpha(alpha); if (dr.mDrawableEnd != null) dr.mDrawableEnd.mutate().setAlpha(alpha); } if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); } return true; } if (mCurrentAlpha != 255) { if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); } mCurrentAlpha = 255; return false; Loading Loading @@ -6289,7 +6289,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener @Override protected void onLayout(boolean changed, int left, int top, int right, int bottom) { super.onLayout(changed, left, top, right, bottom); if (changed && mEditor != null) getEditor().mTextDisplayListIsValid = false; if (changed && mEditor != null) getEditor().invalidateTextDisplayList(); } private boolean isShowingHint() { Loading Loading @@ -7127,7 +7127,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } else { ims.mContentChanged = true; } if (mEditor != null) getEditor().mTextDisplayListIsValid = false; if (mEditor != null) getEditor().invalidateTextDisplayList(); } if (MetaKeyKeyListener.isMetaTracker(buf, what)) { Loading Loading @@ -8274,7 +8274,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (getEditor().mPositionListener != null) { getEditor().mPositionListener.onScrollChanged(); } getEditor().mTextDisplayListIsValid = false; getEditor().invalidateTextDisplayList(); } } Loading Loading @@ -11300,7 +11300,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener InputMethodState mInputMethodState; DisplayList mTextDisplayList; boolean mTextDisplayListIsValid; boolean mFrozenWithFocus; boolean mSelectionMoved; Loading Loading @@ -11389,9 +11388,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener removeCallbacks(mShowSuggestionRunnable); } if (mTextDisplayList != null) { mTextDisplayList.invalidate(); } invalidateTextDisplayList(); if (mSpellChecker != null) { mSpellChecker.closeSession(); Loading Loading @@ -11548,7 +11545,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener void sendOnTextChanged(int start, int after) { updateSpellCheckSpans(start, start + after, false); mTextDisplayListIsValid = false; invalidateTextDisplayList(); // Hide the controllers as soon as text is modified (typing, procedural...) // We do not hide the span controllers, since they can be added when a new text is Loading Loading @@ -11705,8 +11702,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener layout.drawBackground(canvas, highlight, mHighlightPaint, cursorOffsetVertical, firstLine, lastLine); if (mTextDisplayList == null || !mTextDisplayList.isValid() || !mTextDisplayListIsValid) { if (mTextDisplayList == null || !mTextDisplayList.isValid()) { if (mTextDisplayList == null) { mTextDisplayList = getHardwareRenderer().createDisplayList("Text"); } Loading @@ -11723,7 +11719,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } finally { hardwareCanvas.onPostDraw(); mTextDisplayList.end(); mTextDisplayListIsValid = true; } } canvas.translate(mScrollX, mScrollY); Loading @@ -11741,6 +11736,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (translate) canvas.translate(0, -cursorOffsetVertical); } private void invalidateTextDisplayList() { if (mTextDisplayList != null) mTextDisplayList.invalidate(); } private void updateCursorsPositions() { if (mCursorDrawableRes == 0) { mCursorCount = 0; Loading