diff --git a/js/ui/main-ui.js b/js/ui/main-ui.js index eabde83..3c67df4 100644 --- a/js/ui/main-ui.js +++ b/js/ui/main-ui.js @@ -256,6 +256,18 @@ export function initUI() { elements.rawRequestInput.innerText = rawReqTextarea.value; // Trigger highlight update if needed, or just keep sync }); + + // Hotkey: Ctrl/Cmd + Enter in raw textarea → Send request + rawReqTextarea.addEventListener('keydown', (e) => { + const isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0; + const modKey = isMac ? e.metaKey : e.ctrlKey; + if (modKey && e.key === 'Enter') { + e.preventDefault(); + if (elements.sendBtn) { + elements.sendBtn.click(); + } + } + }); } // Layout Toggle diff --git a/js/ui/ui-utils.js b/js/ui/ui-utils.js index b4c5b76..513ed62 100644 --- a/js/ui/ui-utils.js +++ b/js/ui/ui-utils.js @@ -200,6 +200,16 @@ export function setupUndoRedo() { const isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0; const modKey = isMac ? e.metaKey : e.ctrlKey; + // Hotkey: Ctrl/Cmd + Enter → Send request + if (modKey && e.key === 'Enter') { + e.preventDefault(); + if (elements.sendBtn) { + elements.sendBtn.click(); + } + return; + } + + // Hotkeys: Undo / Redo if (modKey && e.key === 'z' && !e.shiftKey && !e.altKey) { e.preventDefault(); undo();