diff options
| author | Raph Levien <raph@google.com> | 2014-12-08 19:09:18 +0000 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2014-12-08 19:09:18 +0000 |
| commit | b9d21d623f8bb196831d6fabdd5bb2ecf73a0c31 (patch) | |
| tree | 65a96aaabfe78c8b574f4479adb39781293cb8e4 /core/java/android/text | |
| parent | 0538e675db393777ca1090725b71d54d78fce007 (diff) | |
| parent | 8de4fb2fe53ed7707500d9cdf737953bed3dec7e (diff) | |
am 8de4fb2f: am 2f0e6f0c: Merge "Fix off-by-one error in computeEllipsis" into lmp-mr1-dev
* commit '8de4fb2fe53ed7707500d9cdf737953bed3dec7e':
Fix off-by-one error in computeEllipsis
Diffstat (limited to 'core/java/android/text')
| -rw-r--r-- | core/java/android/text/StaticLayout.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/text/StaticLayout.java b/core/java/android/text/StaticLayout.java index 02297e3c3356..74b7b6928fd0 100644 --- a/core/java/android/text/StaticLayout.java +++ b/core/java/android/text/StaticLayout.java @@ -416,7 +416,11 @@ public class StaticLayout extends Layout { currentTextWidth = widths[here - paraStart]; } - v = out(source, here, endPos, + int ellipseEnd = endPos; + if (mMaximumVisibleLineCount == 1 && ellipsize == TextUtils.TruncateAt.MIDDLE) { + ellipseEnd = paraEnd; + } + v = out(source, here, ellipseEnd, above, below, top, bottom, v, spacingmult, spacingadd, chooseHt,chooseHtv, fm, hasTabOrEmoji, needMultiply, chdirs, dir, easy, bufEnd, includepad, trackpad, @@ -704,7 +708,7 @@ public class StaticLayout extends Layout { int left = 0, right = len; float ravail = (avail - ellipsisWidth) / 2; - for (right = len; right >= 0; right--) { + for (right = len; right > 0; right--) { float w = widths[right - 1 + lineStart - widthStart]; if (w + rsum > ravail) { |
