From 11d74372b14cbae170821906a84dcbfb2036489c Mon Sep 17 00:00:00 2001 From: Maurice Parker <mo@vincode.io> Date: Fri, 19 Jul 2019 11:59:08 -0500 Subject: [PATCH] Change how the AppCoordinator is initialized --- iOS/AppCoordinator.swift | 8 ++------ iOS/SceneDelegate.swift | 7 +++---- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/iOS/AppCoordinator.swift b/iOS/AppCoordinator.swift index 24aa8a088..f70c513dc 100644 --- a/iOS/AppCoordinator.swift +++ b/iOS/AppCoordinator.swift @@ -182,7 +182,7 @@ class AppCoordinator: UndoableCommandRunner { return appDelegate.unreadCount > 0 } - init() { + init(_ rootSplitViewController: UISplitViewController) { for section in treeController.rootNode.childNodes { 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(accountDidDownloadArticles(_:)), name: .AccountDidDownloadArticles, object: nil) - } - - func start() -> UIViewController { - rootSplitViewController = (UIStoryboard.main.instantiateInitialViewController() as! UISplitViewController) + self.rootSplitViewController = rootSplitViewController rootSplitViewController.delegate = self masterNavigationController = (rootSplitViewController.viewControllers.first as! UINavigationController) @@ -213,7 +210,6 @@ class AppCoordinator: UndoableCommandRunner { let detailNavigationController = (rootSplitViewController.viewControllers.last as! UINavigationController) detailNavigationController.topViewController!.navigationItem.leftBarButtonItem = rootSplitViewController.displayModeButtonItem - return rootSplitViewController } // MARK: Notifications diff --git a/iOS/SceneDelegate.swift b/iOS/SceneDelegate.swift index 253837f07..283b16e84 100644 --- a/iOS/SceneDelegate.swift +++ b/iOS/SceneDelegate.swift @@ -10,16 +10,15 @@ import UIKit class SceneDelegate: UIResponder, UIWindowSceneDelegate { - var coordinator = AppCoordinator() - var window: UIWindow? - + var coordinator: AppCoordinator? + // UIWindowScene delegate func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { window!.tintColor = AppAssets.netNewsWireBlueColor - window!.rootViewController = coordinator.start() + coordinator = AppCoordinator(window!.rootViewController as! UISplitViewController) // if let userActivity = connectionOptions.userActivities.first ?? session.stateRestorationActivity { // if !configure(window: window, with: userActivity) {