mirror of
https://github.com/lllyasviel/Fooocus.git
synced 2026-08-16 13:13:16 +02:00
Merge branch 'feature/add-pony-support-and-preset' into develop
# Conflicts: # webui.py
This commit is contained in:
@@ -20,7 +20,7 @@ re_param = re.compile(re_param_code)
|
|||||||
re_imagesize = re.compile(r"^(\d+)x(\d+)$")
|
re_imagesize = re.compile(r"^(\d+)x(\d+)$")
|
||||||
|
|
||||||
|
|
||||||
def load_parameter_button_click(raw_metadata: dict | str, is_generating: bool):
|
def load_parameter_button_click(raw_metadata: dict | str, is_generating: bool, inpaint_mode: str):
|
||||||
loaded_parameter_dict = raw_metadata
|
loaded_parameter_dict = raw_metadata
|
||||||
if isinstance(raw_metadata, str):
|
if isinstance(raw_metadata, str):
|
||||||
loaded_parameter_dict = json.loads(raw_metadata)
|
loaded_parameter_dict = json.loads(raw_metadata)
|
||||||
@@ -49,7 +49,7 @@ def load_parameter_button_click(raw_metadata: dict | str, is_generating: bool):
|
|||||||
get_str('scheduler', 'Scheduler', loaded_parameter_dict, results)
|
get_str('scheduler', 'Scheduler', loaded_parameter_dict, results)
|
||||||
get_str('vae', 'VAE', loaded_parameter_dict, results)
|
get_str('vae', 'VAE', loaded_parameter_dict, results)
|
||||||
get_seed('seed', 'Seed', loaded_parameter_dict, results)
|
get_seed('seed', 'Seed', loaded_parameter_dict, results)
|
||||||
get_inpaint_engine_version('inpaint_engine_version', 'Inpaint Engine Version', loaded_parameter_dict, results)
|
get_inpaint_engine_version('inpaint_engine_version', 'Inpaint Engine Version', loaded_parameter_dict, results, inpaint_mode)
|
||||||
get_inpaint_method('inpaint_method', 'Inpaint Mode', loaded_parameter_dict, results)
|
get_inpaint_method('inpaint_method', 'Inpaint Mode', loaded_parameter_dict, results)
|
||||||
|
|
||||||
if is_generating:
|
if is_generating:
|
||||||
@@ -162,11 +162,14 @@ def get_seed(key: str, fallback: str | None, source_dict: dict, results: list, d
|
|||||||
results.append(gr.update())
|
results.append(gr.update())
|
||||||
|
|
||||||
|
|
||||||
def get_inpaint_engine_version(key: str, fallback: str | None, source_dict: dict, results: list, default=None) -> str | None:
|
def get_inpaint_engine_version(key: str, fallback: str | None, source_dict: dict, results: list, inpaint_mode: str, default=None) -> str | None:
|
||||||
try:
|
try:
|
||||||
h = source_dict.get(key, source_dict.get(fallback, default))
|
h = source_dict.get(key, source_dict.get(fallback, default))
|
||||||
assert isinstance(h, str) and h in modules.flags.inpaint_engine_versions
|
assert isinstance(h, str) and h in modules.flags.inpaint_engine_versions
|
||||||
results.append(h)
|
if inpaint_mode != modules.flags.inpaint_option_detail:
|
||||||
|
results.append(h)
|
||||||
|
else:
|
||||||
|
results.append(gr.update())
|
||||||
results.append(h)
|
results.append(h)
|
||||||
return h
|
return h
|
||||||
except:
|
except:
|
||||||
|
|||||||
@@ -894,7 +894,7 @@ with shared.gradio_root:
|
|||||||
load_parameter_button] + freeu_ctrls + lora_ctrls
|
load_parameter_button] + freeu_ctrls + lora_ctrls
|
||||||
|
|
||||||
if not args_manager.args.disable_preset_selection:
|
if not args_manager.args.disable_preset_selection:
|
||||||
def preset_selection_change(preset, is_generating):
|
def preset_selection_change(preset, is_generating, inpaint_mode):
|
||||||
preset_content = modules.config.try_get_preset_content(preset) if preset != 'initial' else {}
|
preset_content = modules.config.try_get_preset_content(preset) if preset != 'initial' else {}
|
||||||
preset_prepared = modules.meta_parser.parse_meta_from_preset(preset_content)
|
preset_prepared = modules.meta_parser.parse_meta_from_preset(preset_content)
|
||||||
|
|
||||||
@@ -912,7 +912,7 @@ with shared.gradio_root:
|
|||||||
if 'prompt' in preset_prepared and preset_prepared.get('prompt') == '':
|
if 'prompt' in preset_prepared and preset_prepared.get('prompt') == '':
|
||||||
del preset_prepared['prompt']
|
del preset_prepared['prompt']
|
||||||
|
|
||||||
return modules.meta_parser.load_parameter_button_click(json.dumps(preset_prepared), is_generating)
|
return modules.meta_parser.load_parameter_button_click(json.dumps(preset_prepared), is_generating, inpaint_mode)
|
||||||
|
|
||||||
|
|
||||||
def inpaint_engine_state_change(inpaint_engine_version, *args):
|
def inpaint_engine_state_change(inpaint_engine_version, *args):
|
||||||
@@ -928,7 +928,7 @@ with shared.gradio_root:
|
|||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
preset_selection.change(preset_selection_change, inputs=[preset_selection, state_is_generating], outputs=load_data_outputs, queue=False, show_progress=True) \
|
preset_selection.change(preset_selection_change, inputs=[preset_selection, state_is_generating, inpaint_mode], outputs=load_data_outputs, queue=False, show_progress=True) \
|
||||||
.then(fn=style_sorter.sort_styles, inputs=style_selections, outputs=style_selections, queue=False, show_progress=False) \
|
.then(fn=style_sorter.sort_styles, inputs=style_selections, outputs=style_selections, queue=False, show_progress=False) \
|
||||||
.then(lambda: None, _js='()=>{refresh_style_localization();}') \
|
.then(lambda: None, _js='()=>{refresh_style_localization();}') \
|
||||||
.then(inpaint_engine_state_change, inputs=[inpaint_engine_state] + enhance_inpaint_mode_ctrls, outputs=enhance_inpaint_engine_ctrls, queue=False, show_progress=False)
|
.then(inpaint_engine_state_change, inputs=[inpaint_engine_state] + enhance_inpaint_mode_ctrls, outputs=enhance_inpaint_engine_ctrls, queue=False, show_progress=False)
|
||||||
@@ -1015,7 +1015,7 @@ with shared.gradio_root:
|
|||||||
|
|
||||||
prompt.input(parse_meta, inputs=[prompt, state_is_generating], outputs=[prompt, generate_button, load_parameter_button], queue=False, show_progress=False)
|
prompt.input(parse_meta, inputs=[prompt, state_is_generating], outputs=[prompt, generate_button, load_parameter_button], queue=False, show_progress=False)
|
||||||
|
|
||||||
load_parameter_button.click(modules.meta_parser.load_parameter_button_click, inputs=[prompt, state_is_generating], outputs=load_data_outputs, queue=False, show_progress=False)
|
load_parameter_button.click(modules.meta_parser.load_parameter_button_click, inputs=[prompt, state_is_generating, inpaint_mode], outputs=load_data_outputs, queue=False, show_progress=False)
|
||||||
|
|
||||||
def trigger_metadata_import(filepath, state_is_generating):
|
def trigger_metadata_import(filepath, state_is_generating):
|
||||||
parameters, metadata_scheme = modules.meta_parser.read_info_from_image(filepath)
|
parameters, metadata_scheme = modules.meta_parser.read_info_from_image(filepath)
|
||||||
@@ -1026,7 +1026,7 @@ with shared.gradio_root:
|
|||||||
metadata_parser = modules.meta_parser.get_metadata_parser(metadata_scheme)
|
metadata_parser = modules.meta_parser.get_metadata_parser(metadata_scheme)
|
||||||
parsed_parameters = metadata_parser.to_json(parameters)
|
parsed_parameters = metadata_parser.to_json(parameters)
|
||||||
|
|
||||||
return modules.meta_parser.load_parameter_button_click(parsed_parameters, state_is_generating)
|
return modules.meta_parser.load_parameter_button_click(parsed_parameters, state_is_generating, inpaint_mode)
|
||||||
|
|
||||||
metadata_import_button.click(trigger_metadata_import, inputs=[metadata_input_image, state_is_generating], outputs=load_data_outputs, queue=False, show_progress=True) \
|
metadata_import_button.click(trigger_metadata_import, inputs=[metadata_input_image, state_is_generating], outputs=load_data_outputs, queue=False, show_progress=True) \
|
||||||
.then(style_sorter.sort_styles, inputs=style_selections, outputs=style_selections, queue=False, show_progress=False)
|
.then(style_sorter.sort_styles, inputs=style_selections, outputs=style_selections, queue=False, show_progress=False)
|
||||||
|
|||||||
Reference in New Issue
Block a user