| Index: lib/stats.js |
| diff --git a/lib/stats.js b/lib/stats.js |
| index 149a7b7a1445103539edc967858622fb6dd62bee..2101b9d8909ebc9d0a8b7ac120723cf250a0bbba 100644 |
| --- a/lib/stats.js |
| +++ b/lib/stats.js |
| @@ -36,6 +36,17 @@ let getBlockedPerPage = |
| */ |
| exports.getBlockedPerPage = page => blockedPerPage.get(page) || 0; |
| +function updateBadge(page, blockedCount) |
| +{ |
| + if (Prefs.show_statsinicon) |
| + { |
| + page.browserAction.setBadge(blockedCount && { |
| + color: badgeColor, |
| + number: blockedCount |
| + }); |
| + } |
| +} |
| + |
| // Once nagivation for the tab has been committed to (e.g. it's no longer |
| // being prerendered) we clear its badge, or if some requests were already |
| // blocked beforehand we display those on the badge now. |
| @@ -46,10 +57,7 @@ browser.webNavigation.onCommitted.addListener(details => |
| let page = new ext.Page({id: details.tabId}); |
| let blocked = blockedPerPage.get(page); |
| - page.browserAction.setBadge(blocked && { |
| - color: badgeColor, |
| - number: blocked |
| - }); |
| + updateBadge(page, blocked); |
| } |
| }); |
| @@ -62,16 +70,9 @@ FilterNotifier.on("filter.hitCount", (filter, newValue, oldValue, tabIds) => |
| { |
| let page = new ext.Page({id: tabId}); |
| let blocked = blockedPerPage.get(page) || 0; |
| - blockedPerPage.set(page, ++blocked); |
| - // Update number in icon |
| - if (Prefs.show_statsinicon) |
| - { |
| - page.browserAction.setBadge({ |
| - color: badgeColor, |
| - number: blocked |
| - }); |
| - } |
| + blockedPerPage.set(page, ++blocked); |
| + updateBadge(page, blocked); |
| } |
| Prefs.blocked_total++; |
| @@ -84,21 +85,11 @@ Prefs.on("show_statsinicon", () => |
| for (let tab of tabs) |
| { |
| let page = new ext.Page(tab); |
| - let badge = null; |
| if (Prefs.show_statsinicon) |
| - { |
| - let blocked = blockedPerPage.get(page); |
| - if (blocked) |
| - { |
| - badge = { |
| - color: badgeColor, |
| - number: blocked |
| - }; |
| - } |
| - } |
| - |
| - page.browserAction.setBadge(badge); |
| + updateBadge(page, blockedPerPage.get(page)); |
| + else |
| + page.browserAction.setBadge(null); |
| } |
| }); |
| }); |