From f85c10338cd15ace56e15c56f577873002d79879 Mon Sep 17 00:00:00 2001 From: Zaldos <350699+Zaldos@users.noreply.github.com> Date: Thu, 14 Dec 2023 17:21:50 +0000 Subject: [PATCH] Fix generate shortcut bug and add interrupt shortcut (#1408) * Fix generate shortcut bug and add interrupt shortcut * Exit shortcut code early to avoid any issues --- javascript/script.js | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/javascript/script.js b/javascript/script.js index 05a8c590..593d8c36 100644 --- a/javascript/script.js +++ b/javascript/script.js @@ -125,18 +125,23 @@ document.addEventListener("DOMContentLoaded", function() { * Add a ctrl+enter as a shortcut to start a generation */ document.addEventListener('keydown', function(e) { - var handled = false; - if (e.key !== undefined) { - if ((e.key == "Enter" && (e.metaKey || e.ctrlKey || e.altKey))) handled = true; - } else if (e.keyCode !== undefined) { - if ((e.keyCode == 13 && (e.metaKey || e.ctrlKey || e.altKey))) handled = true; - } - if (handled) { - var button = gradioApp().querySelector('button[id=generate_button]'); - if (button) { - button.click(); + const isModifierKey = (e.metaKey || e.ctrlKey || e.altKey); + const isEnterKey = (e.key == "Enter" || e.keyCode == 13); + + if(isModifierKey && isEnterKey) { + const generateButton = gradioApp().querySelector('button:not(.hidden)[id=generate_button]'); + if (generateButton) { + generateButton.click(); + e.preventDefault(); + return; + } + + const stopButton = gradioApp().querySelector('button:not(.hidden)[id=stop_button]') + if(stopButton) { + stopButton.click(); + e.preventDefault(); + return; } - e.preventDefault(); } });