Skip to content

fix(onboarding): open Settings via SwiftUI openSettings action#54

Merged
m-szymanska merged 1 commit into
developfrom
fix/mcp-setup-deeplink
Jul 6, 2026
Merged

fix(onboarding): open Settings via SwiftUI openSettings action#54
m-szymanska merged 1 commit into
developfrom
fix/mcp-setup-deeplink

Conversation

@m-szymanska

Copy link
Copy Markdown
Contributor

Bug (caught in runtime smoke of #53)

The MCP setup prompt now renders (#53), but clicking Set up MCP servers did nothing: the view model routed through NSApp.sendAction(Selector(("showSettingsWindow:"))), which has no responder in this accessory (LSUIElement) SwiftUI-lifecycle app.

Fix

  • The onboarding readiness view now uses the same canonical path as the tray and agent chat: @Environment(\.openSettings), called directly from the view.
  • The view model's dead AppKit routing becomes prepareMcpSettingsDeepLink(), which only arms SettingsDeepLink.pendingSection = .engine before the view invokes openSettings() — deep-link to the Engine section preserved, consumed in SettingsView.onAppear.
  • Swift-only, no Rust/bridge changes. "Skip for now" untouched (works).

Gates

cargo fmt --check / clippy -D warnings clean · debug and release builds BUILD SUCCEEDED.

🤖 Generated with Claude Code

…smoke)

The onboarding readiness step's 'Set up MCP servers' button routed through
OnboardingViewModel.openMcpSettings(), which called
NSApp.sendAction(showSettingsWindow:). In this accessory / LSUIElement app
that private selector has no responder, so the click did nothing.

Switch to the canonical path used by TrayMenuView / AgentChatView: the view
holds @Environment(\.openSettings) and calls it after the VM arms the
one-shot deep-link (SettingsDeepLink.pendingSection = .engine). The VM method
is renamed openMcpSettings() -> prepareMcpSettingsDeepLink() and no longer
touches AppKit (import dropped). The Settings scene activates the app and
orders its window front, above the wizard.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gemini-code-assist

Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@m-szymanska m-szymanska merged commit 8ebe53e into develop Jul 6, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant