| LEFT | RIGHT | 
|---|
| (no file at all) |  | 
| 1 /* | 1 /* | 
| 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
| 3  * Copyright (C) 2006-present eyeo GmbH | 3  * Copyright (C) 2006-present eyeo GmbH | 
| 4  * | 4  * | 
| 5  * Adblock Plus is free software: you can redistribute it and/or modify | 5  * Adblock Plus is free software: you can redistribute it and/or modify | 
| 6  * it under the terms of the GNU General Public License version 3 as | 6  * it under the terms of the GNU General Public License version 3 as | 
| 7  * published by the Free Software Foundation. | 7  * published by the Free Software Foundation. | 
| 8  * | 8  * | 
| 9  * Adblock Plus is distributed in the hope that it will be useful, | 9  * Adblock Plus is distributed in the hope that it will be useful, | 
| 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
| 12  * GNU General Public License for more details. | 12  * GNU General Public License for more details. | 
| 13  * | 13  * | 
| 14  * You should have received a copy of the GNU General Public License | 14  * You should have received a copy of the GNU General Public License | 
| 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
| 16  */ | 16  */ | 
| 17 | 17 | 
| 18 /** @module stats */ | 18 /** @module stats */ | 
| 19 | 19 | 
| 20 "use strict"; | 20 "use strict"; | 
| 21 | 21 | 
| 22 const {Prefs} = require("prefs"); | 22 const {Prefs} = require("prefs"); | 
| 23 const {BlockingFilter} = require("filterClasses"); | 23 const {BlockingFilter} = require("filterClasses"); | 
| 24 const {FilterNotifier} = require("filterNotifier"); | 24 const {FilterNotifier} = require("filterNotifier"); | 
|  | 25 const {port} = require("messaging"); | 
| 25 | 26 | 
| 26 const badgeColor = "#646464"; | 27 const badgeColor = "#646464"; | 
| 27 let blockedPerPage = new ext.PageMap(); | 28 let blockedPerPage = new ext.PageMap(); | 
| 28 | 29 | 
|  | 30 let getBlockedPerPage = | 
| 29 /** | 31 /** | 
| 30  * Gets the number of requests blocked on the given page. | 32  * Gets the number of requests blocked on the given page. | 
| 31  * | 33  * | 
| 32  * @param  {Page} page | 34  * @param  {Page} page | 
| 33  * @return {Number} | 35  * @return {Number} | 
| 34  */ | 36  */ | 
| 35 exports.getBlockedPerPage = page => blockedPerPage.get(page) || 0; | 37 exports.getBlockedPerPage = page => blockedPerPage.get(page) || 0; | 
| 36 | 38 | 
| 37 // Chrome automatically clears the browser action badge text when the URL of | 39 // Chrome automatically clears the browser action badge text when the URL of | 
| 38 // the tab is updated, but Firefox doesn't. | 40 // the tab is updated, but Firefox doesn't. | 
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 80             color: badgeColor, | 82             color: badgeColor, | 
| 81             number: blocked | 83             number: blocked | 
| 82           }; | 84           }; | 
| 83         } | 85         } | 
| 84       } | 86       } | 
| 85 | 87 | 
| 86       page.browserAction.setBadge(badge); | 88       page.browserAction.setBadge(badge); | 
| 87     } | 89     } | 
| 88   }); | 90   }); | 
| 89 }); | 91 }); | 
|  | 92 | 
|  | 93 port.on("stats.getBlockedPerPage", | 
|  | 94         message => getBlockedPerPage(new ext.Page(message.tab))); | 
| LEFT | RIGHT | 
|---|