1
0
mirror of https://github.com/vladmandic/sdnext.git synced 2026-01-29 05:02:09 +03:00
Files
sdnext/javascript/generationParams.js
Vladimir Mandic 4d9fab4984 fix txt_fullfn
2023-05-08 11:56:59 -04:00

31 lines
1.4 KiB
JavaScript

// attaches listeners to the txt2img and img2img galleries to update displayed generation param text when the image changes
let txt2img_gallery; let img2img_gallery; let
modal;
onUiUpdate(() => {
if (!txt2img_gallery) txt2img_gallery = attachGalleryListeners('txt2img');
if (!img2img_gallery) img2img_gallery = attachGalleryListeners('img2img');
if (!modal) {
modal = gradioApp().getElementById('lightboxModal');
modalObserver.observe(modal, { attributes: true, attributeFilter: ['style'] });
}
});
let modalObserver = new MutationObserver((mutations) => {
mutations.forEach((mutationRecord) => {
let selectedTab = gradioApp().querySelector('#tabs div button.selected')?.innerText;
if (!selectedTab) selectedTab = gradioApp().querySelector('#tabs div button')?.innerText;
if (mutationRecord.target.style.display === 'none' && (selectedTab === 'txt2img' || selectedTab === 'img2img')) { gradioApp().getElementById(`${selectedTab}_generation_info_button`)?.click(); }
});
});
function attachGalleryListeners(tab_name) {
gallery = gradioApp().querySelector(`#${tab_name}_gallery`);
gallery?.addEventListener('click', () => gradioApp().getElementById(`${tab_name}_generation_info_button`).click());
gallery?.addEventListener('keydown', (e) => {
if (e.keyCode == 37 || e.keyCode == 39) // left or right arrow
{ gradioApp().getElementById(`${tab_name}_generation_info_button`).click(); }
});
return gallery;
}