Files
desktop/app/hooks/useWindowFocus.ts
rosetta 83f38dc63f 'init'
2026-01-30 05:01:05 +02:00

25 lines
611 B
TypeScript

import { useEffect, useState } from "react";
export function useWindowFocus() {
const [isFocused, setIsFocused] = useState<boolean>(document.hasFocus());
function handleFocus() {
setIsFocused(true);
}
function handleBlur() {
setIsFocused(false);
}
useEffect(() => {
window.addEventListener('focus', handleFocus);
window.addEventListener('blur', handleBlur);
return () => {
window.removeEventListener('focus', handleFocus);
window.removeEventListener('blur', handleBlur);
};
}, []);
return isFocused;
}