diff --git a/modules/ui.py b/modules/ui.py index 2fde22bf..65caeae8 100644 --- a/modules/ui.py +++ b/modules/ui.py @@ -906,12 +906,14 @@ def create_ui(): extensions_interface = ui_extensions.create_ui() interfaces += [(extensions_interface, "Extensions", "extensions")] + interface_names_without_quick_setting_bars = ["Spaces"] + shared.tab_names = [] for _interface, label, _ifid in interfaces: shared.tab_names.append(label) with gr.Blocks(theme=shared.gradio_theme, analytics_enabled=False, title="Stable Diffusion", head=canvas_head) as demo: - settings.add_quicksettings() + quicksettings_row = settings.add_quicksettings() parameters_copypaste.connect_paste_params_buttons() @@ -932,6 +934,11 @@ def create_ui(): loadsave.setup_ui() + def tab_changed(evt: gr.SelectData): + return gr.update(visible=evt.value not in interface_names_without_quick_setting_bars) + + tabs.select(tab_changed, outputs=[quicksettings_row], show_progress=False, queue=False) + if os.path.exists(os.path.join(script_path, "notification.mp3")) and shared.opts.notification_audio: gr.Audio(interactive=False, value=os.path.join(script_path, "notification.mp3"), elem_id="audio_notification", visible=False) diff --git a/modules/ui_settings.py b/modules/ui_settings.py index 6614bddc..1c64607e 100644 --- a/modules/ui_settings.py +++ b/modules/ui_settings.py @@ -292,11 +292,12 @@ class UiSettings: self.interface = settings_interface def add_quicksettings(self): - with gr.Row(elem_id="quicksettings", variant="compact"): + with gr.Row(elem_id="quicksettings", variant="compact") as quicksettings_row: main_entry.make_checkpoint_manager_ui() for _i, k, _item in sorted(self.quicksettings_list, key=lambda x: self.quicksettings_names.get(x[1], x[0])): component = create_setting_component(k, is_quicksettings=True) self.component_dict[k] = component + return quicksettings_row def add_functionality(self, demo): self.submit.click(