diff --git a/src/components/background-service.jsx b/src/components/background-service.jsx index 5b9a7ef1..64144832 100644 --- a/src/components/background-service.jsx +++ b/src/components/background-service.jsx @@ -16,7 +16,18 @@ export default memo(function BackgroundService({ isLoggedIn }) { // Notifications service // - WebSocket to receive notifications when page is visible const [visible, setVisible] = useState(true); - usePageVisibility(setVisible); + const visibleTimeout = useRef(); + usePageVisibility((visible) => { + clearTimeout(visibleTimeout.current); + if (visible) { + setVisible(true); + } else { + visibleTimeout.current = setTimeout(() => { + setVisible(false); + }, POLL_INTERVAL); + } + }); + const checkLatestNotification = async (masto, instance, skipCheckMarkers) => { if (states.notificationsLast) { const notificationsIterator = masto.v1.notifications.list({ diff --git a/src/locales/en.po b/src/locales/en.po index fd83a8d0..6a399c6f 100644 --- a/src/locales/en.po +++ b/src/locales/en.po @@ -511,11 +511,11 @@ msgstr "" msgid "server domain name" msgstr "" -#: src/components/background-service.jsx:138 +#: src/components/background-service.jsx:149 msgid "Cloak mode disabled" msgstr "" -#: src/components/background-service.jsx:138 +#: src/components/background-service.jsx:149 msgid "Cloak mode enabled" msgstr ""