import UIKit import Combine import DependencyInjection public final class Window: UIWindow { // MARK: Injected @Dependency private var themeController: ThemeControlling // MARK: Properties private var cancellables = Set<AnyCancellable>() // MARK: Lifecycle public init() { super.init(frame: UIScreen.main.bounds) themeController.theme .sink { [unowned self] in overrideUserInterfaceStyle = $0.userInterfaceStyle } .store(in: &cancellables) } required init?(coder: NSCoder) { nil } }