From a91ae2781ed94af174ee18f8ab0995d7d22fc044 Mon Sep 17 00:00:00 2001 From: Ben Date: Wed, 8 Feb 2023 15:50:10 +0000 Subject: [PATCH] Revert "fix: open terminal and coder_app in a new tab, not window (#6044)" This reverts commit a655f03a1e969c2b31bb367161fbf9664f43172d. --- site/src/components/AppLink/AppLink.tsx | 18 ++++++++++++++++++ .../components/TerminalLink/TerminalLink.tsx | 10 ++++++++++ 2 files changed, 28 insertions(+) diff --git a/site/src/components/AppLink/AppLink.tsx b/site/src/components/AppLink/AppLink.tsx index b7c16015fa8df..283843a28a38b 100644 --- a/site/src/components/AppLink/AppLink.tsx +++ b/site/src/components/AppLink/AppLink.tsx @@ -6,9 +6,15 @@ import Tooltip from "@material-ui/core/Tooltip" import ErrorOutlineIcon from "@material-ui/icons/ErrorOutline" import { FC } from "react" import * as TypesGen from "../../api/typesGenerated" +import { generateRandomString } from "../../util/random" import { BaseIcon } from "./BaseIcon" import { ShareIcon } from "./ShareIcon" +const Language = { + appTitle: (appName: string, identifier: string): string => + `${appName} - ${identifier}`, +} + export interface AppLinkProps { appsHost?: string workspace: TypesGen.Workspace @@ -92,6 +98,18 @@ export const AppLink: FC = ({ href={href} target="_blank" className={canClick ? styles.link : styles.disabledLink} + onClick={ + canClick + ? (event) => { + event.preventDefault() + window.open( + href, + Language.appTitle(appDisplayName, generateRandomString(12)), + "width=900,height=600", + ) + } + : undefined + } > {button} diff --git a/site/src/components/TerminalLink/TerminalLink.tsx b/site/src/components/TerminalLink/TerminalLink.tsx index 96c514135b620..b709214648f24 100644 --- a/site/src/components/TerminalLink/TerminalLink.tsx +++ b/site/src/components/TerminalLink/TerminalLink.tsx @@ -5,9 +5,11 @@ import ComputerIcon from "@material-ui/icons/Computer" import { FC } from "react" import * as TypesGen from "../../api/typesGenerated" import { combineClasses } from "../../util/combineClasses" +import { generateRandomString } from "../../util/random" export const Language = { linkText: "Terminal", + terminalTitle: (identifier: string): string => `Terminal - ${identifier}`, } export interface TerminalLinkProps { @@ -40,6 +42,14 @@ export const TerminalLink: FC> = ({ href={href} className={combineClasses([styles.link, className])} target="_blank" + onClick={(event) => { + event.preventDefault() + window.open( + href, + Language.terminalTitle(generateRandomString(12)), + "width=900,height=600", + ) + }} >