From 57038c590e766ed86e9202f71199c7453e7f66c9 Mon Sep 17 00:00:00 2001 From: Dave Nicolson Date: Sun, 10 Sep 2023 20:08:42 +0200 Subject: [PATCH] Fix tvOS settings icon alignment --- Shared/Settings/SettingsView.swift | 32 +++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/Shared/Settings/SettingsView.swift b/Shared/Settings/SettingsView.swift index 933c9b1c..3ea35815 100644 --- a/Shared/Settings/SettingsView.swift +++ b/Shared/Settings/SettingsView.swift @@ -119,6 +119,20 @@ struct SettingsView: View { #endif } + struct SettingsLabel: LabelStyle { + func makeBody(configuration: Configuration) -> some View { + #if os(tvOS) + Label { + configuration.title.padding(.leading, 10) + } icon: { + configuration.icon + } + #else + Label(configuration) + #endif + } + } + #if !os(macOS) var settingsList: some View { List { @@ -141,51 +155,51 @@ struct SettingsView: View { NavigationLink { BrowsingSettings() } label: { - Label("Browsing", systemImage: "list.and.film") + Label("Browsing", systemImage: "list.and.film").labelStyle(SettingsLabel()) } NavigationLink { PlayerSettings() } label: { - Label("Player", systemImage: "play.rectangle") + Label("Player", systemImage: "play.rectangle").labelStyle(SettingsLabel()) } NavigationLink { PlayerControlsSettings() } label: { - Label("Controls", systemImage: "hand.tap") + Label("Controls", systemImage: "hand.tap").labelStyle(SettingsLabel()) } NavigationLink { QualitySettings() } label: { - Label("Quality", systemImage: "4k.tv") + Label("Quality", systemImage: "4k.tv").labelStyle(SettingsLabel()) } NavigationLink { HistorySettings() } label: { - Label("History", systemImage: "clock.arrow.circlepath") + Label("History", systemImage: "clock.arrow.circlepath").labelStyle(SettingsLabel()) } if !accounts.isEmpty { NavigationLink { SponsorBlockSettings() } label: { - Label("SponsorBlock", systemImage: "dollarsign.circle") + Label("SponsorBlock", systemImage: "dollarsign.circle").labelStyle(SettingsLabel()) } } NavigationLink { LocationsSettings() } label: { - Label("Locations", systemImage: "globe") + Label("Locations", systemImage: "globe").labelStyle(SettingsLabel()) } NavigationLink { AdvancedSettings() } label: { - Label("Advanced", systemImage: "wrench.and.screwdriver") + Label("Advanced", systemImage: "wrench.and.screwdriver").labelStyle(SettingsLabel()) } } @@ -193,7 +207,7 @@ struct SettingsView: View { NavigationLink { Help() } label: { - Label("Help", systemImage: "questionmark.circle") + Label("Help", systemImage: "questionmark.circle").labelStyle(SettingsLabel()) } }