layout method
Implementation
@override
void layout(BoxConstraints constraints) {
final combined = BoxConstraints(
minWidth: math.max(constraints.minWidth, additionalConstraints.minWidth),
maxWidth: math.min(constraints.maxWidth, additionalConstraints.maxWidth),
minHeight: math.max(
constraints.minHeight,
additionalConstraints.minHeight,
),
maxHeight: math.min(
constraints.maxHeight,
additionalConstraints.maxHeight,
),
);
super.layout(combined);
_child?.layout(combined);
final rendered = _constrainContent(
_child?.paint() ?? '',
width: combined.hasBoundedWidth ? combined.maxWidth.toInt() : null,
height: combined.hasBoundedHeight ? combined.maxHeight.toInt() : null,
);
_lastPaint = rendered;
size = combined.constrain(
Size(
Layout.getWidth(rendered).toDouble(),
Layout.getHeight(rendered).toDouble(),
),
);
}