Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: ext/background.js

Issue 29375899: Issue 4871 - Start using ESLint for adblockplusui (Closed)
Patch Set: Avoid violating operator-linebreak rule Created March 15, 2017, 4:43 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « devtools-panel.js ('k') | ext/common.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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-2016 Eyeo GmbH 3 * Copyright (C) 2006-2016 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 (function(global) 18 "use strict";
19
20 (function()
19 { 21 {
20 if (!global.ext) 22 if (typeof ext == "undefined")
21 global.ext = {}; 23 window.ext = {};
22 24
23 window.addEventListener("load", function() 25 window.addEventListener("load", () =>
24 { 26 {
25 parent.postMessage({ 27 parent.postMessage({
26 type: "backgroundPageLoaded" 28 type: "backgroundPageLoaded"
27 }, "*"); 29 }, "*");
28 }, false) 30 }, false);
29 31
30 function PageMap() 32 function PageMap()
31 { 33 {
32 this._keys = []; 34 this._keys = [];
33 this._values = []; 35 this._values = [];
34 } 36 }
35 PageMap.prototype = { 37 PageMap.prototype = {
36 keys: function() 38 keys()
37 { 39 {
38 return this._keys.map(function(source) 40 return this._keys.map((source) =>
39 { 41 {
40 return new global.ext.Page(source); 42 return new window.ext.Page(source);
41 }); 43 });
42 }, 44 },
43 45
44 get: function(page) 46 get(page)
45 { 47 {
46 return this._values[this._keys.indexOf(page._source)]; 48 return this._values[this._keys.indexOf(page._source)];
47 }, 49 },
48 50
49 set: function(page, value) 51 set(page, value)
50 { 52 {
51 var index = this._keys.indexOf(page._source); 53 let index = this._keys.indexOf(page._source);
52 if (index < 0) 54 if (index < 0)
53 { 55 {
54 index = this._keys.push(page._source) - 1; 56 index = this._keys.push(page._source) - 1;
55 57
56 var callback = function() 58 let callback = function()
57 { 59 {
58 page._source.removeEventListener("unload", callback, false); 60 page._source.removeEventListener("unload", callback, false);
59 this.delete(page); 61 this.delete(page);
60 }.bind(this); 62 }.bind(this);
61 page._source.addEventListener("unload", callback, false); 63 page._source.addEventListener("unload", callback, false);
62 } 64 }
63 this._values[index] = value; 65 this._values[index] = value;
64 }, 66 },
65 67
66 delete: function(page) 68 delete(page)
67 { 69 {
68 var index = this._keys.indexOf(page._source); 70 let index = this._keys.indexOf(page._source);
69 if (index >= 0) 71 if (index >= 0)
70 { 72 {
71 this._keys.splice(index, 1); 73 this._keys.splice(index, 1);
72 this._values.splice(index, 1); 74 this._values.splice(index, 1);
73 } 75 }
74 } 76 }
75 }; 77 };
76 78
77 global.ext.PageMap = PageMap; 79 window.ext.PageMap = PageMap;
78 80
79 global.ext.showOptions = function(callback) 81 window.ext.showOptions = function(callback)
80 { 82 {
81 if (top.location.href.indexOf("new-options.html") == -1) 83 if (top.location.href.indexOf("new-options.html") == -1)
82 window.open("new-options.html", "_blank"); 84 window.open("new-options.html", "_blank");
83 85
84 if (callback) 86 if (callback)
85 callback(); 87 callback();
86 }; 88 };
87 89
88 global.ext.devtools = { 90 window.ext.devtools = {
89 onCreated: { 91 onCreated: {
90 addListener: function(listener) 92 addListener(listener)
91 { 93 {
92 window.addEventListener("message", function(event) 94 window.addEventListener("message", (event) =>
93 { 95 {
94 if (event.data.type == "devtools") 96 if (event.data.type == "devtools")
95 listener(new ext.Page(event.source)); 97 listener(new ext.Page(event.source));
96 }); 98 });
97 } 99 }
98 } 100 }
99 }; 101 };
100 })(this); 102 }());
OLDNEW
« no previous file with comments | « devtools-panel.js ('k') | ext/common.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld