| /* Enables the page action (i.e., the browser toolbar icon). | |||||
| */ | |||||
| chrome.runtime.onInstalled.addListener(() => { | |||||
| chrome.declarativeContent.onPageChanged.removeRules(undefined, () => { | |||||
| chrome.declarativeContent.onPageChanged.addRules([{ | |||||
| conditions: [ new chrome.declarativeContent.PageStateMatcher({ | |||||
| pageUrl: { schemes: [ 'http', 'https' ] }, | |||||
| }) | |||||
| ], actions: [ new chrome.declarativeContent.ShowPageAction() ] | |||||
| }]); | |||||
| }); | |||||
| }); | |||||
| /* Toggle the toolbar icon based on whether stickies are, or are not, set to | |||||
| be killed on the current tab. | |||||
| This listener receives a message from the content script (contentScript.js); | |||||
| the content script actually determines what the settings for the current | |||||
| tab are. | |||||
| */ | |||||
| chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { | |||||
| let icons = request.killingStickies ? { | |||||
| "16": "images/ASK_on_16.png", | |||||
| "32": "images/ASK_on_32.png", | |||||
| "48": "images/ASK_on_48.png", | |||||
| "128": "images/ASK_on_128.png" | |||||
| } : { | |||||
| "16": "images/ASK_off_16.png", | |||||
| "32": "images/ASK_off_32.png", | |||||
| "48": "images/ASK_off_48.png", | |||||
| "128": "images/ASK_off_128.png" | |||||
| }; | |||||
| chrome.pageAction.setIcon({ | |||||
| path: icons, | |||||
| tabId: request.tabID || sender.tab.id | |||||
| }); | |||||
| }); |
| /* Enables the page action (i.e., the browser toolbar icon). | |||||
| */ | |||||
| chrome.runtime.onInstalled.addListener(() => { | |||||
| chrome.declarativeContent.onPageChanged.removeRules(undefined, () => { | |||||
| chrome.declarativeContent.onPageChanged.addRules([{ | |||||
| conditions: [ new chrome.declarativeContent.PageStateMatcher({ | |||||
| pageUrl: { schemes: [ 'http', 'https' ] }, | |||||
| }) | |||||
| ], actions: [ new chrome.declarativeContent.ShowPageAction() ] | |||||
| }]); | |||||
| }); | |||||
| }); | |||||
| /* Toggle the toolbar icon based on whether stickies are, or are not, set to | |||||
| be killed on the current tab. | |||||
| This listener receives a message from the content script (contentScript.js); | |||||
| the content script actually determines what the settings for the current | |||||
| tab are. | |||||
| */ | |||||
| chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { | |||||
| let icons = request.killingStickies ? { | |||||
| "48": "images/ASK_on_48.png", | |||||
| "96": "images/ASK_on_96.png", | |||||
| } : { | |||||
| "48": "images/ASK_off_48.png", | |||||
| "96": "images/ASK_off_96.png", | |||||
| }; | |||||
| chrome.pageAction.setIcon({ | |||||
| path: icons, | |||||
| tabId: request.tabID || sender.tab.id | |||||
| }); | |||||
| }); |
| "default_popup": "popup.html", | "default_popup": "popup.html", | ||||
| "default_title": "AlwaysKillSticky - Click the icon to control sticky-killing on this site!", | "default_title": "AlwaysKillSticky - Click the icon to control sticky-killing on this site!", | ||||
| "default_icon": { | "default_icon": { | ||||
| "16": "images/ASK_on_16.png", | |||||
| "32": "images/ASK_on_32.png", | |||||
| "48": "images/ASK_on_48.png", | |||||
| "128": "images/ASK_on_128.png" | |||||
| "48": "images/ASK_on_48.png", | |||||
| "96": "images/ASK_on_96.png", | |||||
| } | } | ||||
| }, | }, | ||||
| "icons": { | "icons": { | ||||
| "16": "images/ASK_on_16.png", | |||||
| "32": "images/ASK_on_32.png", | |||||
| "48": "images/ASK_on_48.png", | "48": "images/ASK_on_48.png", | ||||
| "128": "images/ASK_on_128.png" | |||||
| "96": "images/ASK_on_96.png", | |||||
| }, | }, | ||||
| "options_ui": { | "options_ui": { | ||||
| "page": "options.html", | "page": "options.html", |