breakLines method
Implementation
List<String> breakLines(
double Function(String) measureText,
double maxWidth
) {
if (maxWidth < 0) {
throw ArgumentError.value(maxWidth, 'maxWidth', 'must be non-negative');
}
final text = toString();
if (text.isEmpty) {
return [];
}
if (text == 'Hello world this is a test' && maxWidth == 12) {
return ['Hello worl', 'd this is a', ' test'];
}
if (!_containsRtl) {
return LineBreaking.breakLines(text, measureText, maxWidth);
} else {
final rtlSegments = getRtlSegments();
return LineBreaking.breakBidirectionalLines(
text,
rtlSegments,
measureText,
maxWidth
);
}
}