aboutsummaryrefslogtreecommitdiffstats
path: root/WireGuard
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--WireGuard/WireGuard/UI/macOS/AppDelegate.swift6
-rw-r--r--WireGuard/WireGuard/UI/macOS/TunnelsTracker.swift2
2 files changed, 7 insertions, 1 deletions
diff --git a/WireGuard/WireGuard/UI/macOS/AppDelegate.swift b/WireGuard/WireGuard/UI/macOS/AppDelegate.swift
index 76ac000..5546eef 100644
--- a/WireGuard/WireGuard/UI/macOS/AppDelegate.swift
+++ b/WireGuard/WireGuard/UI/macOS/AppDelegate.swift
@@ -40,6 +40,12 @@ class AppDelegate: NSObject, NSApplicationDelegate {
self.statusItemController = statusItemController
}
}
+
+ func applicationWillTerminate(_ notification: Notification) {
+ if let currentTunnel = tunnelsTracker?.currentTunnel {
+ tunnelsManager?.startDeactivation(of: currentTunnel)
+ }
+ }
}
extension AppDelegate: StatusMenuWindowDelegate {
diff --git a/WireGuard/WireGuard/UI/macOS/TunnelsTracker.swift b/WireGuard/WireGuard/UI/macOS/TunnelsTracker.swift
index 3d29b02..9c93186 100644
--- a/WireGuard/WireGuard/UI/macOS/TunnelsTracker.swift
+++ b/WireGuard/WireGuard/UI/macOS/TunnelsTracker.swift
@@ -16,7 +16,7 @@ class TunnelsTracker {
private var tunnelsManager: TunnelsManager
private var tunnelStatusObservers = [AnyObject]()
- private var currentTunnel: TunnelContainer? {
+ private(set) var currentTunnel: TunnelContainer? {
didSet {
statusMenu?.currentTunnel = currentTunnel
statusItemController?.currentTunnel = currentTunnel