mirror of
https://github.com/yattee/yattee.git
synced 2026-06-07 23:34:19 +00:00
Make Playback and Subtitles settings feel native on macOS
Add shared SettingsFormContainer/SettingsFormSection helpers that mirror the Sources screen styling (uppercase subheadline headers, divider- bracketed cards, ScrollView + LazyVStack) on macOS while keeping the standard Form/Section layout on iOS and tvOS. Convert PlaybackSettingsView and SubtitlesSettingsView to the new helpers, wrap the macOS Settings detail pane in a NavigationStack so NavigationLink pushes (Subtitles Appearance) render in the detail column, fold the macOS-only Player Mode + Auto-resize player controls into the Behavior section, and drop the unused queue footer.
This commit is contained in:
@@ -41,33 +41,35 @@ struct SettingsView: View {
|
||||
.navigationSplitViewColumnWidth(min: 180, ideal: 200)
|
||||
} detail: {
|
||||
if appEnvironment != nil {
|
||||
Group {
|
||||
switch selectedSection {
|
||||
case .sources:
|
||||
SourcesListView()
|
||||
case .icloud:
|
||||
iCloudSettingsView()
|
||||
case .appearance:
|
||||
AppearanceSettingsView()
|
||||
case .layoutNavigation:
|
||||
LayoutNavigationSettingsView()
|
||||
case .playback:
|
||||
PlaybackSettingsView()
|
||||
case .notifications:
|
||||
NotificationSettingsView()
|
||||
case .downloads:
|
||||
DownloadSettingsView()
|
||||
case .privacy:
|
||||
PrivacySettingsView()
|
||||
case .youtubeEnhancements:
|
||||
YouTubeEnhancementsSettingsView()
|
||||
case .advanced:
|
||||
AdvancedSettingsView()
|
||||
case .about:
|
||||
AboutView()
|
||||
case .none:
|
||||
Text(String(localized: "settings.placeholder.selectSection"))
|
||||
.frame(maxWidth: .infinity, maxHeight: .infinity)
|
||||
NavigationStack {
|
||||
Group {
|
||||
switch selectedSection {
|
||||
case .sources:
|
||||
SourcesListView()
|
||||
case .icloud:
|
||||
iCloudSettingsView()
|
||||
case .appearance:
|
||||
AppearanceSettingsView()
|
||||
case .layoutNavigation:
|
||||
LayoutNavigationSettingsView()
|
||||
case .playback:
|
||||
PlaybackSettingsView()
|
||||
case .notifications:
|
||||
NotificationSettingsView()
|
||||
case .downloads:
|
||||
DownloadSettingsView()
|
||||
case .privacy:
|
||||
PrivacySettingsView()
|
||||
case .youtubeEnhancements:
|
||||
YouTubeEnhancementsSettingsView()
|
||||
case .advanced:
|
||||
AdvancedSettingsView()
|
||||
case .about:
|
||||
AboutView()
|
||||
case .none:
|
||||
Text(String(localized: "settings.placeholder.selectSection"))
|
||||
.frame(maxWidth: .infinity, maxHeight: .infinity)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user