mirror of
https://github.com/confirmedcode/Lockdown-iOS.git
synced 2025-12-21 12:14:02 +01:00
51 lines
1.9 KiB
Swift
51 lines
1.9 KiB
Swift
//
|
|
// MainTabBarViewController.swift
|
|
// Lockdown
|
|
//
|
|
// Created by Oleg Dreyman on 02.10.2020.
|
|
// Copyright © 2020 Confirmed Inc. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
final class MainTabBarController: UITabBarController {
|
|
|
|
var fireWallViewController: LDFirewallViewController? { viewControllers![0] as? LDFirewallViewController }
|
|
|
|
var vpnViewController: LDVpnViewController? { viewControllers![1] as? LDVpnViewController }
|
|
|
|
var configurationViewController: LDConfigurationViewController? { viewControllers![2] as? LDConfigurationViewController }
|
|
|
|
var accountViewController: AccountViewController? {
|
|
for viewController in viewControllers ?? [] {
|
|
if let navigationController = viewController as? UINavigationController,
|
|
let accountViewController = navigationController.viewControllers.first as? AccountViewController {
|
|
return accountViewController
|
|
}
|
|
}
|
|
return nil
|
|
}
|
|
|
|
var homeViewController: HomeViewController? {
|
|
if let homeVC = viewControllers?.first(where: { $0 is HomeViewController }) {
|
|
return homeVC as? HomeViewController
|
|
}
|
|
return nil
|
|
}
|
|
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
|
|
guard let homeViewController else { return }
|
|
homeViewController.feedbackFlow = FeedbackFlow(presentingViewController: homeViewController, purchaseHandler: homeViewController)
|
|
|
|
guard let accountViewController else { return }
|
|
accountViewController.feedbackFlow = FeedbackFlow(presentingViewController: accountViewController, purchaseHandler: homeViewController)
|
|
}
|
|
|
|
var accountTabBarButton: UIView? {
|
|
// this assumes that "Account" is the last tab. Change the code if this is no longer true
|
|
return tabBar.subviews.last(where: { String(describing: type(of: $0)) == "UITabBarButton" })
|
|
}
|
|
}
|