Skip to content

Commit 0c170f2

Browse files
matt2eclaude
andauthored
fix: prevent keyboard shortcuts from capturing input in diff commit textbox (#627)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 368564e commit 0c170f2

2 files changed

Lines changed: 12 additions & 3 deletions

File tree

apps/staged/src/lib/features/diff/DiffModal.svelte

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,11 @@
447447
}
448448
// Hold A to reveal AI annotations
449449
if (event.key === 'a' || event.key === 'A') {
450-
if (event.target instanceof HTMLInputElement || event.target instanceof HTMLTextAreaElement)
450+
if (
451+
event.target instanceof HTMLInputElement ||
452+
event.target instanceof HTMLTextAreaElement ||
453+
(event.target instanceof HTMLElement && event.target.isContentEditable)
454+
)
451455
return;
452456
if (!event.repeat) {
453457
annotationsRevealed = true;
@@ -457,7 +461,11 @@
457461
458462
function handleKeyup(event: KeyboardEvent) {
459463
if (event.key === 'a' || event.key === 'A') {
460-
if (event.target instanceof HTMLInputElement || event.target instanceof HTMLTextAreaElement)
464+
if (
465+
event.target instanceof HTMLInputElement ||
466+
event.target instanceof HTMLTextAreaElement ||
467+
(event.target instanceof HTMLElement && event.target.isContentEditable)
468+
)
461469
return;
462470
annotationsRevealed = false;
463471
}

packages/diff-viewer/src/lib/utils/diffKeyboard.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,8 @@ export function setupDiffKeyboardNav(config: Partial<DiffNavConfig> = {}): () =>
161161

162162
function handleKeydown(event: KeyboardEvent): void {
163163
const target = event.target as HTMLElement;
164-
const inInput = target.tagName === 'INPUT' || target.tagName === 'TEXTAREA';
164+
const inInput =
165+
target.tagName === 'INPUT' || target.tagName === 'TEXTAREA' || target.isContentEditable;
165166

166167
const key = event.key.toLowerCase();
167168
const ctrl = event.ctrlKey;

0 commit comments

Comments
 (0)