diff options
author | sameerasw <[email protected]> | 2025-04-25 18:11:44 +0530 |
---|---|---|
committer | sameerasw <[email protected]> | 2025-04-25 18:11:44 +0530 |
commit | 3321f7444165e703447f1f7761e358d69a6d4436 (patch) | |
tree | 35400557fe11eb8b281b32f803fd1f762791fd59 /content-script.js | |
parent | 9a5e14f6e66b6a0beb4a7c20c5512b873684b04a (diff) |
Version update
Diffstat (limited to 'content-script.js')
-rw-r--r-- | content-script.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/content-script.js b/content-script.js new file mode 100644 index 0000000..4f02174 --- /dev/null +++ b/content-script.js @@ -0,0 +1,42 @@ +(function() { + const stylesheetId = 'zeninternet-custom-styles'; + + // Create or get our stylesheet element + function getStylesheet() { + let stylesheet = document.getElementById(stylesheetId); + if (!stylesheet) { + stylesheet = document.createElement('style'); + stylesheet.id = stylesheetId; + stylesheet.type = 'text/css'; + document.head.appendChild(stylesheet); + } + return stylesheet; + } + + // Update our stylesheet content + function updateStyles(css) { + const stylesheet = getStylesheet(); + stylesheet.textContent = css || ''; + console.log('ZenInternet: Styles were ' + (css ? 'updated' : 'removed')); + } + + // Announce content script is ready and provide current hostname + function announceReady() { + browser.runtime.sendMessage({ + action: 'contentScriptReady', + hostname: window.location.hostname, + }); + } + + // Listen for messages from background script + browser.runtime.onMessage.addListener((message) => { + if (message.action === 'applyStyles') { + updateStyles(message.css); + return Promise.resolve({ success: true }); + } + return false; + }); + + // Announce content script is ready on load + announceReady(); +})(); |