Skip to content

fix(desktop): open external links in system browser - #39820

Merged
Hona merged 4 commits into
anomalyco:devfrom
Hona:system-browser-links
Jul 31, 2026
Merged

fix(desktop): open external links in system browser#39820
Hona merged 4 commits into
anomalyco:devfrom
Hona:system-browser-links

Conversation

@Hona

@Hona Hona commented Jul 31, 2026

Copy link
Copy Markdown
Member

Summary

  • make Electron's main process authoritative for new-window and top-level external navigation
  • separate validated web/mail URLs, explicit local terminal files, local paths, and internal router transitions
  • replace global notification navigation state with click callbacks captured by the router owner
  • remove Session UI's router dependency and pass current-session/navigation capabilities from App
  • remove obsolete desktop click delegation, Markdown IPC, notification IPC, history methods, and window-count readiness gating

Testing

  • bun test src/main/external-url.test.ts in packages/desktop (4 passed)
  • bun test src --only-failures in packages/session-ui (76 passed)
  • bun run test:unit in packages/app (689 passed; pre-existing Arabic translation parity test fails on five missing keys)
  • bun typecheck in packages/desktop, packages/session-ui, and packages/app
  • pre-push repo-wide typecheck (30 packages)
  • bun run build in packages/desktop
  • production child-session benchmark: 100.3 ms -> 94.7 ms first destination, 114.2 ms -> 111.6 ms stable; zero blank/unknown samples before and after

@Hona
Hona requested a review from Brendonovich as a code owner July 31, 2026 06:00
Copilot AI review requested due to automatic review settings July 31, 2026 06:00

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@Hona
Hona merged commit 2039c90 into anomalyco:dev Jul 31, 2026
13 checks passed
dannypaz pushed a commit to dannypaz/opencode that referenced this pull request Jul 31, 2026
layout-new.tsx was resolved to keep the fork's old useNavigate/setNavigate
wiring from packages/app/src/utils/notification-click.ts, but upstream
deleted that module (and all its other call sites) in an unrelated
refactor (anomalyco#39820). Fork never touched this file, so
there was nothing fork-specific to preserve here - this brings
layout-new.tsx in line with how the same pattern was already handled
correctly elsewhere in the merge (e.g. titlebar.tsx's electronWindows,
general.tsx's controller refactor).

Caught by Codex review on PR #11.
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.

2 participants