Skip to content

Commit 0c47455

Browse files
committed
Added option to hide badge text, changed logo (again), stil migrating to Manifest V3 (WIP)
1 parent 3d57e9e commit 0c47455

File tree

11 files changed

+42
-4
lines changed

11 files changed

+42
-4
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
/.idea/
22
/build/*
3-
/dev/*
3+
/dev/*
4+
.vscode/

build.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ copyDevFunction() {
1010
cp manifest.json ./dev/
1111
cp options.html ./dev/
1212
cp popup.html ./dev/
13+
rm ./dev/img/icon_full.png # raw file
1314
rm ./dev/img/LICENSE
1415
rm ./dev/img/flags/Hello.txt
1516
rm ./dev/img/flags/LICENSE.txt

img/icon.png

-92 Bytes
Loading

img/icon128.png

-4.61 KB
Loading

img/icon16.png

-84 Bytes
Loading

img/icon48.png

-810 Bytes
Loading

img/icon_full.png

-145 KB
Loading

js/constants.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
const KEY_SETTINGS_NOTIFICATION = 'notifications_enabled';
22
const KEY_SETTINGS_NOTIFICATION_IPv6 = 'notifications_ipv6_enabled';
33
const KEY_SETTINGS_COUNTRY_BADGE = 'country_badge_indicator';
4-
const KEY_SETTINGS_SHOW_FLAGS = 'badge_show_flags';
4+
const KEY_SETTINGS_SHOW_FLAGS = 'badge_show_flags';
5+
const KEY_SETTINGS_SHOW_TEXT = 'badge_show_text';

js/main.js

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,13 @@ let ipv4Error = false;
55
const countriesSupported = ['AD', 'BA', 'BY', 'CV', 'ET', 'GN', 'IM', 'KR', 'MD', 'MW', 'PA', 'RU', 'ST', 'TT', 'WS', 'AE', 'BB', 'BZ', 'CW', 'EU', 'GQ', 'IN', 'KW', 'ME', 'MX', 'PE', 'RW', 'SV', 'TV', 'YE', 'AF', 'BD', 'CA', 'CX', 'FI', 'GR', 'IQ', 'KY', 'MF', 'MY', 'PF', 'SA', 'SX', 'TW', 'YT', 'AG', 'BE', 'CC', 'CY', 'FJ', 'GS', 'IR', 'KZ', 'MG', 'MZ', 'PG', 'SB', 'SY', 'TZ', 'ZA', 'AI', 'BF', 'CD', 'CZ', 'FK', 'GT', 'IS', 'LA', 'MH', 'NA', 'PH', 'SC', 'SZ', 'UA', 'ZM', 'AL', 'BG', 'CF', 'DE', 'FM', 'GU', 'IT', 'LB', 'MK', 'NC', 'PK', 'SD', 'TC', 'UG', 'ZW', 'AM', 'BH', 'CG', 'DJ', 'FO', 'GW', 'JE', 'LC', 'ML', 'NE', 'PL', 'SE', 'TD', 'US', 'AN', 'BI', 'CH', 'DK', 'FR', 'GY', 'JM', 'LI', 'MM', 'NF', 'PN', 'SG', 'TF', 'UY', 'AO', 'BJ', 'CI', 'DM', 'GA', 'HK', 'JO', 'LK', 'MN', 'NG', 'PR', 'SH', 'TG', 'UZ', 'AQ', 'BL', 'CK', 'DO', 'GB', 'HN', 'JP', 'LR', 'MO', 'NI', 'PS', 'SI', 'TH', 'VA', 'AR', 'BM', 'CL', 'DZ', 'GD', 'HR', 'KE', 'LS', 'MP', 'NL', 'PT', 'SK', 'TJ', 'VC', 'AS', 'BN', 'CM', 'EC', 'GE', 'HT', 'KG', 'LT', 'MQ', 'NO', 'PW', 'SL', 'TK', 'VE', 'AT', 'BO', 'CN', 'EE', 'GG', 'HU', 'KH', 'LU', 'MR', 'NP', 'PY', 'SM', 'TL', 'VG', 'AU', 'BR', 'CO', 'EG', 'GH', 'IC', 'KI', 'LV', 'MS', 'NR', 'QA', 'SN', 'TM', 'VI', 'AW', 'BS', 'CR', 'EH', 'GI', 'ID', 'KM', 'LY', 'MT', 'NU', 'RE', 'SO', 'TN', 'VN', 'AX', 'BT', 'CT', 'ER', 'GL', 'IE', 'KN', 'MA', 'MU', 'NZ', 'RO', 'SR', 'TO', 'VU', 'AZ', 'BW', 'CU', 'ES', 'GM', 'IL', 'KP', 'MC', 'MV', 'OM', 'RS', 'SS', 'TR', 'WF'];
66
const checkInterval = 3550;
77

8-
function setBadgeText(text) {
9-
chrome.action.setBadgeText({ text: text });
8+
async function setBadgeText(text) {
9+
let showText = await lp.isSet(KEY_SETTINGS_SHOW_TEXT) ? await lp.get(KEY_SETTINGS_SHOW_TEXT) : true;
10+
if (showText) {
11+
chrome.action.setBadgeText({ text: text });
12+
} else {
13+
chrome.action.setBadgeText({ text: '' });
14+
}
1015
}
1116

1217
function setBadgeTextColor(color) {
@@ -109,6 +114,13 @@ function showChromeNotification(id, title, message, contextMessage, callback) {
109114
chrome.notifications.create(id, { type: 'basic', iconUrl: 'img/icon128.png', title: title, message: message, contextMessage: contextMessage }, callback);
110115
}
111116

117+
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
118+
if (request.method == "refresh") {
119+
fetchGeoLocation().then(() => { sendResponse({ data: 'refreshed' }); });
120+
}
121+
return true; // indicates we will send a response asynchronously
122+
});
123+
112124
setBadgeColor('#000000');
113125
setBadgeTextColor('#ffffff');
114126
setBadgeText('...');

js/options.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,15 @@ async function saveSettings() {
1010
let notificationIPv6Setting = document.getElementById('enableNotificationsIPv6').checked;
1111
let badgeIndicator = document.querySelector("input[name='indicator']:checked").value;
1212
let showFlags = document.getElementById('enableCountryFlags').checked;
13+
let showBadge = document.getElementById('enableCountryBadge').checked;
1314

1415
await lp.set(KEY_SETTINGS_NOTIFICATION, notificationSetting);
1516
await lp.set(KEY_SETTINGS_NOTIFICATION_IPv6, notificationIPv6Setting);
1617
await lp.set(KEY_SETTINGS_COUNTRY_BADGE, badgeIndicator);
1718
await lp.set(KEY_SETTINGS_SHOW_FLAGS, showFlags);
19+
await lp.set(KEY_SETTINGS_SHOW_TEXT, showBadge);
20+
21+
chrome.runtime.sendMessage({ method: "refresh" }, function (response) { });
1822
}
1923

2024
async function loadSettings() {
@@ -35,6 +39,10 @@ async function loadSettings() {
3539
await lp.set(KEY_SETTINGS_SHOW_FLAGS, true);
3640
}
3741

42+
if (!(await lp.isSet(KEY_SETTINGS_SHOW_TEXT))) {
43+
await lp.set(KEY_SETTINGS_SHOW_TEXT, true);
44+
}
45+
3846
let notificationSetting = await lp.get(KEY_SETTINGS_NOTIFICATION);
3947
document.getElementById('enableNotifications').checked = notificationSetting;
4048

@@ -46,4 +54,7 @@ async function loadSettings() {
4654

4755
let showFlags = await lp.get(KEY_SETTINGS_SHOW_FLAGS);
4856
document.getElementById('enableCountryFlags').checked = showFlags;
57+
58+
let showBadge = await lp.get(KEY_SETTINGS_SHOW_TEXT);
59+
document.getElementById('enableCountryBadge').checked = showBadge;
4960
}

options.html

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,18 @@ <h2 class="mdl-card__title-text">Settings</h2>
8585
</label>
8686
</span>
8787
</li>
88+
<li class="mdl-list__item mdl-list__item--two-line">
89+
<span class="mdl-list__item-primary-content">
90+
<i class="material-icons mdl-list__item-icon">language</i>
91+
<span>Show country badge</span>
92+
<span class="mdl-list__item-sub-title">Show corresponding country text code in badge.</span>
93+
</span>
94+
<span class="mdl-list__item-secondary-action">
95+
<label class="mdl-switch mdl-js-switch mdl-js-ripple-effect" for="enableCountryBadge">
96+
<input type="checkbox" id="enableCountryBadge" class="mdl-switch__input" checked />
97+
</label>
98+
</span>
99+
</li>
88100
</ul>
89101
</div>
90102
<div class="mdl-card__actions mdl-card--border">

0 commit comments

Comments
 (0)