From aef34fd9664fa45da3f9ba66a03cc84adb9bb182 Mon Sep 17 00:00:00 2001 From: ZacharyZcR Date: Fri, 10 Jul 2026 08:02:59 +0800 Subject: [PATCH] Allow Escape to close link confirmation (#1014) --- src/ui/features/terminal/Terminal.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/ui/features/terminal/Terminal.tsx b/src/ui/features/terminal/Terminal.tsx index 836eb1b5..d1dd71e3 100644 --- a/src/ui/features/terminal/Terminal.tsx +++ b/src/ui/features/terminal/Terminal.tsx @@ -223,6 +223,20 @@ const TerminalInner = forwardRef( url: string; } | null>(null); + useEffect(() => { + if (!linkClickDialog) return; + + const handleKeyDown = (event: KeyboardEvent) => { + if (event.key !== "Escape") return; + event.preventDefault(); + event.stopPropagation(); + setLinkClickDialog(null); + }; + + window.addEventListener("keydown", handleKeyDown, true); + return () => window.removeEventListener("keydown", handleKeyDown, true); + }, [linkClickDialog]); + const [tmuxSessionPicker, setTmuxSessionPicker] = useState<{ sessions: Array<{ name: string; @@ -3092,10 +3106,12 @@ const TerminalInner = forwardRef(
setLinkClickDialog(null)} >
event.stopPropagation()} >

{t("terminal.linkDialogTitle")}