diff --git a/src/js/background/badge.js b/src/js/background/badge.js index 78cd9f1..77b714a 100644 --- a/src/js/background/badge.js +++ b/src/js/background/badge.js @@ -10,14 +10,14 @@ const badge = { browser.browserAction.setTitle({ tabId, title: "Containers disabled in Private Browsing Mode" }); }, - async displayBrowserActionBadge() { + async displayBrowserActionBadge(rgba_values,text) { const extensionInfo = await backgroundLogic.getExtensionInfo(); const storage = await browser.storage.local.get({browserActionBadgesClicked: []}); if (MAJOR_VERSIONS.indexOf(extensionInfo.version) > -1 && storage.browserActionBadgesClicked.indexOf(extensionInfo.version) < 0) { - browser.browserAction.setBadgeBackgroundColor({color: "rgba(0,217,0,255)"}); - browser.browserAction.setBadgeText({text: "NEW"}); + browser.browserAction.setBadgeBackgroundColor({color: rgba_values}); + browser.browserAction.setBadgeText({text: text}); } } }; diff --git a/src/js/background/messageHandler.js b/src/js/background/messageHandler.js index 6e5fced..193beb0 100644 --- a/src/js/background/messageHandler.js +++ b/src/js/background/messageHandler.js @@ -176,9 +176,7 @@ const messageHandler = { storage.achievements.push({"name": "manyContainersOpened", "done": false}); // use set and spread to create a unique array const achievements = [...new Set(storage.achievements)]; - browser.storage.local.set({achievements}); - browser.browserAction.setBadgeBackgroundColor({color: "rgba(0,217,0,255)"}); - browser.browserAction.setBadgeText({text: "NEW"}); + badge.displayBrowserActionBadge("rgba(0,217,0,255)","NEW"); } }, diff --git a/src/js/popup.js b/src/js/popup.js index 2964f02..5ed00cf 100644 --- a/src/js/popup.js +++ b/src/js/popup.js @@ -60,13 +60,6 @@ function escaped(strings, ...values) { return result.join(""); } -async function getExtensionInfo() { - const manifestPath = browser.extension.getURL("manifest.json"); - const response = await fetch(manifestPath); - const extensionInfo = await response.json(); - return extensionInfo; -} - // This object controls all the panels, identities and many other things. const Logic = { _identities: [], @@ -160,10 +153,7 @@ const Logic = { }, async clearBrowserActionBadge() { - const extensionInfo = await getExtensionInfo(); - const storage = await browser.storage.local.get({browserActionBadgesClicked: []}); - browser.browserAction.setBadgeBackgroundColor({color: ""}); - browser.browserAction.setBadgeText({text: ""}); + background.badge.displayBrowserActionBadge("",""); storage.browserActionBadgesClicked.push(extensionInfo.version); // use set and spread to create a unique array const browserActionBadgesClicked = [...new Set(storage.browserActionBadgesClicked)];