From 81f61f3c3b75d63e8dd78cc01090f64345200e0e Mon Sep 17 00:00:00 2001 From: wyzula-jan Date: Thu, 27 Feb 2025 18:00:31 +0100 Subject: [PATCH] fix(plot_base): fix cleanup of popups if popups are still open when PlotBase is closed --- bec_widgets/widgets/plots_next_gen/plot_base.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bec_widgets/widgets/plots_next_gen/plot_base.py b/bec_widgets/widgets/plots_next_gen/plot_base.py index f3ed0cab..975c9591 100644 --- a/bec_widgets/widgets/plots_next_gen/plot_base.py +++ b/bec_widgets/widgets/plots_next_gen/plot_base.py @@ -95,6 +95,7 @@ class PlotBase(BECWidget, QWidget): self.entry_validator = EntryValidator(self.dev) # Base widgets elements + self._popups = popups self._ui_mode = UIMode.POPUP if popups else UIMode.SIDE self.axis_settings_dialog = None self.plot_widget = pg.GraphicsLayoutWidget(parent=self) @@ -699,6 +700,9 @@ class PlotBase(BECWidget, QWidget): def cleanup(self): self.unhook_crosshair() self.unhook_fps_monitor(delete_label=True) + if self.axis_settings_dialog is not None: + self.axis_settings_dialog.close() + self.axis_settings_dialog = None self.cleanup_pyqtgraph() self.rpc_register.remove_rpc(self)