aboutsummaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
Diffstat (limited to 'js')
-rw-r--r--js/background.js32
1 files changed, 24 insertions, 8 deletions
diff --git a/js/background.js b/js/background.js
index 3c84b38..a3b5da3 100644
--- a/js/background.js
+++ b/js/background.js
@@ -29,12 +29,13 @@ var redirectThreshold = 3;
function setIcon(image) {
var data = {
- path: {
- 19 : 'images/' + image + '-19.png',
- 38 : 'images/' + image + '-38.png'
- }
+ path: {}
};
+ for (let nr of [16,19,32,38,48,64,128]) {
+ data.path[nr] = `images/${image}-${nr}.png`;
+ }
+
chrome.browserAction.setIcon(data, function() {
var err = chrome.runtime.lastError;
if (err) {
@@ -201,12 +202,21 @@ function setUpRedirectListener() {
function updateIcon() {
chrome.storage.local.get({disabled:false}, function(obj) {
- if (window.matchMedia('(prefers-color-scheme: dark)')) {
- setIcon('icon-light');
+ if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
+ setIcon('icon-dark-theme');
} else {
- setIcon('icon-dark');
+ setIcon('icon-light-theme');
+ }
+
+ if (obj.disabled) {
+ chrome.browserAction.setBadgeText({text: 'off'});
+ chrome.browserAction.setBadgeBackgroundColor({color: 'red'});
+ if (chrome.browserAction.setBadgeTextColor) { //Not supported in Chrome
+ chrome.browserAction.setBadgeTextColor({color: '#fafafa'});
+ }
+ } else {
+ chrome.browserAction.setBadgeText({text: ''});
}
- //setIcon(obj.disabled ? 'icon-light' : 'icon-dark');
});
}
@@ -410,4 +420,10 @@ function handleStartup(){
chrome.storage.local.set({
enableNotifications: false
});
+
+ updateIcon(); //To set dark/light icon...
+ let mql = window.matchMedia('(prefers-color-scheme: dark)');
+ mql.addEventListener('change', function(e) {
+ console.log('IT CHANGED ' + e.matches);
+ });
} \ No newline at end of file