Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
In Canvas preview, a <Link> from cursor/canvas triggers multiple opens of the same external URL from one user click (multiple identical browser tabs and/or repeated “open external website” confirmations).
Minimal repro:
import { Link } from "cursor/canvas";
export default function Repro() {
return <Link href="https://hostsailor.com/">test</Link>;
}
### Steps to Reproduce
1. Create or open a `.canvas.tsx` file and open Canvas preview.
2. Render: `import { Link } from "cursor/canvas";` and `<Link href="https://hostsailor.com/">test</Link>`.
3. Click the link exactly once in the preview.
4. If Cursor asks to allow opening an external site, confirm once.
Actual: several identical tabs/windows open for the same URL, and/or the confirmation dialog appears multiple times.
Expected: one tab and one confirmation per click.
### Expected Behavior
One click on `<Link>` in Canvas preview should open the target URL once (single browser tab / single external open).
### Operating System
Windows 10/11
### Version Information
Version: 3.2.11 (system setup)
VSCode Version: 1.105.1
Commit: e9ee1339915a927dfb2df4a836dd9c8337e17cc0
Date: 2026-04-24T14:36:47.933Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Windows_NT x64 10.0.26200
### For AI issues: which model did you use?
N/A — not an AI/chat issue; Canvas preview / Link navigation.
### For AI issues: add Request ID with privacy disabled
N/A — Canvas `<Link>` opens external URL multiple times; no chat request involved.
### Additional Information
Workaround: avoid `<Link>` in Canvas and show plain URLs as text; then the problem does not occur.
Also observed when `<Link>` was used inside `<Table>` cells; issue may be related to duplicate click/navigation handling in the Canvas webview.
### Does this stop you from using Cursor
No - Cursor works, but with this issue