Force plain list style on tvOS and hide setting from appearance

Inset/grouped list style doesn't work well with tvOS focus effects.
Always return .plain on tvOS and hide the list style picker from
appearance settings.
This commit is contained in:
Arkadiusz Fal
2026-04-13 23:45:27 +02:00
parent 8253b1a247
commit f4605e7390
2 changed files with 6 additions and 0 deletions

View File

@@ -208,6 +208,9 @@ extension SettingsManager {
/// Default is plain. Synced per-platform via iCloud. /// Default is plain. Synced per-platform via iCloud.
var listStyle: VideoListStyle { var listStyle: VideoListStyle {
get { get {
#if os(tvOS)
return .plain
#else
if let cached = _listStyle { return cached } if let cached = _listStyle { return cached }
guard let rawValue = string(for: .listStyle), guard let rawValue = string(for: .listStyle),
let style = VideoListStyle(rawValue: rawValue) else { let style = VideoListStyle(rawValue: rawValue) else {
@@ -215,6 +218,7 @@ extension SettingsManager {
} }
_listStyle = style _listStyle = style
return style return style
#endif
} }
set { set {
_listStyle = newValue _listStyle = newValue

View File

@@ -29,7 +29,9 @@ struct AppearanceSettingsView: View {
#endif #endif
// List style section // List style section
#if !os(tvOS)
ListStyleSection(settings: settings) ListStyleSection(settings: settings)
#endif
// Thumbnail section // Thumbnail section
ThumbnailSection(settings: settings) ThumbnailSection(settings: settings)