From 56e294debbb757a17574f50403616c77f40fd793 Mon Sep 17 00:00:00 2001 From: Pavel Baksy Date: Tue, 12 May 2026 01:17:12 +0200 Subject: [PATCH] Fix variable indicators not updating when active environment is deleted --- src/request_tab_widget.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/request_tab_widget.py b/src/request_tab_widget.py index 8838f48..462a9fb 100644 --- a/src/request_tab_widget.py +++ b/src/request_tab_widget.py @@ -1255,6 +1255,7 @@ class RequestTabWidget(Gtk.Box): # Set flag to indicate we're programmatically changing the dropdown # This prevents the signal handler from triggering indicator updates during initialization self._is_programmatically_changing_environment = True + old_env_id = self.selected_environment_id try: # Build string list with "None" + environment names @@ -1276,6 +1277,8 @@ class RequestTabWidget(Gtk.Box): index = self.environment_ids.index(self.selected_environment_id) self.environment_dropdown.set_selected(index) except ValueError: + # Previously selected environment no longer exists + self.selected_environment_id = None self.environment_dropdown.set_selected(0) # Default to "None" else: self.environment_dropdown.set_selected(0) # Default to "None" @@ -1284,8 +1287,9 @@ class RequestTabWidget(Gtk.Box): # Always clear the flag self._is_programmatically_changing_environment = False - # Note: Don't update indicators here as the request might not be loaded yet - # Indicators will be updated when environment changes or request is loaded + # If the effective environment changed (e.g. was deleted), update indicators + if self.selected_environment_id != old_env_id: + self._update_variable_indicators() def _show_environment_selector(self): """Show environment selector (create if it doesn't exist)."""