deleteNextOrSelection function
Implementation
TextCommandResult deleteNextOrSelection(
List<String> graphemes, {
required int cursorOffset,
int? selectionBaseOffset,
int? selectionExtentOffset,
}) {
final deletedSelection = deleteSelection(
graphemes,
selectionBaseOffset: selectionBaseOffset,
selectionExtentOffset: selectionExtentOffset,
cursorOffset: cursorOffset,
);
if (deletedSelection.changed) {
return deletedSelection;
}
final result = edit_ops.deleteNextGrapheme(graphemes, cursorOffset);
return TextCommandResult(
graphemes: result.graphemes,
cursorOffset: result.cursorOffset,
changed:
result.cursorOffset != cursorOffset ||
result.graphemes.length != graphemes.length,
);
}