diff options
Diffstat (limited to 'apps/web/src/hooks/use-shift-key.ts')
| -rw-r--r-- | apps/web/src/hooks/use-shift-key.ts | 70 |
1 files changed, 35 insertions, 35 deletions
diff --git a/apps/web/src/hooks/use-shift-key.ts b/apps/web/src/hooks/use-shift-key.ts index 4f9fe67c..33eb2fc6 100644 --- a/apps/web/src/hooks/use-shift-key.ts +++ b/apps/web/src/hooks/use-shift-key.ts @@ -1,35 +1,35 @@ -import { useEffect, useRef, type RefObject } from "react"; - -export function useShiftKey(): RefObject<boolean> { - const isShiftHeldRef = useRef(false); - - useEffect(() => { - const handleKeyDown = ({ key }: KeyboardEvent) => { - if (key === "Shift") { - isShiftHeldRef.current = true; - } - }; - - const handleKeyUp = ({ key }: KeyboardEvent) => { - if (key === "Shift") { - isShiftHeldRef.current = false; - } - }; - - const handleBlur = () => { - isShiftHeldRef.current = false; - }; - - document.addEventListener("keydown", handleKeyDown); - document.addEventListener("keyup", handleKeyUp); - window.addEventListener("blur", handleBlur); - - return () => { - document.removeEventListener("keydown", handleKeyDown); - document.removeEventListener("keyup", handleKeyUp); - window.removeEventListener("blur", handleBlur); - }; - }, []); - - return isShiftHeldRef; -} +import { useEffect, useRef, type RefObject } from "react";
+
+export function useShiftKey(): RefObject<boolean> {
+ const isShiftHeldRef = useRef(false);
+
+ useEffect(() => {
+ const handleKeyDown = ({ key }: KeyboardEvent) => {
+ if (key === "Shift") {
+ isShiftHeldRef.current = true;
+ }
+ };
+
+ const handleKeyUp = ({ key }: KeyboardEvent) => {
+ if (key === "Shift") {
+ isShiftHeldRef.current = false;
+ }
+ };
+
+ const handleBlur = () => {
+ isShiftHeldRef.current = false;
+ };
+
+ document.addEventListener("keydown", handleKeyDown);
+ document.addEventListener("keyup", handleKeyUp);
+ window.addEventListener("blur", handleBlur);
+
+ return () => {
+ document.removeEventListener("keydown", handleKeyDown);
+ document.removeEventListener("keyup", handleKeyUp);
+ window.removeEventListener("blur", handleBlur);
+ };
+ }, []);
+
+ return isShiftHeldRef;
+}
|
