diff options
| author | Gilles Debunne <debunne@google.com> | 2012-02-29 17:32:20 -0800 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-02-29 17:32:20 -0800 |
| commit | 161d9cf9547757e543783bc8d1cc173e1cb0215b (patch) | |
| tree | 32cb03cc2e308d1e6edb4142d5cfa3fad815d01c /core/java/android/widget/TextView.java | |
| parent | fa73c1fd3effb7a9e9099f24eac06a2c31b76dba (diff) | |
| parent | 6382ade0c7e26c88c4a17f7ee7124ed92b0b8bcc (diff) | |
| download | frameworks_base-161d9cf9547757e543783bc8d1cc173e1cb0215b.zip frameworks_base-161d9cf9547757e543783bc8d1cc173e1cb0215b.tar.gz frameworks_base-161d9cf9547757e543783bc8d1cc173e1cb0215b.tar.bz2 | |
Merge "Invalidate text display list on scroll"
Diffstat (limited to 'core/java/android/widget/TextView.java')
| -rw-r--r-- | core/java/android/widget/TextView.java | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index a162eaa..385c7c7 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -8280,8 +8280,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener @Override protected void onScrollChanged(int horiz, int vert, int oldHoriz, int oldVert) { super.onScrollChanged(horiz, vert, oldHoriz, oldVert); - if (mEditor != null && getEditor().mPositionListener != null) { - getEditor().mPositionListener.onScrollChanged(); + if (mEditor != null) { + if (getEditor().mPositionListener != null) { + getEditor().mPositionListener.onScrollChanged(); + } + getEditor().mTextDisplayListIsValid = false; } } @@ -10690,9 +10693,12 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener return; } - if (offset != mPreviousOffset || parentScrolled) { - updateSelection(offset); - addPositionToTouchUpFilter(offset); + boolean offsetChanged = offset != mPreviousOffset; + if (offsetChanged || parentScrolled) { + if (offsetChanged) { + updateSelection(offset); + addPositionToTouchUpFilter(offset); + } final int line = mLayout.getLineForOffset(offset); mPositionX = (int) (mLayout.getPrimaryHorizontal(offset) - 0.5f - mHotspotX); |
