diff options
Diffstat (limited to 'content_scripts/notify.ts')
-rw-r--r-- | content_scripts/notify.ts | 33 |
1 files changed, 7 insertions, 26 deletions
diff --git a/content_scripts/notify.ts b/content_scripts/notify.ts index a37617726..7929c3045 100644 --- a/content_scripts/notify.ts +++ b/content_scripts/notify.ts @@ -45,36 +45,17 @@ namespace TalerNotify { const handlers = []; - let connected = false; - // Hack to know when the extension is unloaded - let port; - - const connect = (dh) => { - port = chrome.runtime.connect(); - port.onDisconnect.addListener(dh); - chrome.runtime.sendMessage({type: "ping"}, () => { - console.log("registering handlers"); - connected = true; - registerHandlers(); - }); - }; + let port = chrome.runtime.connect(); - var disconectHandler = () => { - if (connected) { - console.log("chrome runtime disconnected, removing handlers"); - for (let handler of handlers) { - document.removeEventListener(handler.type, handler.listener); - } - } else { - // We got disconnected before the extension was ready, reconnect ... - window.setTimeout(() => { - connect(disconectHandler); - }, 200); + port.onDisconnect.addListener(() => { + console.log("chrome runtime disconnected, removing handlers"); + for (let handler of handlers) { + document.removeEventListener(handler.type, handler.listener); } - }; + }); - connect(disconectHandler); + registerHandlers(); function registerHandlers() { const $ = (x) => document.getElementById(x); |