2020-02-27 13:45:29 +01:00
|
|
|
/**
|
|
|
|
* Internal API Wrapper Module
|
2020-09-25 07:34:59 +02:00
|
|
|
* Belongs to LocalCDN.
|
2020-02-27 13:45:29 +01:00
|
|
|
*
|
|
|
|
* @author Thomas Rientjes
|
|
|
|
* @since 2017-12-03
|
2020-09-25 07:34:59 +02:00
|
|
|
|
|
|
|
* @author nobody
|
|
|
|
* @since 2020-07-09
|
|
|
|
|
2020-02-27 13:45:29 +01:00
|
|
|
* @license MPL 2.0
|
|
|
|
*
|
|
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
|
|
* You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*/
|
|
|
|
|
|
|
|
'use strict';
|
|
|
|
|
2021-02-17 07:01:08 +01:00
|
|
|
|
2020-02-27 13:45:29 +01:00
|
|
|
/**
|
|
|
|
* Wrappers
|
|
|
|
*/
|
|
|
|
|
|
|
|
var wrappers = {};
|
|
|
|
|
2021-02-17 07:01:08 +01:00
|
|
|
|
2020-02-27 13:45:29 +01:00
|
|
|
/**
|
|
|
|
* Public Methods
|
|
|
|
*/
|
|
|
|
|
|
|
|
wrappers.setBadgeBackgroundColor = function (details) {
|
|
|
|
if (chrome.browserAction.setBadgeBackgroundColor !== undefined) {
|
|
|
|
chrome.browserAction.setBadgeBackgroundColor(details);
|
2020-09-25 07:34:59 +02:00
|
|
|
|
|
|
|
storageManager.type.set({
|
|
|
|
[Setting.BADGE_COLOR]: details.color
|
|
|
|
});
|
2020-02-27 13:45:29 +01:00
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
wrappers.setBadgeText = function (details) {
|
|
|
|
if (chrome.browserAction.setBadgeText !== undefined) {
|
|
|
|
chrome.browserAction.setBadgeText(details);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
wrappers.setBadgeTextColor = function (details) {
|
|
|
|
if (chrome.browserAction.setBadgeTextColor !== undefined) {
|
|
|
|
chrome.browserAction.setBadgeTextColor(details);
|
2020-09-25 07:34:59 +02:00
|
|
|
|
|
|
|
storageManager.type.set({
|
|
|
|
[Setting.BADGE_TEXT_COLOR]: details.color
|
|
|
|
});
|
2020-02-27 13:45:29 +01:00
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2020-07-09 20:58:18 +02:00
|
|
|
wrappers.setIcon = function (details, type) {
|
2020-07-12 09:57:14 +02:00
|
|
|
if (chrome.browserAction.setIcon) {
|
2020-07-09 20:58:18 +02:00
|
|
|
details.path = IconType[details.path][type];
|
2020-09-27 11:46:32 +02:00
|
|
|
chrome.browserAction.setIcon(details);
|
2020-02-27 13:45:29 +01:00
|
|
|
}
|
|
|
|
};
|
2020-09-25 07:34:59 +02:00
|
|
|
|
2021-03-13 06:55:20 +01:00
|
|
|
wrappers.setBadgeMissing = function (tabIdentifier, counter) {
|
|
|
|
chrome.browserAction.setBadgeText({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'text': `${counter}`,
|
|
|
|
});
|
2021-03-21 08:08:03 +01:00
|
|
|
if (BrowserType.FIREFOX) {
|
|
|
|
chrome.browserAction.setBadgeTextColor({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'color': 'black',
|
|
|
|
});
|
|
|
|
chrome.browserAction.setBadgeBackgroundColor({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'color': 'yellow',
|
|
|
|
});
|
|
|
|
} else {
|
|
|
|
chrome.browserAction.setBadgeBackgroundColor({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'color': 'red',
|
|
|
|
});
|
|
|
|
}
|
2021-03-13 06:55:20 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
wrappers.defaultBadge = function (tabIdentifier, counter) {
|
|
|
|
chrome.browserAction.setBadgeText({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'text': `${counter}`,
|
|
|
|
});
|
2021-03-21 08:08:03 +01:00
|
|
|
if (BrowserType.FIREFOX) {
|
|
|
|
chrome.browserAction.setBadgeTextColor({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'color': wrappers.textColor
|
|
|
|
});
|
|
|
|
}
|
2021-03-13 06:55:20 +01:00
|
|
|
chrome.browserAction.setBadgeBackgroundColor({
|
|
|
|
'tabId': tabIdentifier,
|
|
|
|
'color': wrappers.backgroundColor
|
|
|
|
});
|
|
|
|
};
|
|
|
|
|
2020-09-25 07:34:59 +02:00
|
|
|
storageManager.type.get([Setting.BADGE_COLOR, Setting.BADGE_TEXT_COLOR], function (items) {
|
|
|
|
wrappers.textColor = items.badgeTextColor || '#FFFFFF';
|
|
|
|
wrappers.backgroundColor = items.badgeColor || '#4A826C';
|
|
|
|
|
2021-02-17 07:01:08 +01:00
|
|
|
wrappers.setBadgeTextColor({'color': wrappers.textColor});
|
|
|
|
wrappers.setBadgeBackgroundColor({'color': wrappers.backgroundColor});
|
2020-09-25 07:34:59 +02:00
|
|
|
});
|