Я неправильно читаю API? Всегда ли расширение переопределяет белый список?
Подробнее:
Код: Выделить всё
const { setting } = await chrome.contentSettings.javascript.get({ primaryUrl: 'http://*/*' });
const newSetting = setting === 'allow' ? 'block' : 'allow';
chrome.contentSettings.javascript.set({
primaryPattern: '',
setting: newSetting
});

Полный код расширения:
Код: Выделить всё
chrome.runtime.onInstalled.addListener(() => {
console.log('JS Toggle extension installed');
updateIcon();
});
// Update icon based on current JavaScript setting
async function updateIcon() {
const { setting } = await chrome.contentSettings.javascript.get({ primaryUrl: 'http://*/*' });
const enabled = setting === 'allow';
chrome.action.setTitle({
title: `JavaScript ${enabled ? 'ON' : 'OFF'} - Click to toggle`
});
chrome.action.setBadgeText({
text: enabled ? 'ON' : 'OFF'
});
chrome.action.setBadgeBackgroundColor({
color: enabled ? '#4CAF50' : '#F44336'
});
}
// Toggle JavaScript on icon click
chrome.action.onClicked.addListener(async () => {
const { setting } = await chrome.contentSettings.javascript.get({ primaryUrl: 'http://*/*' });
const newSetting = setting === 'allow' ? 'block' : 'allow';
await chrome.contentSettings.javascript.set({
primaryPattern: '',
setting: newSetting
});
updateIcon();
});
Подробнее здесь: https://stackoverflow.com/questions/797 ... s-override
Мобильная версия