From 71dd956f18cda7eaf84ddb3330c762734d4b3747 Mon Sep 17 00:00:00 2001 From: Arkadiusz Fal Date: Thu, 16 Apr 2026 19:18:49 +0200 Subject: [PATCH] Show left-column icon and title for Home and Sidebar settings on tvOS --- Yattee/Views/Home/HomeSettingsView.swift | 2 ++ .../LayoutNavigationSettingsView.swift | 18 +++++++++++++++++- .../Views/Settings/SidebarSettingsView.swift | 2 ++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/Yattee/Views/Home/HomeSettingsView.swift b/Yattee/Views/Home/HomeSettingsView.swift index 1d31a9e2..957b1ef5 100644 --- a/Yattee/Views/Home/HomeSettingsView.swift +++ b/Yattee/Views/Home/HomeSettingsView.swift @@ -43,7 +43,9 @@ struct HomeSettingsView: View { #if os(iOS) .environment(\.editMode, isEditMode ? .constant(.active) : .constant(.inactive)) #endif + #if !os(tvOS) .navigationTitle(String(localized: "home.settings.title")) + #endif #if os(iOS) .navigationBarTitleDisplayMode(.inline) #endif diff --git a/Yattee/Views/Settings/LayoutNavigationSettingsView.swift b/Yattee/Views/Settings/LayoutNavigationSettingsView.swift index 64bf120b..00dd5d89 100644 --- a/Yattee/Views/Settings/LayoutNavigationSettingsView.swift +++ b/Yattee/Views/Settings/LayoutNavigationSettingsView.swift @@ -79,7 +79,14 @@ private struct CustomizationSection: View { var body: some View { Section { NavigationLink { + #if os(tvOS) + TVSidebarDetailContainer( + systemImage: SidebarItem.home.systemImage, + title: String(localized: "settings.appearance.home.customize") + ) { HomeSettingsView() } + #else HomeSettingsView() + #endif } label: { Label(String(localized: "settings.appearance.home.customize"), systemImage: SidebarItem.home.systemImage) } @@ -101,12 +108,21 @@ private struct CustomizationSection: View { } #endif - #if os(macOS) || os(tvOS) + #if os(macOS) NavigationLink { SidebarSettingsView() } label: { Label(String(localized: "settings.sidebar.title"), systemImage: "sidebar.leading") } + #elseif os(tvOS) + NavigationLink { + TVSidebarDetailContainer( + systemImage: "sidebar.leading", + title: String(localized: "settings.sidebar.title") + ) { SidebarSettingsView() } + } label: { + Label(String(localized: "settings.sidebar.title"), systemImage: "sidebar.leading") + } #endif } } diff --git a/Yattee/Views/Settings/SidebarSettingsView.swift b/Yattee/Views/Settings/SidebarSettingsView.swift index 7ccbaaa1..a9c1d2ff 100644 --- a/Yattee/Views/Settings/SidebarSettingsView.swift +++ b/Yattee/Views/Settings/SidebarSettingsView.swift @@ -136,7 +136,9 @@ struct SidebarSettingsView: View { #if os(iOS) .environment(\.editMode, .constant(.active)) #endif + #if !os(tvOS) .navigationTitle(String(localized: "settings.sidebar.title")) + #endif #if os(iOS) .navigationBarTitleDisplayMode(.inline) #endif