diff --git a/app/manifest.json b/app/manifest.json index 3db8ef3..dcef13b 100644 --- a/app/manifest.json +++ b/app/manifest.json @@ -8,12 +8,8 @@ "scripts/background.js" ] }, - "content_scripts": [{ - "matches": [""], - "js": ["scripts/contentscript.js"], - "run_at": "document_end" - }], "permissions": [ - "activeTab" + "", + "webRequest" ] } diff --git a/app/scripts/background.js b/app/scripts/background.js index e69de29..d2071d4 100644 --- a/app/scripts/background.js +++ b/app/scripts/background.js @@ -0,0 +1,21 @@ +async function onHeadersReceived({ responseHeaders, url, tabId }) { + const isAudio = responseHeaders.some(header => + header.name === 'Content-Type' && header.value.startsWith('audio/') + ); + + if (isAudio) { + browser.tabs.executeScript(tabId, { + runAt: 'document_end', + file: '/scripts/contentscript.js', + }); + } +} + +browser.webRequest.onHeadersReceived.addListener( + onHeadersReceived, + { + urls: [''], + types: ['main_frame'], + }, + ['responseHeaders'], +);