mirror of
https://github.com/yattee/yattee.git
synced 2025-11-13 13:48:48 +00:00
Improve tvOS settings UI styling and navigation
- Add TVOSPlainToggleStyle for cleaner toggle appearance on tvOS - Remove focus overlays from settings navigation links and buttons - Apply plain button and list styles across all settings screens - Implement custom system controls picker for tvOS to avoid focus overlay - Update SettingsPickerModifier with platform-specific styling 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -164,6 +164,7 @@ struct SettingsView: View {
|
||||
Text("Not Selected")
|
||||
}
|
||||
}
|
||||
.buttonStyle(.plain)
|
||||
}
|
||||
Divider()
|
||||
}
|
||||
@@ -175,30 +176,45 @@ struct SettingsView: View {
|
||||
} label: {
|
||||
Label("Browsing", systemImage: "list.and.film").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
|
||||
NavigationLink {
|
||||
PlayerSettings()
|
||||
} label: {
|
||||
Label("Player", systemImage: "play.rectangle").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
|
||||
NavigationLink {
|
||||
PlayerControlsSettings()
|
||||
} label: {
|
||||
Label("Controls", systemImage: "hand.tap").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
|
||||
NavigationLink {
|
||||
QualitySettings()
|
||||
} label: {
|
||||
Label("Quality", systemImage: "4k.tv").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
|
||||
NavigationLink {
|
||||
HistorySettings()
|
||||
} label: {
|
||||
Label("History", systemImage: "clock.arrow.circlepath").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
|
||||
if !accounts.isEmpty {
|
||||
NavigationLink {
|
||||
@@ -206,6 +222,9 @@ struct SettingsView: View {
|
||||
} label: {
|
||||
Label("SponsorBlock", systemImage: "dollarsign.circle").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
}
|
||||
|
||||
NavigationLink {
|
||||
@@ -213,12 +232,18 @@ struct SettingsView: View {
|
||||
} label: {
|
||||
Label("Locations", systemImage: "globe").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
|
||||
NavigationLink {
|
||||
AdvancedSettings()
|
||||
} label: {
|
||||
Label("Advanced", systemImage: "wrench.and.screwdriver").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
}
|
||||
#if os(tvOS)
|
||||
.padding(.horizontal, 20)
|
||||
@@ -232,6 +257,9 @@ struct SettingsView: View {
|
||||
} label: {
|
||||
Label("Help", systemImage: "questionmark.circle").labelStyle(SettingsLabel())
|
||||
}
|
||||
#if os(tvOS)
|
||||
.buttonStyle(.plain)
|
||||
#endif
|
||||
}
|
||||
#if os(tvOS)
|
||||
.padding(.horizontal, 20)
|
||||
@@ -287,6 +315,7 @@ struct SettingsView: View {
|
||||
Label("Import Settings", systemImage: "square.and.arrow.down")
|
||||
.labelStyle(SettingsLabel())
|
||||
}
|
||||
.buttonStyle(.plain)
|
||||
.padding(.horizontal, 20)
|
||||
#else
|
||||
Button(action: importSettings) {
|
||||
|
||||
Reference in New Issue
Block a user