Parcourir la source

Merge branch 'dev' into js-misc-fixes

AUTOMATIC1111 il y a 2 ans
Parent
commit
50f63e2247
4 fichiers modifiés avec 18 ajouts et 6 suppressions
  1. 8 2
      javascript/ui.js
  2. 5 2
      modules/processing.py
  3. 4 1
      modules/ui.py
  4. 1 1
      scripts/xyz_grid.py

+ 8 - 2
javascript/ui.js

@@ -208,17 +208,23 @@ function submit_img2img(){
 }
 }
 
 
 function restoreProgressTxt2img(){
 function restoreProgressTxt2img(){
+    showRestoreProgressButton("txt2img", false)
     var id = localStorage.getItem("txt2img_task_id")
     var id = localStorage.getItem("txt2img_task_id")
 
 
+    id = localStorage.getItem("txt2img_task_id")
+
     if(id) {
     if(id) {
         requestProgress(id, gradioApp().getElementById('txt2img_gallery_container'), gradioApp().getElementById('txt2img_gallery'), function(){
         requestProgress(id, gradioApp().getElementById('txt2img_gallery_container'), gradioApp().getElementById('txt2img_gallery'), function(){
             showSubmitButtons('txt2img', true)
             showSubmitButtons('txt2img', true)
         }, null, 0)
         }, null, 0)
     }
     }
 
 
-    return [id]
+    return id
 }
 }
+
 function restoreProgressImg2img(){
 function restoreProgressImg2img(){
+    showRestoreProgressButton("img2img", false)
+    
     var id = localStorage.getItem("img2img_task_id")
     var id = localStorage.getItem("img2img_task_id")
 
 
     if(id) {
     if(id) {
@@ -227,7 +233,7 @@ function restoreProgressImg2img(){
         }, null, 0)
         }, null, 0)
     }
     }
 
 
-    return [id]
+    return id
 }
 }
 
 
 
 

+ 5 - 2
modules/processing.py

@@ -498,6 +498,11 @@ def process_images(p: StableDiffusionProcessing) -> Processed:
     stored_opts = {k: opts.data[k] for k in p.override_settings.keys()}
     stored_opts = {k: opts.data[k] for k in p.override_settings.keys()}
 
 
     try:
     try:
+        # if no checkpoint override or the override checkpoint can't be found, remove override entry and load opts checkpoint
+        if sd_models.checkpoint_alisases.get(p.override_settings.get('sd_model_checkpoint')) is None:
+            p.override_settings.pop('sd_model_checkpoint', None)
+            sd_models.reload_model_weights()
+
         for k, v in p.override_settings.items():
         for k, v in p.override_settings.items():
             setattr(opts, k, v)
             setattr(opts, k, v)
 
 
@@ -514,8 +519,6 @@ def process_images(p: StableDiffusionProcessing) -> Processed:
         if p.override_settings_restore_afterwards:
         if p.override_settings_restore_afterwards:
             for k, v in stored_opts.items():
             for k, v in stored_opts.items():
                 setattr(opts, k, v)
                 setattr(opts, k, v)
-                if k == 'sd_model_checkpoint':
-                    sd_models.reload_model_weights()
 
 
                 if k == 'sd_vae':
                 if k == 'sd_vae':
                     sd_vae.reload_vae_weights()
                     sd_vae.reload_vae_weights()

+ 4 - 1
modules/ui.py

@@ -810,7 +810,10 @@ def create_ui():
                                     scale_by.release(**on_change_args)
                                     scale_by.release(**on_change_args)
                                     button_update_resize_to.click(**on_change_args)
                                     button_update_resize_to.click(**on_change_args)
 
 
-                                    for component in img2img_image_inputs:
+                                    # the code below is meant to update the resolution label after the image in the image selection UI has changed.
+                                    # as it is now the event keeps firing continuously for inpaint edits, which ruins the page with constant requests.
+                                    # I assume this must be a gradio bug and for now we'll just do it for non-inpaint inputs.
+                                    for component in [init_img, sketch]:
                                         component.change(fn=lambda: None, _js="updateImg2imgResizeToTextAfterChangingImage", inputs=[], outputs=[], show_progress=False)
                                         component.change(fn=lambda: None, _js="updateImg2imgResizeToTextAfterChangingImage", inputs=[], outputs=[], show_progress=False)
 
 
                             tab_scale_to.select(fn=lambda: 0, inputs=[], outputs=[selected_scale_tab])
                             tab_scale_to.select(fn=lambda: 0, inputs=[], outputs=[selected_scale_tab])

+ 1 - 1
scripts/xyz_grid.py

@@ -86,7 +86,7 @@ def apply_checkpoint(p, x, xs):
     info = modules.sd_models.get_closet_checkpoint_match(x)
     info = modules.sd_models.get_closet_checkpoint_match(x)
     if info is None:
     if info is None:
         raise RuntimeError(f"Unknown checkpoint: {x}")
         raise RuntimeError(f"Unknown checkpoint: {x}")
-    modules.sd_models.reload_model_weights(shared.sd_model, info)
+    p.override_settings['sd_model_checkpoint'] = info.hash
 
 
 
 
 def confirm_checkpoints(p, xs):
 def confirm_checkpoints(p, xs):