diff options
author | Aarni Koskela <akx@iki.fi> | 2023-12-13 10:22:13 +0000 |
---|---|---|
committer | Aarni Koskela <akx@iki.fi> | 2023-12-13 10:22:13 +0000 |
commit | 89cfbc3bbe401fe1655afb07edbae34ec6af7aca (patch) | |
tree | d7adcd5d198efd334bd96d00edb7d00a961ea18e /javascript | |
parent | f92d61497a426a19818625c3ccdaae9beeb82b31 (diff) | |
download | stable-diffusion-webui-gfx803-89cfbc3bbe401fe1655afb07edbae34ec6af7aca.tar.gz stable-diffusion-webui-gfx803-89cfbc3bbe401fe1655afb07edbae34ec6af7aca.tar.bz2 stable-diffusion-webui-gfx803-89cfbc3bbe401fe1655afb07edbae34ec6af7aca.zip |
Allow pasting in WIDTHxHEIGHT strings into the width/height fields
Diffstat (limited to 'javascript')
-rw-r--r-- | javascript/ui.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/javascript/ui.js b/javascript/ui.js index 410fc44e..18c9f891 100644 --- a/javascript/ui.js +++ b/javascript/ui.js @@ -215,9 +215,33 @@ function restoreProgressImg2img() { } +/** + * Configure the width and height elements on `tabname` to accept + * pasting of resolutions in the form of "width x height". + */ +function setupResolutionPasting(tabname) { + var width = gradioApp().querySelector(`#${tabname}_width input[type=number]`); + var height = gradioApp().querySelector(`#${tabname}_height input[type=number]`); + for (const el of [width, height]) { + el.addEventListener('paste', function(event) { + var pasteData = event.clipboardData.getData('text/plain'); + var parsed = pasteData.match(/^\s*(\d+)\D+(\d+)\s*$/); + if (parsed) { + width.value = parsed[1]; + height.value = parsed[2]; + updateInput(width); + updateInput(height); + event.preventDefault(); + } + }); + } +} + onUiLoaded(function() { showRestoreProgressButton('txt2img', localGet("txt2img_task_id")); showRestoreProgressButton('img2img', localGet("img2img_task_id")); + setupResolutionPasting('txt2img'); + setupResolutionPasting('img2img'); }); |