From 11fcc3a7b03a4c2cab3cb4390e6355758731dc0c Mon Sep 17 00:00:00 2001 From: Mihai Parparita Date: Mon, 12 Sep 2022 11:48:19 -0700 Subject: [PATCH] cmd/tsconnect: fix xterm.js link opening not working when rendered into another window The default WebLinksAddon handler uses window.open(), but that gets blocked by the popup blocker when the event being handled is another window. We instead need to invoke open() on the window that the event was triggered in. Signed-off-by: Mihai Parparita --- cmd/tsconnect/src/lib/ssh.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cmd/tsconnect/src/lib/ssh.ts b/cmd/tsconnect/src/lib/ssh.ts index 8c974355f..4b23db7b2 100644 --- a/cmd/tsconnect/src/lib/ssh.ts +++ b/cmd/tsconnect/src/lib/ssh.ts @@ -23,7 +23,9 @@ export function runSSHSession( term.open(termContainerNode) fitAddon.fit() - const webLinksAddon = new WebLinksAddon() + const webLinksAddon = new WebLinksAddon((event, uri) => + event.view?.open(uri, "_blank", "noopener") + ) term.loadAddon(webLinksAddon) let onDataHook: ((data: string) => void) | undefined