diff options
author | missionfloyd <missionfloyd@users.noreply.github.com> | 2023-03-27 03:50:22 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-27 03:50:22 +0000 |
commit | 8410b1351e2fb2cf6e29925e06c2f0e51ce7852d (patch) | |
tree | 1ff9682524e2994d7299af502c4fcdc3aa5b2ed7 | |
parent | cb8c447f0d37b5ee9df9a7ee3e9d32b7966dabee (diff) | |
parent | 3b5a3fab91ff797b28239cda5b449aac1f85ad00 (diff) | |
download | stable-diffusion-webui-gfx803-8410b1351e2fb2cf6e29925e06c2f0e51ce7852d.tar.gz stable-diffusion-webui-gfx803-8410b1351e2fb2cf6e29925e06c2f0e51ce7852d.tar.bz2 stable-diffusion-webui-gfx803-8410b1351e2fb2cf6e29925e06c2f0e51ce7852d.zip |
Merge branch 'AUTOMATIC1111:master' into extra-network-preview-lazyload
-rw-r--r-- | javascript/imageviewer.js | 24 | ||||
-rw-r--r-- | javascript/ui.js | 36 | ||||
-rw-r--r-- | modules/scripts.py | 12 | ||||
-rw-r--r-- | style.css | 15 |
4 files changed, 60 insertions, 27 deletions
diff --git a/javascript/imageviewer.js b/javascript/imageviewer.js index 7547e771..d6483562 100644 --- a/javascript/imageviewer.js +++ b/javascript/imageviewer.js @@ -32,13 +32,7 @@ function negmod(n, m) { function updateOnBackgroundChange() { const modalImage = gradioApp().getElementById("modalImage") if (modalImage && modalImage.offsetParent) { - let allcurrentButtons = gradioApp().querySelectorAll(".gallery-item.transition-all.\\!ring-2") - let currentButton = null - allcurrentButtons.forEach(function(elem) { - if (elem.parentElement.offsetParent) { - currentButton = elem; - } - }) + let currentButton = selected_gallery_button(); if (currentButton?.children?.length > 0 && modalImage.src != currentButton.children[0].src) { modalImage.src = currentButton.children[0].src; @@ -50,22 +44,10 @@ function updateOnBackgroundChange() { } function modalImageSwitch(offset) { - var allgalleryButtons = gradioApp().querySelectorAll(".gradio-gallery .thumbnail-item") - var galleryButtons = [] - allgalleryButtons.forEach(function(elem) { - if (elem.parentElement.offsetParent) { - galleryButtons.push(elem); - } - }) + var galleryButtons = all_gallery_buttons(); if (galleryButtons.length > 1) { - var allcurrentButtons = gradioApp().querySelectorAll(".gradio-gallery .thumbnail-item.selected") - var currentButton = null - allcurrentButtons.forEach(function(elem) { - if (elem.parentElement.offsetParent) { - currentButton = elem; - } - }) + var currentButton = selected_gallery_button(); var result = -1 galleryButtons.forEach(function(v, i) { diff --git a/javascript/ui.js b/javascript/ui.js index fcaf5608..4a440193 100644 --- a/javascript/ui.js +++ b/javascript/ui.js @@ -7,9 +7,31 @@ function set_theme(theme){ } } +function all_gallery_buttons() { + var allGalleryButtons = gradioApp().querySelectorAll('[style="display: block;"].tabitem div[id$=_gallery].gradio-gallery .thumbnails > .thumbnail-item.thumbnail-small'); + var visibleGalleryButtons = []; + allGalleryButtons.forEach(function(elem) { + if (elem.parentElement.offsetParent) { + visibleGalleryButtons.push(elem); + } + }) + return visibleGalleryButtons; +} + +function selected_gallery_button() { + var allCurrentButtons = gradioApp().querySelectorAll('[style="display: block;"].tabitem div[id$=_gallery].gradio-gallery .thumbnail-item.thumbnail-small.selected'); + var visibleCurrentButton = null; + allCurrentButtons.forEach(function(elem) { + if (elem.parentElement.offsetParent) { + visibleCurrentButton = elem; + } + }) + return visibleCurrentButton; +} + function selected_gallery_index(){ - var buttons = gradioApp().querySelectorAll('[style="display: block;"].tabitem div[id$=_gallery] .gallery-item') - var button = gradioApp().querySelector('[style="display: block;"].tabitem div[id$=_gallery] .gallery-item.\\!ring-2') + var buttons = all_gallery_buttons(); + var button = selected_gallery_button(); var result = -1 buttons.forEach(function(v, i){ if(v==button) { result = i } }) @@ -18,14 +40,18 @@ function selected_gallery_index(){ } function extract_image_from_gallery(gallery){ - if(gallery.length == 1){ - return [gallery[0]] + if (gallery.length == 0){ + return [null]; + } + if (gallery.length == 1){ + return [gallery[0]]; } index = selected_gallery_index() if (index < 0 || index >= gallery.length){ - return [null] + // Use the first image in the gallery as the default + index = 0; } return [gallery[index]]; diff --git a/modules/scripts.py b/modules/scripts.py index d661be4f..4d0bbd66 100644 --- a/modules/scripts.py +++ b/modules/scripts.py @@ -553,3 +553,15 @@ def IOComponent_init(self, *args, **kwargs): original_IOComponent_init = gr.components.IOComponent.__init__
gr.components.IOComponent.__init__ = IOComponent_init
+
+
+def BlockContext_init(self, *args, **kwargs):
+ res = original_BlockContext_init(self, *args, **kwargs)
+
+ add_classes_to_gradio_component(self)
+
+ return res
+
+
+original_BlockContext_init = gr.blocks.BlockContext.__init__
+gr.blocks.BlockContext.__init__ = BlockContext_init
@@ -7,7 +7,7 @@ --block-background-fill: transparent;
}
-.block.padded{
+.block.padded:not(.gradio-accordion) {
padding: 0 !important;
}
@@ -65,6 +65,19 @@ div.compact{ margin-bottom: 0;
}
+.gradio-dropdown ul.options {
+ max-height: 35em;
+ z-index: 3000;
+}
+
+.gradio-dropdown ul.options li.item {
+ padding: 0.05em 0;
+}
+
+.gradio-dropdown ul.options li.item.selected {
+ background-color: var(--secondary-500);
+}
+
.gradio-dropdown div.wrap.wrap.wrap.wrap{
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
|