// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved. import Foundation import SessionUtilitiesKit import UIKit @objc public extension UIApplication { var frontmostViewControllerIgnoringAlerts: UIViewController? { return findFrontmostViewController(ignoringAlerts: true) } var frontmostViewController: UIViewController? { return findFrontmostViewController(ignoringAlerts: false) } internal func findFrontmostViewController(ignoringAlerts: Bool) -> UIViewController? { guard let window: UIWindow = CurrentAppContext().mainWindow else { return nil } guard let viewController: UIViewController = window.rootViewController else { owsFailDebug("Missing root view controller.") return nil } return viewController.findFrontmostViewController(ignoringAlerts: ignoringAlerts) } func openSystemSettings() { open(URL(string: UIApplication.openSettingsURLString)!, options: [:], completionHandler: nil) } }