mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-13 11:23:50 +00:00
de9a7a87fd
* refactor(project structure): UI * refactor(project structure): extract utilities * refactor(project structure): remove unused * refactor(project structure): electron * refactor(project structure): server refactor: migrate to vitest refactor: monorepo config * refactor: extract application menu * refactor: exit process * refactor: extract tray menu * chore: electron build * Added Seconds in studio clock #282 --------- Co-authored-by: Fabian Posenau <fabian@fphome.de> --------- Co-authored-by: Fabian Posenau <fabian.p99@gmx.de> Co-authored-by: Fabian Posenau <fabian@fphome.de>
19 lines
486 B
TypeScript
19 lines
486 B
TypeScript
import { useEffect } from 'react';
|
|
|
|
export const useKeyDown = (callback: () => void, targetKey: string) => {
|
|
const onKeyDown = (event: KeyboardEvent) => {
|
|
const targetKeyPressed = event.key === targetKey && !event.repeat;
|
|
if (targetKeyPressed) {
|
|
event.preventDefault();
|
|
callback();
|
|
}
|
|
};
|
|
|
|
useEffect(() => {
|
|
document.addEventListener('keydown', onKeyDown);
|
|
return () => {
|
|
document.removeEventListener('keydown', onKeyDown);
|
|
};
|
|
}, []);
|
|
};
|