Create RootSplitViewController in code rather than in storyboard.

This commit is contained in:
Brent Simmons
2025-02-02 18:08:13 -08:00
parent 903b0257a8
commit 08f21ca4b2
3 changed files with 30 additions and 7 deletions

View File

@@ -11,8 +11,35 @@ import Account
final class RootSplitViewController: UISplitViewController {
var coordinator: SceneCoordinator!
var coordinator: SceneCoordinator! {
didSet {
sidebarViewController.coordinator = coordinator
timelineViewController.coordinator = coordinator
articleViewController.coordinator = coordinator
}
}
private lazy var sidebarViewController = MainFeedViewController()
private lazy var timelineViewController = TimelineViewController()
private lazy var articleViewController = ArticleViewController()
init() {
super.init(style: .tripleColumn)
setViewController(self.sidebarViewController, for: .primary)
setViewController(self.timelineViewController, for: .supplementary)
setViewController(self.articleViewController, for: .secondary)
self.showsSecondaryOnlyButton = true
self.preferredDisplayMode = .oneBesideSecondary
self.preferredSplitBehavior = .displace
self.primaryBackgroundStyle = .sidebar
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override var prefersStatusBarHidden: Bool {
return coordinator.prefersStatusBarHidden
}