getSelectedText method
Implementation
String? getSelectedText() {
if (_selection.isEmpty) {
return null;
}
final builder = StringBuffer();
for (var row = _selection.start!.y; row <= _selection.end!.y; row++) {
if (row >= buffer.height) {
break;
}
final line = buffer.lines[row];
var xStart = 0;
var xEnd = viewWidth - 1;
if (row == _selection.start!.y) {
xStart = _selection.start!.x;
} else if (!line.isWrapped) {
builder.write("\n");
}
if (row == _selection.end!.y) {
xEnd = _selection.end!.x;
}
for (var col = xStart; col <= xEnd; col++) {
// if (col >= line.length) {
// break;
// }
if (line.cellGetWidth(col) == 0) {
continue;
}
var char = line.cellGetContent(col);
if (char == 0x00) {
const blank = 32;
char = blank;
}
builder.writeCharCode(char);
}
}
return builder.toString();
}