fix(useKeyPress): reset key when window loses focus #641
This commit is contained in:
@@ -17,13 +17,19 @@ export default (keyCode: number): boolean => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const resetHandler = () => {
|
||||||
|
setKeyPressed(false);
|
||||||
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
window.addEventListener('keydown', downHandler);
|
window.addEventListener('keydown', downHandler);
|
||||||
window.addEventListener('keyup', upHandler);
|
window.addEventListener('keyup', upHandler);
|
||||||
|
window.addEventListener('blur', resetHandler);
|
||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
window.removeEventListener('keydown', downHandler);
|
window.removeEventListener('keydown', downHandler);
|
||||||
window.removeEventListener('keyup', upHandler);
|
window.removeEventListener('keyup', upHandler);
|
||||||
|
window.removeEventListener('blur', resetHandler);
|
||||||
};
|
};
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user