|
|
|
|
@ -81,6 +81,25 @@ function modalImageSwitch(offset) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function saveImage(){
|
|
|
|
|
const tabTxt2Img = gradioApp().getElementById("tab_txt2img")
|
|
|
|
|
const tabImg2Img = gradioApp().getElementById("tab_img2img")
|
|
|
|
|
const saveTxt2Img = "save_txt2img"
|
|
|
|
|
const saveImg2Img = "save_img2img"
|
|
|
|
|
if (tabTxt2Img.style["display"] != "none") {
|
|
|
|
|
gradioApp().getElementById(saveTxt2Img).click()
|
|
|
|
|
} else if (tabImg2Img.style["display"] != "none") {
|
|
|
|
|
gradioApp().getElementById(saveImg2Img).click()
|
|
|
|
|
} else {
|
|
|
|
|
console.error("missing implementation for saving modal of this type")
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function modalSaveImage(event) {
|
|
|
|
|
saveImage()
|
|
|
|
|
event.stopPropagation()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function modalNextImage(event) {
|
|
|
|
|
modalImageSwitch(1)
|
|
|
|
|
event.stopPropagation()
|
|
|
|
|
@ -93,6 +112,9 @@ function modalPrevImage(event) {
|
|
|
|
|
|
|
|
|
|
function modalKeyHandler(event) {
|
|
|
|
|
switch (event.key) {
|
|
|
|
|
case "s":
|
|
|
|
|
saveImage()
|
|
|
|
|
break;
|
|
|
|
|
case "ArrowLeft":
|
|
|
|
|
modalPrevImage(event)
|
|
|
|
|
break;
|
|
|
|
|
@ -198,6 +220,13 @@ document.addEventListener("DOMContentLoaded", function() {
|
|
|
|
|
modalTileImage.title = "Preview tiling";
|
|
|
|
|
modalControls.appendChild(modalTileImage)
|
|
|
|
|
|
|
|
|
|
const modalSave = document.createElement("span")
|
|
|
|
|
modalSave.className = "modalSave cursor"
|
|
|
|
|
modalSave.innerHTML = "🖫"
|
|
|
|
|
modalSave.addEventListener("click", modalSaveImage, true)
|
|
|
|
|
modalSave.title = "Save Image(s)"
|
|
|
|
|
modalControls.appendChild(modalSave)
|
|
|
|
|
|
|
|
|
|
const modalClose = document.createElement('span')
|
|
|
|
|
modalClose.className = 'modalClose cursor';
|
|
|
|
|
modalClose.innerHTML = '×'
|
|
|
|
|
|