diff --git a/main/Base.lproj/Main.storyboard b/main/Base.lproj/Main.storyboard index 3a95315..d943c7d 100644 --- a/main/Base.lproj/Main.storyboard +++ b/main/Base.lproj/Main.storyboard @@ -339,7 +339,7 @@ - + @@ -394,7 +394,7 @@ - + diff --git a/main/Extensions/View.swift b/main/Extensions/View.swift index cdb52cb..a3a2ed9 100644 --- a/main/Extensions/View.swift +++ b/main/Extensions/View.swift @@ -36,3 +36,9 @@ extension UIEdgeInsets { self.init(top: top ?? all, left: left ?? all, bottom: bottom ?? all, right: right ?? all) } } + +extension UIStoryboard { + func load(_ identifier: String) -> T { + instantiateViewController(withIdentifier: identifier) as! T + } +} diff --git a/main/Requests/Analysis/VCAnalysisBar.swift b/main/Requests/Analysis/VCAnalysisBar.swift index 26444b0..cc4f75e 100644 --- a/main/Requests/Analysis/VCAnalysisBar.swift +++ b/main/Requests/Analysis/VCAnalysisBar.swift @@ -49,7 +49,7 @@ class VCAnalysisBar: UIViewController, UITabBarDelegate { private func openCoOccurrence() { guard let delegate = parent as? AnalysisBarDelegate, - let vc = storyboard?.instantiateViewController(withIdentifier: "IBCoOccurrence") as? VCCoOccurrence else { + let vc: VCCoOccurrence = storyboard?.load("IBCoOccurrence") else { return } let info = delegate.analysisBarWillOpenCoOccurrence() diff --git a/main/Requests/TVCDomains.swift b/main/Requests/TVCDomains.swift index 479e0e8..f513625 100644 --- a/main/Requests/TVCDomains.swift +++ b/main/Requests/TVCDomains.swift @@ -25,11 +25,20 @@ class TVCDomains: UITableViewController, UISearchBarDelegate, GroupedDomainDataS } } + func pushOpen(domain: String) { + let A: TVCHosts = storyboard!.load("requestsHosts") + let B: TVCHostDetails = storyboard!.load("requestsOccurrences") + A.parentDomain = domain.extractDomain() + B.fullDomain = domain + navigationController?.pushViewController(A, animated: false) + navigationController?.pushViewController(B, animated: false) + } + // MARK: - Filter @IBAction private func filterButtonTapped(_ sender: UIBarButtonItem) { - let vc = self.storyboard!.instantiateViewController(withIdentifier: "domainFilter") + let vc = storyboard!.load("domainFilter") vc.modalPresentationStyle = .custom if #available(iOS 13.0, *) { vc.isModalInPresentation = true diff --git a/main/TBCMain.swift b/main/TBCMain.swift index 40ef274..f9f2e99 100644 --- a/main/TBCMain.swift +++ b/main/TBCMain.swift @@ -108,9 +108,8 @@ extension TBCMain: UNUserNotificationCenterDelegate { case PushNotification.Identifier.CantStopMeNowReminder.rawValue: (openTab(2) as! TVCSettings).openRestartVPNSettings() //case PushNotification.Identifier.RestInPeaceTombstoneReminder // only badge - default: // domain notification - // TODO: open specific domain? - openTab(0) // open Requests tab + case let x: // domain notification + (openTab(0) as! TVCDomains).pushOpen(domain: x) // open requests tab } completionHandler() }