Add preference to disable in-app browser for terminal links

Merged
LA
9mo ago
+174-12

Summary

  • add BrowserLinkOpenSettings for terminal link routing preference (default: open in cmux browser)
  • add Browser settings toggle: "Open Terminal Links in cmux Browser"
  • route GHOSTTY_ACTION_OPEN_URL through NSWorkspace.shared.open when the toggle is off
  • include the new preference in "Reset All Settings"
  • add regression tests for default and persisted preference behavior in BrowserLinkOpenSettingsTests

Linked issue

Verification

  • xcodebuild -project GhosttyTabs.xcodeproj -scheme cmux -configuration Debug -destination 'platform=macOS' build
  • xcodebuild -project GhosttyTabs.xcodeproj -scheme cmux-unit -configuration Debug -destination 'platform=macOS' -only-testing:cmuxTests/BrowserLinkOpenSettingsTests test (currently fails due pre-existing UpdateChannelSettings symbol errors in cmuxTests/CmuxWebViewKeyEquivalentTests.swift)
  • ./scripts/reload.sh --tag issue-172-disable-browser-option