From f458ae20a982e921c6762b25476b725aa00d7aa0 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 20 Mar 2024 13:46:52 +0000 Subject: [PATCH] Fix requiring double keypress to create new rows --- .../components/grid/overlays/KeyboardManager.svelte | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/frontend-core/src/components/grid/overlays/KeyboardManager.svelte b/packages/frontend-core/src/components/grid/overlays/KeyboardManager.svelte index 5e3a035d89..ed09301bb9 100644 --- a/packages/frontend-core/src/components/grid/overlays/KeyboardManager.svelte +++ b/packages/frontend-core/src/components/grid/overlays/KeyboardManager.svelte @@ -40,16 +40,18 @@ } } + // Handle certain key presses regardless of selection state + if (e.key === "Enter" && (e.ctrlKey || e.metaKey) && $config.canAddRows) { + e.preventDefault() + dispatch("add-row-inline") + return + } + // If nothing selected avoid processing further key presses if (!$focusedCellId) { if (e.key === "Tab" || e.key?.startsWith("Arrow")) { e.preventDefault() focusFirstCell() - } else if (e.key === "Enter" && (e.ctrlKey || e.metaKey)) { - if ($config.canAddRows) { - e.preventDefault() - dispatch("add-row-inline") - } } else if (e.key === "Delete" || e.key === "Backspace") { if (Object.keys($selectedRows).length && $config.canDeleteRows) { dispatch("request-bulk-delete")