From ad994a04b11c86efeee86d85e16b4e4796e869e1 Mon Sep 17 00:00:00 2001 From: beckline Date: Sun, 15 Feb 2026 22:46:54 +0300 Subject: [PATCH] ui: keep profile flags in sync with runtime actions --- selective-vpn-gui/traffic_mode_dialog.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/selective-vpn-gui/traffic_mode_dialog.py b/selective-vpn-gui/traffic_mode_dialog.py index 619c8a0..2a71fe0 100644 --- a/selective-vpn-gui/traffic_mode_dialog.py +++ b/selective-vpn-gui/traffic_mode_dialog.py @@ -1616,6 +1616,7 @@ RU: Применяет policy-rules и проверяет health. При оши self._set_action_status(f"Unmarked: {len(pairs)} item(s)", ok=True) self.refresh_appmarks_items(quiet=True) self.refresh_appmarks_counts() + self.refresh_app_profiles(quiet=True) self._safe(work, title="Unmark selected error") @@ -1890,6 +1891,7 @@ RU: Применяет policy-rules и проверяет health. При оши QMessageBox.critical(self, "App mark error", res.message or "unknown error") self.refresh_appmarks_counts() self.refresh_running_scopes() + self.refresh_app_profiles(quiet=True) return unit = f"svpn-{target}-{int(time.time())}.service" @@ -1955,6 +1957,7 @@ RU: Применяет policy-rules и проверяет health. При оши self.refresh_appmarks_counts() self.refresh_running_scopes() + self.refresh_app_profiles(quiet=True) self._safe(work, title="Run app error") @@ -1977,6 +1980,8 @@ RU: Применяет policy-rules и проверяет health. При оши if out: self._append_app_log(out) self._set_action_status(f"Stopped scope: {unit}", ok=True) + self.refresh_running_scopes(quiet=True) + self.refresh_app_profiles(quiet=True) return self._append_app_log(f"[app] stop failed: rc={p.returncode}") @@ -1995,6 +2000,8 @@ RU: Применяет policy-rules и проверяет health. При оши if out2: self._append_app_log(out2) self._set_action_status(f"Killed scope: {unit}", ok=True) + self.refresh_running_scopes(quiet=True) + self.refresh_app_profiles(quiet=True) return self._append_app_log(f"[app] kill failed: rc={p2.returncode}") @@ -2034,6 +2041,7 @@ RU: Применяет policy-rules и проверяет health. При оши QMessageBox.critical(self, "Unmark error", res.message or "unmark failed") self.refresh_appmarks_counts() + self.refresh_app_profiles(quiet=True) self._safe(work, title="Unmark error") @@ -2065,6 +2073,8 @@ RU: Применяет policy-rules и проверяет health. При оши ) self.refresh_appmarks_counts() + self.refresh_appmarks_items(quiet=True) + self.refresh_app_profiles(quiet=True) self._safe(work, title="Clear app marks error") @@ -2291,6 +2301,8 @@ RU: Применяет policy-rules и проверяет health. При оши self.refresh_running_scopes() self.refresh_appmarks_counts() + self.refresh_appmarks_items(quiet=True) + self.refresh_app_profiles(quiet=True) self._set_action_status(f"Stopped units: {len(infos)}", ok=True) self._safe(work, title="Stop selected units error") @@ -2342,6 +2354,8 @@ RU: Применяет policy-rules и проверяет health. При оши self.refresh_running_scopes() self.refresh_appmarks_counts() + self.refresh_appmarks_items(quiet=True) + self.refresh_app_profiles(quiet=True) self._set_action_status(f"Cleanup done: stopped={stopped}/{len(units)}", ok=True) self._safe(work, title="Cleanup units error")