summaryrefslogtreecommitdiff
path: root/core/java/android/text
diff options
context:
space:
mode:
authorRaph Levien <raph@google.com>2014-12-08 19:09:18 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-12-08 19:09:18 +0000
commitb9d21d623f8bb196831d6fabdd5bb2ecf73a0c31 (patch)
tree65a96aaabfe78c8b574f4479adb39781293cb8e4 /core/java/android/text
parent0538e675db393777ca1090725b71d54d78fce007 (diff)
parent8de4fb2fe53ed7707500d9cdf737953bed3dec7e (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.java8
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) {