aboutsummaryrefslogtreecommitdiff
path: root/apps/web/lib/useKeyPress.ts
blob: eee23acb181d4c2bc54fbf81729d9b05696a2756 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { useEffect } from "react";

export const useKeyPress = (key: string, callback: () => void) => {
	useEffect(() => {
		const handler = (e: KeyboardEvent) => {
			if (e.key === key && e.altKey) {
				callback();
			}
		};
		window.addEventListener("keydown", handler);
		return () => {
			window.removeEventListener("keydown", handler);
		};
	}, [key, callback]);
};