Merge "Fix Layout.primaryIsTrailingPreviousAllLineOffsets" into qt-dev am: 65f73d6bb8

am: 53416a8c01

Change-Id: Ifefe416786ee7ec67d59de8fe7b2ae859a79855b
This commit is contained in:
Mihai Popa
2019-06-26 05:02:29 -07:00
committed by android-build-merger
2 changed files with 9 additions and 3 deletions

View File

@@ -1122,6 +1122,9 @@ public abstract class Layout {
if (limit > lineEnd) { if (limit > lineEnd) {
limit = lineEnd; limit = lineEnd;
} }
if (limit == start) {
continue;
}
level[limit - lineStart - 1] = level[limit - lineStart - 1] =
(byte) ((runs[i + 1] >>> RUN_LEVEL_SHIFT) & RUN_LEVEL_MASK); (byte) ((runs[i + 1] >>> RUN_LEVEL_SHIFT) & RUN_LEVEL_MASK);
} }
@@ -1220,8 +1223,8 @@ public abstract class Layout {
} }
/** /**
* Computes in linear time the results of calling * Computes in linear time the results of calling #getHorizontal for all offsets on a line.
* #getHorizontal for all offsets on a line. *
* @param line The line giving the offsets we compute information for * @param line The line giving the offsets we compute information for
* @param clamped Whether to clamp the results to the width of the layout * @param clamped Whether to clamp the results to the width of the layout
* @param primary Whether the results should be the primary or the secondary horizontal * @param primary Whether the results should be the primary or the secondary horizontal
@@ -1257,7 +1260,7 @@ public abstract class Layout {
TextLine.recycle(tl); TextLine.recycle(tl);
if (clamped) { if (clamped) {
for (int offset = 0; offset <= wid.length; ++offset) { for (int offset = 0; offset < wid.length; ++offset) {
if (wid[offset] > mWidth) { if (wid[offset] > mWidth) {
wid[offset] = mWidth; wid[offset] = mWidth;
} }

View File

@@ -743,6 +743,9 @@ public class LayoutTest {
assertPrimaryIsTrailingPrevious( assertPrimaryIsTrailingPrevious(
RTL + LRI + RTL + LTR + PDI + RTL, RTL + LRI + RTL + LTR + PDI + RTL,
new boolean[]{false, false, true, false, false, false, false}); new boolean[]{false, false, true, false, false, false, false});
assertPrimaryIsTrailingPrevious(
"",
new boolean[]{false});
} }
} }