Skip to content

Commit bf49d48

Browse files
committed
fix(studio): revert handleHistoryHotkey scope creep per review
Restore the original `const key = event.key.toLowerCase()` extraction and drop the fallow-ignore-next-line that was only needed because the rewrite introduced extra inline calls. The cross-origin fix lives in syncPreviewHistoryHotkey, not in the handler body.
1 parent da69a25 commit bf49d48

1 file changed

Lines changed: 14 additions & 22 deletions

File tree

packages/studio/src/hooks/useAppHotkeys.ts

Lines changed: 14 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -351,28 +351,20 @@ export function useAppHotkeys({
351351

352352
// ── History hotkey for iframe forwarding ──
353353

354-
const handleHistoryHotkey = useCallback(
355-
// fallow-ignore-next-line complexity
356-
(event: KeyboardEvent) => {
357-
if (!(event.metaKey || event.ctrlKey)) return;
358-
if (shouldIgnoreHistoryShortcut(event.target)) return;
359-
// Undo: Cmd/Ctrl+Z
360-
if (event.key.toLowerCase() === "z" && !event.shiftKey) {
361-
event.preventDefault();
362-
void handleUndoRef.current();
363-
return;
364-
}
365-
// Redo: Cmd/Ctrl+Shift+Z or Ctrl+Y
366-
if (
367-
(event.key.toLowerCase() === "z" && event.shiftKey) ||
368-
(event.ctrlKey && !event.metaKey && event.key.toLowerCase() === "y")
369-
) {
370-
event.preventDefault();
371-
void handleRedoRef.current();
372-
}
373-
},
374-
[],
375-
);
354+
const handleHistoryHotkey = useCallback((event: KeyboardEvent) => {
355+
if (!(event.metaKey || event.ctrlKey)) return;
356+
if (shouldIgnoreHistoryShortcut(event.target)) return;
357+
const key = event.key.toLowerCase();
358+
if (key === "z" && !event.shiftKey) {
359+
event.preventDefault();
360+
void handleUndoRef.current();
361+
return;
362+
}
363+
if ((key === "z" && event.shiftKey) || (event.ctrlKey && !event.metaKey && key === "y")) {
364+
event.preventDefault();
365+
void handleRedoRef.current();
366+
}
367+
}, []);
376368

377369
const syncPreviewHistoryHotkey = useCallback(
378370
(iframe: HTMLIFrameElement | null) => {

0 commit comments

Comments
 (0)