LiveTV as root

This commit is contained in:
jhays 2021-10-26 21:10:17 -05:00
parent b7fd00702f
commit 25ec19b1fe
3 changed files with 8 additions and 7 deletions

View File

@ -11,6 +11,7 @@ import Foundation
import SwiftUI import SwiftUI
struct LibraryListView: View { struct LibraryListView: View {
@EnvironmentObject var mainCoordinator: MainCoordinator.Router
@EnvironmentObject var libraryListRouter: LibraryListCoordinator.Router @EnvironmentObject var libraryListRouter: LibraryListCoordinator.Router
@StateObject var viewModel = LibraryListViewModel() @StateObject var viewModel = LibraryListViewModel()
@ -24,7 +25,7 @@ struct LibraryListView: View {
} else { } else {
Button() { Button() {
if library.collectionType == "livetv" { if library.collectionType == "livetv" {
self.libraryListRouter.route(to: \.liveTvTabs) self.mainCoordinator.root(\.liveTV)
} else { } else {
self.libraryListRouter.route(to: \.library, (viewModel: LibraryViewModel(), title: library.name ?? "")) self.libraryListRouter.route(to: \.library, (viewModel: LibraryViewModel(), title: library.name ?? ""))
} }

View File

@ -18,7 +18,6 @@ final class LibraryListCoordinator: NavigationCoordinatable {
@Root var start = makeStart @Root var start = makeStart
@Route(.push) var search = makeSearch @Route(.push) var search = makeSearch
@Route(.push) var library = makeLibrary @Route(.push) var library = makeLibrary
@Route(.modal) var liveTvTabs = makeLiveTvTabs
let viewModel: LibraryListViewModel let viewModel: LibraryListViewModel
@ -34,10 +33,6 @@ final class LibraryListCoordinator: NavigationCoordinatable {
SearchCoordinator(viewModel: viewModel) SearchCoordinator(viewModel: viewModel)
} }
func makeLiveTvTabs() -> LiveTVTabCoordinator {
LiveTVTabCoordinator()
}
@ViewBuilder @ViewBuilder
func makeStart() -> some View { func makeStart() -> some View {
LibraryListView(viewModel: self.viewModel) LibraryListView(viewModel: self.viewModel)

View File

@ -17,6 +17,7 @@ final class MainCoordinator: NavigationCoordinatable {
@Root var mainTab = makeMainTab @Root var mainTab = makeMainTab
@Root var serverList = makeServerList @Root var serverList = makeServerList
@Root var liveTV = makeLiveTV
init() { init() {
if SessionManager.main.currentLogin != nil { if SessionManager.main.currentLogin != nil {
@ -51,4 +52,8 @@ final class MainCoordinator: NavigationCoordinatable {
func makeServerList() -> NavigationViewCoordinator<ServerListCoordinator> { func makeServerList() -> NavigationViewCoordinator<ServerListCoordinator> {
NavigationViewCoordinator(ServerListCoordinator()) NavigationViewCoordinator(ServerListCoordinator())
} }
func makeLiveTV() -> LiveTVTabCoordinator {
LiveTVTabCoordinator()
}
} }