diff --git a/Tusker/Screens/Main/MainSplitViewController.swift b/Tusker/Screens/Main/MainSplitViewController.swift index a2f51f76..60425db7 100644 --- a/Tusker/Screens/Main/MainSplitViewController.swift +++ b/Tusker/Screens/Main/MainSplitViewController.swift @@ -115,6 +115,14 @@ class MainSplitViewController: UISplitViewController { } } + override func show(_ vc: UIViewController, sender: Any?) { + if traitCollection.horizontalSizeClass == .regular { + secondaryNavController.show(vc, sender: sender) + } else { + super.show(vc, sender: sender) + } + } + @objc func handleSidebarCommandTimelines() { sidebar.select(item: .tab(.timelines), animated: false) select(item: .tab(.timelines)) diff --git a/Tusker/Screens/Utilities/SplitNavigationController.swift b/Tusker/Screens/Utilities/SplitNavigationController.swift index 0d2c0a19..1953bf31 100644 --- a/Tusker/Screens/Utilities/SplitNavigationController.swift +++ b/Tusker/Screens/Utilities/SplitNavigationController.swift @@ -305,9 +305,11 @@ private class SplitSecondaryNavigationController: EnhancedNavigationViewControll } override func pushViewController(_ viewController: UIViewController, animated: Bool) { - super.pushViewController(viewController, animated: animated) + if viewControllers.isEmpty { + configureSecondarySplitCloseButton(for: viewController) + } - configureSecondarySplitCloseButton(for: viewControllers.first!) + super.pushViewController(viewController, animated: animated) } private func configureSecondarySplitCloseButton(for viewController: UIViewController) {