diff options
Diffstat (limited to 'core/java/android/text/StaticLayout.java')
| -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) { |
