add useKeydown helper

This commit is contained in:
Felix Roos 2022-08-18 16:15:44 +02:00
parent 5f4d8f6862
commit a7562c3803
4 changed files with 33 additions and 11 deletions

View file

@ -0,0 +1,10 @@
import { useLayoutEffect } from 'react';
// set active pattern on ctrl+enter
const useKeydown = (callback) =>
useLayoutEffect(() => {
window.addEventListener('keydown', callback, true);
return () => window.removeEventListener('keydown', callback, true);
}, [callback]);
export default useKeydown;

View file

@ -8,5 +8,6 @@ export { default as usePostMessage } from './hooks/usePostMessage';
export { default as useRepl } from './hooks/useRepl';
export { default as useScheduler } from './hooks/useScheduler';
export { default as useEvaluator } from './hooks/useEvaluator';
export { default as useKeydown } from './hooks/useKeydown';
export { default as cx } from './cx';
export { useWebMidi } from './hooks/useWebMidi';