auto-claude: subtask-1-2 - Create usePageVisibility hook for tab visibility detection

This commit is contained in:
2026-01-25 06:25:05 +01:00
parent c934eeaad8
commit 77ceae5b9f
+23
View File
@@ -0,0 +1,23 @@
import { useState, useEffect } from 'react';
/**
* Hook to detect tab visibility using the Page Visibility API
* @returns boolean - true when page is visible, false when hidden
*/
export const usePageVisibility = (): boolean => {
const [isVisible, setIsVisible] = useState<boolean>(!document.hidden);
useEffect(() => {
const handleVisibilityChange = () => {
setIsVisible(!document.hidden);
};
document.addEventListener('visibilitychange', handleVisibilityChange);
return () => {
document.removeEventListener('visibilitychange', handleVisibilityChange);
};
}, []);
return isVisible;
};