Merge "Fix measurement of list with single item" into pi-dev

am: beefded4c7

Change-Id: Ie8f03831bb249591ef4308abade4ba7162b53aa4
This commit is contained in:
Lucas Dupin
2018-04-12 19:22:20 -07:00
committed by android-build-merger

View File

@@ -107,21 +107,23 @@ public class NotificationActionListLayout extends LinearLayout {
}
}
}
if (notGoneChildren > 1 && needRebuild) {
boolean centerAligned = (mGravity & Gravity.CENTER_HORIZONTAL) != 0;
boolean singleChildCentered = notGoneChildren == 1 && centerAligned;
boolean needsRegularMeasurement = notGoneChildren > 1 || singleChildCentered;
if (needsRegularMeasurement && needRebuild) {
rebuildMeasureOrder(textViews, otherViews);
}
final boolean constrained =
MeasureSpec.getMode(widthMeasureSpec) != MeasureSpec.UNSPECIFIED;
final boolean centerAligned = (mGravity & Gravity.CENTER_HORIZONTAL) != 0;
final int innerWidth = MeasureSpec.getSize(widthMeasureSpec) - mPaddingLeft - mPaddingRight;
final int otherSize = mMeasureOrderOther.size();
int usedWidth = 0;
// Optimization: Don't do this if there's only one child.
int measuredChildren = 0;
for (int i = 0; i < N && notGoneChildren > 1; i++) {
for (int i = 0; i < N && needsRegularMeasurement; i++) {
// Measure shortest children first. To avoid measuring twice, we approximate by looking
// at the text length.
View c;