feat(settings): add dark/light/system appearance mode toggle
- Add AppearanceMode enum with system, light, and dark options - Add AppearanceManager singleton to persist user preference - Add appearance section in SettingsView with icon and description - Apply preferredColorScheme at app root for immediate effect - Include appearance mode in reset to defaults Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -82,6 +82,7 @@ struct BootstrappedContentView: View {
|
||||
@State private var hasCompletedInitialSync = false
|
||||
@State private var showOnboardingPaywall = false
|
||||
@State private var deepLinkHandler = DeepLinkHandler.shared
|
||||
@State private var appearanceManager = AppearanceManager.shared
|
||||
|
||||
private var shouldShowOnboardingPaywall: Bool {
|
||||
!UserDefaults.standard.bool(forKey: "hasSeenOnboardingPaywall") && !StoreManager.shared.isPro
|
||||
@@ -142,6 +143,7 @@ struct BootstrappedContentView: View {
|
||||
break
|
||||
}
|
||||
}
|
||||
.preferredColorScheme(appearanceManager.currentMode.colorScheme)
|
||||
}
|
||||
|
||||
@MainActor
|
||||
|
||||
Reference in New Issue
Block a user