import SwiftUI import FlixyDesign import PlexKit @main struct FlixyApp: App { /// Leben hier, nicht in einer View: sie gelten für die gesamte App, und /// ein Neuaufbau der Wurzelansicht darf weder die Anmeldung noch die /// eingestellte Farbe zurücksetzen. @State private var theme = FlixyTheme() @State private var session: FlixySession @State private var playback = PlaybackCoordinator() init() { let identity = PlexClientIdentity.current( product: Branding.plexProduct, version: Branding.version ) _session = State(initialValue: FlixySession( identity: identity, tokenStore: KeychainTokenStore(service: Branding.keychainService) )) } var body: some Scene { WindowGroup { RootView() .environment(session) .environment(playback) .environment(theme) .flixyAccent(theme) // Der eigentliche Schalter für „nur dunkel" steht in der // Info.plist (UIUserInterfaceStyle). Diese Zeile ist die // Absicherung für SwiftUI-Vorschauen, die sie nicht lesen. .preferredColorScheme(.dark) .tint(theme.accentColor) } } }