Select Git revision
popup.js 1.16 KiB
document.addEventListener("DOMContentLoaded", () => {
const featureA = document.getElementById("featureA");
// Load saved state
chrome.storage.local.get(["featureA"], (data) => {
featureA.checked = data.featureA || false;
});
featureA.addEventListener("change", () => {
chrome.storage.local.set({ featureA: featureA.checked });
notifyContentScript();
});
});
function notifyContentScript() {
chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => {
if (tabs[0]) {
chrome.tabs.query({ active: true, currentWindow: true }, function (tabs) {
const currentTabUrl = tabs[0].url;
// Check if the current tab is a web page (not a chrome:// URL)
if (!currentTabUrl.startsWith("chrome://")) {
chrome.scripting.executeScript({
target: { tabId: tabs[0].id },
func: (isEnabled) => {
window.postMessage({ type: "TOGGLE_FRONTEND", isEnabled }, "*");
},
args: [featureA.checked]
});
} else {
console.log(
"Cannot execute content script on a privileged Chrome URL"
);
}
});
}
});
}