reflow function
UncompleteDocumentation
Implementation
List<BufferLine> reflow(
IndexAwareCircularBuffer<BufferLine> lines,
int oldWidth,
int newWidth,
) {
final result = <BufferLine>[];
for (var i = 0; i < lines.length; i++) {
final line = lines[i];
final reflow = _LineReflow(oldWidth, newWidth);
reflow.add(line);
for (var offset = i + 1; offset < lines.length; offset++) {
final nextLine = lines[offset];
if (!nextLine.isWrapped) {
break;
}
i++;
reflow.add(nextLine);
}
result.addAll(reflow.finish());
}
for (var line in result) {
line.resize(newWidth);
}
return result;
}