@@ -157,7 +157,7 @@ def __init__(self, console=None, hide_on_close=False):
157157 self .imagepanel : ImagePanel | None = None
158158 self .tabwidget : QW .QTabWidget | None = None
159159 self .tabmenu : QW .QMenu | None = None
160- self .docks : dict [AbstractPanel , QW .QDockWidget ] | None = None
160+ self .docks : dict [AbstractPanel | DockableConsole , QW .QDockWidget ] | None = None
161161 self .h5inputoutput = H5InputOutput (self )
162162
163163 self .openh5_action : QW .QAction | None = None
@@ -933,10 +933,10 @@ def __add_signal_image_panels(self) -> None:
933933 self .tabwidget = QW .QTabWidget ()
934934 self .tabmenu = add_corner_menu (self .tabwidget )
935935 configure_menu_about_to_show (self .tabmenu , self .__update_tab_menu )
936- cdock = self .__add_dockwidget (self .__add_signal_panel (), title = _ ("Signal View" ))
936+ sdock = self .__add_dockwidget (self .__add_signal_panel (), title = _ ("Signal View" ))
937937 idock = self .__add_dockwidget (self .__add_image_panel (), title = _ ("Image View" ))
938- self .tabifyDockWidget (cdock , idock )
939- self .docks = {self .signalpanel : cdock , self .imagepanel : idock }
938+ self .tabifyDockWidget (sdock , idock )
939+ self .docks = {self .signalpanel : sdock , self .imagepanel : idock }
940940 self .tabwidget .currentChanged .connect (self .__tab_index_changed )
941941 self .signalpanel .SIG_OBJECT_ADDED .connect (
942942 lambda : self .set_current_panel ("signal" )
@@ -1076,7 +1076,9 @@ def __update_console_show_mode(self) -> None:
10761076 """
10771077 if self .console is not None :
10781078 state = Conf .console .show_console_on_error .get ()
1079- self .console .setVisible (state )
1079+ cdock = self .docks [self .console ]
1080+ if not state and cdock .isVisible ():
1081+ cdock .hide ()
10801082 if state :
10811083 self .console .exception_occurred .connect (self .console .show_console )
10821084 else :
@@ -1110,8 +1112,9 @@ def __setup_console(self) -> None:
11101112 self .console = DockableConsole (self , namespace = ns , message = msg , debug = DEBUG )
11111113 self .console .setMaximumBlockCount (Conf .console .max_line_count .get (5000 ))
11121114 self .console .go_to_error .connect (go_to_error )
1113- console_dock = self .__add_dockwidget (self .console , _ ("Console" ))
1114- console_dock .hide ()
1115+ cdock = self .__add_dockwidget (self .console , _ ("Console" ))
1116+ self .docks [self .console ] = cdock
1117+ cdock .hide ()
11151118 self .console .interpreter .widget_proxy .sig_new_prompt .connect (
11161119 lambda txt : self .repopulate_panel_trees ()
11171120 )
0 commit comments