From 76a5238fb6ae15b0bede148fc2dead8c6c84fe87 Mon Sep 17 00:00:00 2001 From: Prozilla Date: Sun, 30 Jul 2023 10:21:18 +0200 Subject: [PATCH] Added keyboard shortcut for home menu --- src/components/task-bar/HomeMenu.jsx | 29 +++++++++++++++++++++++++++- src/hooks/utils/keyboard.js | 24 +++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 src/hooks/utils/keyboard.js diff --git a/src/components/task-bar/HomeMenu.jsx b/src/components/task-bar/HomeMenu.jsx index 5a906b7..9099372 100644 --- a/src/components/task-bar/HomeMenu.jsx +++ b/src/components/task-bar/HomeMenu.jsx @@ -5,6 +5,7 @@ import { useWindowsManager } from "../../hooks/windows/WindowsManagerContext.js" import ApplicationsManager from "../../features/applications/applications.js"; import { ReactSVG } from "react-svg"; import { closeTab } from "../../features/utils/browser.js"; +import { useKeyboardListener } from "../../hooks/utils/keyboard.js"; export function HomeMenu({ active, setActive }) { const windowsManager = useWindowsManager(); @@ -13,8 +14,34 @@ export function HomeMenu({ active, setActive }) { if (active) classNames.push(styles.Active); + let onlyAltKey = false; + const onKeyDown = (event) => { + console.log(event); + + if (event.key === "Alt") { + event.preventDefault(); + onlyAltKey = true; + } else { + onlyAltKey = false; + } + } + + const onKeyUp = (event) => { + console.log(event); + + if (event.key === "Alt" && onlyAltKey) { + event.preventDefault(); + setActive(!active); + onlyAltKey = false; + } else { + onlyAltKey = false; + } + } + + useKeyboardListener({ onKeyDown, onKeyUp }); + return ( -
+