From 5ef40e24bf0a5cd63941d0558fea18a321ac5586 Mon Sep 17 00:00:00 2001 From: Arkadiusz Fal Date: Fri, 17 Apr 2026 03:48:18 +0200 Subject: [PATCH] Remove channel card background on tvOS and fix grid focus clipping --- Yattee/Views/Components/ChannelCardGridView.swift | 6 ++++-- Yattee/Views/Components/ViewOptionsSheet.swift | 3 +++ .../Views/MediaBrowser/MediaBrowserViewOptionsSheet.swift | 6 ++++++ Yattee/Views/Subscriptions/ManageChannelsView.swift | 1 + Yattee/Views/Subscriptions/SubscriptionsView.swift | 6 ++++++ 5 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Yattee/Views/Components/ChannelCardGridView.swift b/Yattee/Views/Components/ChannelCardGridView.swift index 5e6f1a23..c7dfbcd6 100644 --- a/Yattee/Views/Components/ChannelCardGridView.swift +++ b/Yattee/Views/Components/ChannelCardGridView.swift @@ -72,8 +72,10 @@ struct ChannelCardGridView: View { .frame(maxWidth: .infinity) } .padding() - .background(.quaternary.opacity(0.3)) - .clipShape(RoundedRectangle(cornerRadius: 12)) + #if !os(tvOS) + .background(.quaternary.opacity(0.3)) + .clipShape(RoundedRectangle(cornerRadius: 12)) + #endif .contentShape(Rectangle()) } diff --git a/Yattee/Views/Components/ViewOptionsSheet.swift b/Yattee/Views/Components/ViewOptionsSheet.swift index 4de46cee..edba6ba2 100644 --- a/Yattee/Views/Components/ViewOptionsSheet.swift +++ b/Yattee/Views/Components/ViewOptionsSheet.swift @@ -82,6 +82,9 @@ struct ViewOptionsSheet: View { } } } + .scrollClipDisabled() + .padding(.horizontal, 40) + .padding(.vertical, 24) } #endif diff --git a/Yattee/Views/MediaBrowser/MediaBrowserViewOptionsSheet.swift b/Yattee/Views/MediaBrowser/MediaBrowserViewOptionsSheet.swift index 236ea5c6..821fd132 100644 --- a/Yattee/Views/MediaBrowser/MediaBrowserViewOptionsSheet.swift +++ b/Yattee/Views/MediaBrowser/MediaBrowserViewOptionsSheet.swift @@ -43,10 +43,16 @@ struct MediaBrowserViewOptionsSheet: View { .listRowInsets(EdgeInsets(top: 8, leading: 0, bottom: 8, trailing: 0)) } } + #if os(tvOS) + .scrollClipDisabled() + .padding(.horizontal, 40) + .padding(.vertical, 24) + #else .navigationTitle("mediaBrowser.viewOptions.title") #if os(iOS) .navigationBarTitleDisplayMode(.inline) #endif + #endif .toolbar { ToolbarItem(placement: .confirmationAction) { Button(role: .cancel) { diff --git a/Yattee/Views/Subscriptions/ManageChannelsView.swift b/Yattee/Views/Subscriptions/ManageChannelsView.swift index 4251d0f5..0a9b03bc 100644 --- a/Yattee/Views/Subscriptions/ManageChannelsView.swift +++ b/Yattee/Views/Subscriptions/ManageChannelsView.swift @@ -386,6 +386,7 @@ struct ManageChannelsView: View { } } } + .scrollClipDisabled() } // MARK: - Helpers diff --git a/Yattee/Views/Subscriptions/SubscriptionsView.swift b/Yattee/Views/Subscriptions/SubscriptionsView.swift index bdab7b48..fe1d74a0 100644 --- a/Yattee/Views/Subscriptions/SubscriptionsView.swift +++ b/Yattee/Views/Subscriptions/SubscriptionsView.swift @@ -323,10 +323,16 @@ struct SubscriptionsView: View { } #endif } + #if os(tvOS) + .scrollClipDisabled() + .padding(.horizontal, 40) + .padding(.vertical, 24) + #else .navigationTitle(String(localized: "subscriptions.viewOptions.title")) #if os(iOS) .navigationBarTitleDisplayMode(.inline) #endif + #endif } .presentationDetents([.height(420), .large]) .presentationDragIndicator(.visible)