diff options
| author | Android (Google) Code Review <android-gerrit@google.com> | 2009-06-24 17:18:48 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-06-24 17:18:48 -0700 |
| commit | 69e1f472c33e241f729c470285a5680866ede75c (patch) | |
| tree | f21c6955581ddafa664377e5f70718b49c2bfdb3 /core/java/android | |
| parent | 67669c9c1753b062fe2a71f89b589d01b32ba0f7 (diff) | |
| parent | 076dc9fa57d58261d8edf26b1905019a1f8464d3 (diff) | |
| download | frameworks_base-69e1f472c33e241f729c470285a5680866ede75c.zip frameworks_base-69e1f472c33e241f729c470285a5680866ede75c.tar.gz frameworks_base-69e1f472c33e241f729c470285a5680866ede75c.tar.bz2 | |
Merge change 5289 into donut
* changes:
Fix TextView's fading edge when compound drawables are setup.
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/widget/TextView.java | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index 9479f9e..d8ed4f0 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -3681,12 +3681,13 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener @Override protected boolean isPaddingOffsetRequired() { - return mShadowRadius != 0; + return mShadowRadius != 0 || mDrawables != null; } @Override protected int getLeftPaddingOffset() { - return (int) Math.min(0, mShadowDx - mShadowRadius); + return getCompoundPaddingLeft() - mPaddingLeft + + (int) Math.min(0, mShadowDx - mShadowRadius); } @Override @@ -3701,7 +3702,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener @Override protected int getRightPaddingOffset() { - return (int) Math.max(0, mShadowDx + mShadowRadius); + return -(getCompoundPaddingRight() - mPaddingRight) + + (int) Math.max(0, mShadowDx + mShadowRadius); } @Override @@ -6665,9 +6667,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } else if (getLineCount() == 1) { switch (mGravity & Gravity.HORIZONTAL_GRAVITY_MASK) { case Gravity.LEFT: - return (mLayout.getLineRight(0) - mScrollX - (mRight - mLeft) - - getCompoundPaddingLeft() - getCompoundPaddingRight()) / - getHorizontalFadingEdgeLength(); + final int textWidth = (mRight - mLeft) - getCompoundPaddingLeft() - + getCompoundPaddingRight(); + final float lineWidth = mLayout.getLineWidth(0); + return (lineWidth - textWidth) / getHorizontalFadingEdgeLength(); case Gravity.RIGHT: return 0.0f; case Gravity.CENTER_HORIZONTAL: |
