textDeleteSelection function
TextCommandResult
textDeleteSelection({
- required TextDocument document,
- required TextOffsetStateSnapshot state,
Implementation
TextCommandResult textDeleteSelection({
required TextDocument document,
required TextOffsetStateSnapshot state,
}) {
final selection = normalizedSelectionRange(
state.selectionBaseOffset,
state.selectionExtentOffset,
);
if (selection == null || selection.start == selection.end) {
return _unchangedDocumentCommandResult(document, state);
}
final working = document.copy();
final result = edit_ops.removeDocumentRange(
working,
start: selection.start,
end: selection.end,
);
return _documentCommandResult(
working,
cursorOffset: result.cursorOffset,
documentChange: result.change,
changed: result.changed,
);
}