From 8a332528a9a0cfcf31e8e955be7f7bd8852e0c8e Mon Sep 17 00:00:00 2001 From: Nathan Bierema Date: Sat, 10 Aug 2024 15:50:14 -0400 Subject: [PATCH] Keep connection from devpanel to background alive --- extension/src/background/store/apiMiddleware.ts | 3 ++- extension/src/devpanel/index.tsx | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/extension/src/background/store/apiMiddleware.ts b/extension/src/background/store/apiMiddleware.ts index ffedb286..ac072f0e 100644 --- a/extension/src/background/store/apiMiddleware.ts +++ b/extension/src/background/store/apiMiddleware.ts @@ -644,7 +644,8 @@ function onConnect>(port: chrome.runtime.Port) { connections.panel[id] = port; monitorInstances(true, port.name); monitors++; - listener = (msg: BackgroundAction) => { + listener = (msg: BackgroundAction | 'heartbeat') => { + if (msg === 'heartbeat') return; store.dispatch(msg); }; port.onMessage.addListener(listener); diff --git a/extension/src/devpanel/index.tsx b/extension/src/devpanel/index.tsx index 34271f84..75a6ae0c 100644 --- a/extension/src/devpanel/index.tsx +++ b/extension/src/devpanel/index.tsx @@ -103,9 +103,15 @@ let splitMessage: SplitUpdateStateRequest>; function init(id: number) { renderNA(); + bgConnection = chrome.runtime.connect({ name: id ? id.toString() : undefined, }); + + setInterval(() => { + bgConnection.postMessage('heartbeat'); + }, 15000); + bgConnection.onMessage.addListener( >( message: PanelMessageWithSplitAction,