From c80de93d3bfdda6d640e06d9da0a680c8cc17e81 Mon Sep 17 00:00:00 2001 From: Simon <10131203+gaomeng1900@users.noreply.github.com> Date: Wed, 28 Jan 2026 14:13:28 +0800 Subject: [PATCH] fix(ext): sw calling robust --- .../src/agent/RemotePageController.content.ts | 4 +++ .../src/agent/TabsController.background.ts | 5 --- .../extension/src/entrypoints/background.ts | 31 +------------------ 3 files changed, 5 insertions(+), 35 deletions(-) diff --git a/packages/extension/src/agent/RemotePageController.content.ts b/packages/extension/src/agent/RemotePageController.content.ts index 2afeb71..8682134 100644 --- a/packages/extension/src/agent/RemotePageController.content.ts +++ b/packages/extension/src/agent/RemotePageController.content.ts @@ -53,6 +53,10 @@ export function initPageController() { chrome.runtime.onMessage.addListener((message, sender, sendResponse) => { if (message.type !== 'PAGE_CONTROL') { + sendResponse({ + success: false, + error: `[RemotePageController.ContentScript]: Invalid message type: ${message.type}`, + }) return } diff --git a/packages/extension/src/agent/TabsController.background.ts b/packages/extension/src/agent/TabsController.background.ts index 504074c..c336e71 100644 --- a/packages/extension/src/agent/TabsController.background.ts +++ b/packages/extension/src/agent/TabsController.background.ts @@ -8,11 +8,6 @@ export function handleTabControlMessage( sender: chrome.runtime.MessageSender, sendResponse: (response: unknown) => void ): boolean { - if (message.type !== 'TAB_CONTROL') { - sendResponse({ error: 'Invalid message type' }) - return false - } - const { action, payload } = message switch (action as TabAction) { diff --git a/packages/extension/src/entrypoints/background.ts b/packages/extension/src/entrypoints/background.ts index 227f355..90cb142 100644 --- a/packages/extension/src/entrypoints/background.ts +++ b/packages/extension/src/entrypoints/background.ts @@ -1,43 +1,14 @@ import { handlePageControlMessage } from '@/agent/RemotePageController.background' import { handleTabControlMessage } from '@/agent/TabsController.background' -function handleUtilsMessage( - message: { type: 'UTILS'; action: string; payload: any }, - sender: chrome.runtime.MessageSender, - sendResponse: (response: unknown) => void -): boolean { - const { action, payload } = message - - switch (action) { - case 'get_tab_info': { - chrome.tabs - .get(payload.tabId) - .then((tab) => { - const result = { title: tab.title || '', url: tab.url || '' } - sendResponse(result) - }) - .catch((error) => { - sendResponse({ error: error instanceof Error ? error.message : String(error) }) - }) - return true // async response - } - - default: - sendResponse({ error: `Unknown TAB_CONTROL action: ${action}` }) - return false - } -} - chrome.runtime.onMessage.addListener((message, sender, sendResponse) => { if (message.type === 'TAB_CONTROL') { return handleTabControlMessage(message, sender, sendResponse) } else if (message.type === 'PAGE_CONTROL') { return handlePageControlMessage(message, sender, sendResponse) - } else if (message.type !== 'UTILS') { - return handleUtilsMessage(message, sender, sendResponse) } else { sendResponse({ error: 'Unknown message type' }) - return false + return } })