Add settings for selecting visible sections (fixes #16)

This commit is contained in:
Arkadiusz Fal
2021-12-01 12:22:19 +01:00
parent ff83abd103
commit e61d1dfe2e
11 changed files with 265 additions and 129 deletions

View File

@@ -8,29 +8,34 @@ struct TVNavigationView: View {
@EnvironmentObject<RecentsModel> private var recents
@EnvironmentObject<SearchModel> private var search
@Default(.visibleSections) private var visibleSections
var body: some View {
TabView(selection: navigation.tabSelectionBinding) {
FavoritesView()
.tabItem { Text("Favorites") }
.tag(TabSelection.favorites)
if visibleSections.contains(.favorites) {
FavoritesView()
.tabItem { Text("Favorites") }
.tag(TabSelection.favorites)
}
if accounts.app.supportsSubscriptions {
if visibleSections.contains(.subscriptions), accounts.app.supportsSubscriptions {
SubscriptionsView()
.tabItem { Text("Subscriptions") }
.tag(TabSelection.subscriptions)
}
if accounts.app.supportsPopular {
if visibleSections.contains(.popular), accounts.app.supportsPopular {
PopularView()
.tabItem { Text("Popular") }
.tag(TabSelection.popular)
}
TrendingView()
.tabItem { Text("Trending") }
.tag(TabSelection.trending)
if visibleSections.contains(.trending) {
TrendingView()
.tabItem { Text("Trending") }
.tag(TabSelection.trending)
}
if accounts.app.supportsUserPlaylists {
if visibleSections.contains(.playlists), accounts.app.supportsUserPlaylists {
PlaylistsView()
.tabItem { Text("Playlists") }
.tag(TabSelection.playlists)