Merge "Fix Layout.primaryIsTrailingPreviousAllLineOffsets"
This commit is contained in:
committed by
Android (Google) Code Review
commit
a33ce8a337
@@ -1122,6 +1122,9 @@ public abstract class Layout {
|
||||
if (limit > lineEnd) {
|
||||
limit = lineEnd;
|
||||
}
|
||||
if (limit == start) {
|
||||
continue;
|
||||
}
|
||||
level[limit - lineStart - 1] =
|
||||
(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
|
||||
* #getHorizontal for all offsets on a line.
|
||||
* Computes in linear time the results of calling #getHorizontal for all offsets on a line.
|
||||
*
|
||||
* @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 primary Whether the results should be the primary or the secondary horizontal
|
||||
@@ -1257,7 +1260,7 @@ public abstract class Layout {
|
||||
TextLine.recycle(tl);
|
||||
|
||||
if (clamped) {
|
||||
for (int offset = 0; offset <= wid.length; ++offset) {
|
||||
for (int offset = 0; offset < wid.length; ++offset) {
|
||||
if (wid[offset] > mWidth) {
|
||||
wid[offset] = mWidth;
|
||||
}
|
||||
|
||||
@@ -743,6 +743,9 @@ public class LayoutTest {
|
||||
assertPrimaryIsTrailingPrevious(
|
||||
RTL + LRI + RTL + LTR + PDI + RTL,
|
||||
new boolean[]{false, false, true, false, false, false, false});
|
||||
assertPrimaryIsTrailingPrevious(
|
||||
"",
|
||||
new boolean[]{false});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user