From 8f54b5d79fd0b7ad54645b6545fedf4c5a4dbff4 Mon Sep 17 00:00:00 2001 From: Elliot Date: Mon, 27 Apr 2026 00:33:38 +0000 Subject: [PATCH] refactor(onboarding): Use shared HostManager in OnboardingView --- Sources/ClawsyMac/ClawsyApp.swift | 8 ++++++++ Sources/ClawsyMac/Onboarding/OnboardingView.swift | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Sources/ClawsyMac/ClawsyApp.swift b/Sources/ClawsyMac/ClawsyApp.swift index be927c1..bdb3a91 100644 --- a/Sources/ClawsyMac/ClawsyApp.swift +++ b/Sources/ClawsyMac/ClawsyApp.swift @@ -745,6 +745,12 @@ class AppDelegate: NSObject, NSApplicationDelegate, UNUserNotificationCenterDele existing.makeKeyAndOrderFront(nil) return } + + guard let hostManager = self.hostManager else { + os_log("Onboarding skipped: hostManager not initialized", log: OSLog.default, type: .error) + return + } + let window = NSWindow( contentRect: NSRect(x: 0, y: 0, width: 460, height: 540), styleMask: [.titled, .closable], backing: .buffered, defer: false) @@ -763,6 +769,8 @@ class AppDelegate: NSObject, NSApplicationDelegate, UNUserNotificationCenterDele onboardingCompleted: onboardingBinding, onImportSetupCode: { [weak self] code in self?.handleSetupCode(code) ?? false } ) + .environmentObject(hostManager) + window.contentView = NSHostingView(rootView: view) window.makeKeyAndOrderFront(nil) NSApp.activate(ignoringOtherApps: true) diff --git a/Sources/ClawsyMac/Onboarding/OnboardingView.swift b/Sources/ClawsyMac/Onboarding/OnboardingView.swift index aef177b..02d72f3 100644 --- a/Sources/ClawsyMac/Onboarding/OnboardingView.swift +++ b/Sources/ClawsyMac/Onboarding/OnboardingView.swift @@ -13,7 +13,7 @@ struct OnboardingView: View { @State private var currentPage: OnboardingPage = .welcome @ObservedObject private var permissionMonitor = PermissionMonitor.shared - @StateObject private var hostManager = HostManager() + @EnvironmentObject private var hostManager: HostManager // Connection fields @State private var setupCode = ""