1234567891011121314151617181920212223242526272829303132333435 |
- // attaches listeners to the txt2img and img2img galleries to update displayed generation param text when the image changes
- let txt2img_gallery, img2img_gallery, modal = undefined;
- onAfterUiUpdate(function() {
- 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(function(mutations) {
- mutations.forEach(function(mutationRecord) {
- let selectedTab = gradioApp().querySelector('#tabs div button.selected')?.innerText;
- if (mutationRecord.target.style.display === 'none' && (selectedTab === 'txt2img' || selectedTab === 'img2img')) {
- gradioApp().getElementById(selectedTab + "_generation_info_button")?.click();
- }
- });
- });
- function attachGalleryListeners(tab_name) {
- var 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;
- }
|