deleteToStartOfLineWithCmdBackspaceOnMac function
ExecutionInstruction
deleteToStartOfLineWithCmdBackspaceOnMac({
- required SuperEditorContext editContext,
- required KeyEvent keyEvent,
Implementation
ExecutionInstruction deleteToStartOfLineWithCmdBackspaceOnMac({
required SuperEditorContext editContext,
required KeyEvent keyEvent,
}) {
if (keyEvent is! KeyDownEvent && keyEvent is! KeyRepeatEvent) {
return ExecutionInstruction.continueExecution;
}
if (!CurrentPlatform.isApple) {
return ExecutionInstruction.continueExecution;
}
if (!keyEvent.isPrimaryShortcutKeyPressed || keyEvent.logicalKey != LogicalKeyboardKey.backspace) {
return ExecutionInstruction.continueExecution;
}
if (editContext.composer.selection == null) {
return ExecutionInstruction.continueExecution;
}
bool didMove = false;
didMove = editContext.commonOps.moveCaretUpstream(
expand: true,
movementModifier: MovementModifier.line,
);
if (didMove) {
return editContext.commonOps.deleteSelection(TextAffinity.upstream)
? ExecutionInstruction.haltExecution
: ExecutionInstruction.continueExecution;
}
return ExecutionInstruction.continueExecution;
}