Merge pull request #15121 from AUTOMATIC1111/fix-settings-in-ui

[alternative fix] can't load webui if selected wrong extra option in ui
This commit is contained in:
AUTOMATIC1111 2024-03-04 18:24:09 +03:00 committed by GitHub
commit 58278aa71c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 12 additions and 4 deletions

View File

@ -1,7 +1,7 @@
import math import math
import gradio as gr import gradio as gr
from modules import scripts, shared, ui_components, ui_settings, infotext_utils from modules import scripts, shared, ui_components, ui_settings, infotext_utils, errors
from modules.ui_components import FormColumn from modules.ui_components import FormColumn
@ -42,7 +42,11 @@ class ExtraOptionsSection(scripts.Script):
setting_name = extra_options[index] setting_name = extra_options[index]
with FormColumn(): with FormColumn():
comp = ui_settings.create_setting_component(setting_name) try:
comp = ui_settings.create_setting_component(setting_name)
except KeyError:
errors.report(f"Can't add extra options for {setting_name} in ui")
continue
self.comps.append(comp) self.comps.append(comp)
self.setting_names.append(setting_name) self.setting_names.append(setting_name)

View File

@ -269,6 +269,9 @@ def create_ui():
parameters_copypaste.reset() parameters_copypaste.reset()
settings = ui_settings.UiSettings()
settings.register_settings()
scripts.scripts_current = scripts.scripts_txt2img scripts.scripts_current = scripts.scripts_txt2img
scripts.scripts_txt2img.initialize_scripts(is_img2img=False) scripts.scripts_txt2img.initialize_scripts(is_img2img=False)
@ -1116,7 +1119,6 @@ def create_ui():
loadsave = ui_loadsave.UiLoadsave(cmd_opts.ui_config_file) loadsave = ui_loadsave.UiLoadsave(cmd_opts.ui_config_file)
ui_settings_from_file = loadsave.ui_settings.copy() ui_settings_from_file = loadsave.ui_settings.copy()
settings = ui_settings.UiSettings()
settings.create_ui(loadsave, dummy_component) settings.create_ui(loadsave, dummy_component)
interfaces = [ interfaces = [

View File

@ -98,6 +98,9 @@ class UiSettings:
return get_value_for_setting(key), opts.dumpjson() return get_value_for_setting(key), opts.dumpjson()
def register_settings(self):
script_callbacks.ui_settings_callback()
def create_ui(self, loadsave, dummy_component): def create_ui(self, loadsave, dummy_component):
self.components = [] self.components = []
self.component_dict = {} self.component_dict = {}
@ -105,7 +108,6 @@ class UiSettings:
shared.settings_components = self.component_dict shared.settings_components = self.component_dict
script_callbacks.ui_settings_callback()
opts.reorder() opts.reorder()
with gr.Blocks(analytics_enabled=False) as settings_interface: with gr.Blocks(analytics_enabled=False) as settings_interface: