diff --git a/Reader/SceneDelegate.swift b/Reader/SceneDelegate.swift index 1feccfc..8b32c5e 100644 --- a/Reader/SceneDelegate.swift +++ b/Reader/SceneDelegate.swift @@ -130,6 +130,13 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { window!.overrideUserInterfaceStyle = .dark } } + + func switchToAccount(_ account: LocalData.Account) { + LocalData.mostRecentAccountID = account.id + fervorController = FervorController(account: account) + createAppUI() + syncFromServer() + } } @@ -147,15 +154,6 @@ extension SceneDelegate: LoginViewControllerDelegate { } } -extension SceneDelegate: HomeViewControllerDelegate { - func switchToAccount(_ account: LocalData.Account) { - LocalData.mostRecentAccountID = account.id - fervorController = FervorController(account: account) - createAppUI() - syncFromServer() - } -} - #if targetEnvironment(macCatalyst) extension NSToolbarItem.Identifier { static let toggleItemRead = NSToolbarItem.Identifier("ToggleItemRead") diff --git a/Reader/Screens/AppSplitViewController.swift b/Reader/Screens/AppSplitViewController.swift index 2cbe311..d93fae2 100644 --- a/Reader/Screens/AppSplitViewController.swift +++ b/Reader/Screens/AppSplitViewController.swift @@ -49,6 +49,7 @@ class AppSplitViewController: UISplitViewController { setViewController(secondaryNav, for: .secondary) let home = HomeViewController(fervorController: fervorController) + home.delegate = self let nav = AppNavigationController(rootViewController: home) setViewController(nav, for: .compact) } @@ -61,3 +62,10 @@ extension AppSplitViewController: ItemsViewControllerDelegate { } } +extension AppSplitViewController: HomeViewControllerDelegate { + func switchToAccount(_ account: LocalData.Account) { + if let delegate = view.window?.windowScene?.delegate as? SceneDelegate { + delegate.switchToAccount(account) + } + } +}