Change how the AppCoordinator is initialized

This commit is contained in:
Maurice Parker 2019-07-19 11:59:08 -05:00
parent dd8c70f558
commit 11d74372b1
2 changed files with 5 additions and 10 deletions

View File

@ -182,7 +182,7 @@ class AppCoordinator: UndoableCommandRunner {
return appDelegate.unreadCount > 0 return appDelegate.unreadCount > 0
} }
init() { init(_ rootSplitViewController: UISplitViewController) {
for section in treeController.rootNode.childNodes { for section in treeController.rootNode.childNodes {
expandedNodes.append(section) expandedNodes.append(section)
@ -200,10 +200,7 @@ class AppCoordinator: UndoableCommandRunner {
NotificationCenter.default.addObserver(self, selector: #selector(userDefaultsDidChange(_:)), name: UserDefaults.didChangeNotification, object: nil) NotificationCenter.default.addObserver(self, selector: #selector(userDefaultsDidChange(_:)), name: UserDefaults.didChangeNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(accountDidDownloadArticles(_:)), name: .AccountDidDownloadArticles, object: nil) NotificationCenter.default.addObserver(self, selector: #selector(accountDidDownloadArticles(_:)), name: .AccountDidDownloadArticles, object: nil)
} self.rootSplitViewController = rootSplitViewController
func start() -> UIViewController {
rootSplitViewController = (UIStoryboard.main.instantiateInitialViewController() as! UISplitViewController)
rootSplitViewController.delegate = self rootSplitViewController.delegate = self
masterNavigationController = (rootSplitViewController.viewControllers.first as! UINavigationController) masterNavigationController = (rootSplitViewController.viewControllers.first as! UINavigationController)
@ -213,7 +210,6 @@ class AppCoordinator: UndoableCommandRunner {
let detailNavigationController = (rootSplitViewController.viewControllers.last as! UINavigationController) let detailNavigationController = (rootSplitViewController.viewControllers.last as! UINavigationController)
detailNavigationController.topViewController!.navigationItem.leftBarButtonItem = rootSplitViewController.displayModeButtonItem detailNavigationController.topViewController!.navigationItem.leftBarButtonItem = rootSplitViewController.displayModeButtonItem
return rootSplitViewController
} }
// MARK: Notifications // MARK: Notifications

View File

@ -10,16 +10,15 @@ import UIKit
class SceneDelegate: UIResponder, UIWindowSceneDelegate { class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var coordinator = AppCoordinator()
var window: UIWindow? var window: UIWindow?
var coordinator: AppCoordinator?
// UIWindowScene delegate // UIWindowScene delegate
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
window!.tintColor = AppAssets.netNewsWireBlueColor window!.tintColor = AppAssets.netNewsWireBlueColor
window!.rootViewController = coordinator.start() coordinator = AppCoordinator(window!.rootViewController as! UISplitViewController)
// if let userActivity = connectionOptions.userActivities.first ?? session.stateRestorationActivity { // if let userActivity = connectionOptions.userActivities.first ?? session.stateRestorationActivity {
// if !configure(window: window, with: userActivity) { // if !configure(window: window, with: userActivity) {