]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
UI: Keep on-demand rules even if on-demand is disabled
authorRoopesh Chander <roop@roopc.net>
Tue, 27 Jul 2021 20:40:45 +0000 (02:10 +0530)
committerRoopesh Chander <roop@roopc.net>
Tue, 27 Jul 2021 22:04:36 +0000 (03:34 +0530)
Signed-off-by: Roopesh Chander <roop@roopc.net>
Sources/WireGuardApp/Tunnel/ActivateOnDemandOption.swift
Sources/WireGuardApp/UI/ActivateOnDemandViewModel.swift

index 167feb75a290df8fefc1db12ff750cde58c10652..de717a8c53e8fc56bdaba8e3ce007111354a93a3 100644 (file)
@@ -46,7 +46,7 @@ extension ActivateOnDemandOption {
     }
 
     init(from tunnelProviderManager: NETunnelProviderManager) {
-        if tunnelProviderManager.isOnDemandEnabled, let onDemandRules = tunnelProviderManager.onDemandRules {
+        if let onDemandRules = tunnelProviderManager.onDemandRules {
             self = ActivateOnDemandOption.create(from: onDemandRules)
         } else {
             self = .off
index 121a1a6237d942ad38e9aa227c941c8320fd8423..7ddb215ea9d7093da67f19ebde3ec5875929c6a3 100644 (file)
@@ -51,20 +51,18 @@ class ActivateOnDemandViewModel {
 extension ActivateOnDemandViewModel {
     convenience init(tunnel: TunnelContainer) {
         self.init()
-        if tunnel.isActivateOnDemandEnabled {
-            switch tunnel.onDemandOption {
-            case .off:
-                break
-            case .wiFiInterfaceOnly(let onDemandSSIDOption):
-                isWiFiInterfaceEnabled = true
-                (ssidOption, selectedSSIDs) = ssidViewModel(from: onDemandSSIDOption)
-            case .nonWiFiInterfaceOnly:
-                isNonWiFiInterfaceEnabled = true
-            case .anyInterface(let onDemandSSIDOption):
-                isWiFiInterfaceEnabled = true
-                isNonWiFiInterfaceEnabled = true
-                (ssidOption, selectedSSIDs) = ssidViewModel(from: onDemandSSIDOption)
-            }
+        switch tunnel.onDemandOption {
+        case .off:
+            break
+        case .wiFiInterfaceOnly(let onDemandSSIDOption):
+            isWiFiInterfaceEnabled = true
+            (ssidOption, selectedSSIDs) = ssidViewModel(from: onDemandSSIDOption)
+        case .nonWiFiInterfaceOnly:
+            isNonWiFiInterfaceEnabled = true
+        case .anyInterface(let onDemandSSIDOption):
+            isWiFiInterfaceEnabled = true
+            isNonWiFiInterfaceEnabled = true
+            (ssidOption, selectedSSIDs) = ssidViewModel(from: onDemandSSIDOption)
         }
     }