diff --git a/apps/web/src/components/WorkspaceMenu.tsx b/apps/web/src/components/WorkspaceMenu.tsx index b9f75183..b48bb960 100644 --- a/apps/web/src/components/WorkspaceMenu.tsx +++ b/apps/web/src/components/WorkspaceMenu.tsx @@ -1,6 +1,6 @@ import { Button, Menu, Transition } from "@headlessui/react"; import { t } from "@lingui/core/macro"; -import { Fragment, useState } from "react"; +import { Fragment, useEffect, useState } from "react"; import { HiCheck, HiMagnifyingGlass } from "react-icons/hi2"; import { twMerge } from "tailwind-merge"; @@ -18,6 +18,18 @@ export default function WorkspaceMenu({ const { openModal } = useModal(); const [isOpen, setIsOpen] = useState(false); + useEffect(() => { + const handleKeyDown = (event: KeyboardEvent) => { + if ((event.metaKey || event.ctrlKey) && event.key === "k") { + event.preventDefault(); + setIsOpen(true); + } + }; + + document.addEventListener("keydown", handleKeyDown); + return () => document.removeEventListener("keydown", handleKeyDown); + }, []); + return ( <> setIsOpen(false)} />