From 9568c7f9808dcf08c81401dcbc628309fbf4071e Mon Sep 17 00:00:00 2001 From: Roopesh Chander Date: Fri, 9 Nov 2018 19:29:34 +0530 Subject: [PATCH] VPN: Refresh tunnel statuses when app gets to the foreground Because the tunnel could've be activated from iOS Settings now --- WireGuard/WireGuard/UI/iOS/AppDelegate.swift | 4 ++++ .../UI/iOS/TunnelsListTableViewController.swift | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/WireGuard/WireGuard/UI/iOS/AppDelegate.swift b/WireGuard/WireGuard/UI/iOS/AppDelegate.swift index 4e09650..fabdae9 100644 --- a/WireGuard/WireGuard/UI/iOS/AppDelegate.swift +++ b/WireGuard/WireGuard/UI/iOS/AppDelegate.swift @@ -37,4 +37,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate { mainVC?.tunnelsListVC?.importFromFile(url: url) return true } + + func applicationDidBecomeActive(_ application: UIApplication) { + mainVC?.tunnelsListVC?.refreshTunnelConnectionStatuses() + } } diff --git a/WireGuard/WireGuard/UI/iOS/TunnelsListTableViewController.swift b/WireGuard/WireGuard/UI/iOS/TunnelsListTableViewController.swift index d40eef7..a9d858e 100644 --- a/WireGuard/WireGuard/UI/iOS/TunnelsListTableViewController.swift +++ b/WireGuard/WireGuard/UI/iOS/TunnelsListTableViewController.swift @@ -223,6 +223,16 @@ class TunnelsListTableViewController: UIViewController { } } } + + func refreshTunnelConnectionStatuses() { + if let tunnelsManager = tunnelsManager { + tunnelsManager.refreshConnectionStatuses() + } else { + onTunnelsManagerReady = { tunnelsManager in + tunnelsManager.refreshConnectionStatuses() + } + } + } } // MARK: UIDocumentPickerDelegate