From f3740514467a87de67275698cff26b811cdb4a30 Mon Sep 17 00:00:00 2001 From: Martti Malmi Date: Fri, 25 Aug 2023 16:43:09 +0300 Subject: [PATCH] dont add same listener many times --- src/js/nostr/relayPool.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/js/nostr/relayPool.ts b/src/js/nostr/relayPool.ts index 47e86eb9..dc8e3c76 100644 --- a/src/js/nostr/relayPool.ts +++ b/src/js/nostr/relayPool.ts @@ -7,6 +7,8 @@ import { UniqueIds } from '@/utils/UniqueIds.ts'; let relayPoolInstance: RelayPool | null = null; +let isListenerAdded = false; + const getRelayPool = () => { if (relayPoolInstance) { return relayPoolInstance; @@ -31,12 +33,15 @@ const getRelayPool = () => { } }; - document.addEventListener('visibilitychange', () => { - if (document.visibilityState === 'visible') { - reconnect(); - } - }); - document.addEventListener('online', reconnect); + if (!isListenerAdded) { + isListenerAdded = true; + document.addEventListener('visibilitychange', () => { + if (document.visibilityState === 'visible') { + reconnect(); + } + }); + document.addEventListener('online', reconnect); + } relayPoolInstance = new RelayPool(Relays.enabledRelays(), { useEventCache: false,