Index: ext/common.js |
=================================================================== |
--- a/ext/common.js |
+++ b/ext/common.js |
@@ -14,22 +14,16 @@ |
* You should have received a copy of the GNU General Public License |
* along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
*/ |
"use strict"; |
(function() |
{ |
- // Both Edge and Mozilla Web Extensions use the namespace |
- // 'browser' instead of 'chrome'. Edge has chrome namespace defined, |
- // in some cases, but only with one property: 'app'. |
- if (typeof chrome == "undefined" || typeof chrome.extension == "undefined") |
- window.chrome = window.browser; |
- |
window.ext = {}; |
let EventTarget = ext._EventTarget = function() |
{ |
this._listeners = new Set(); |
}; |
EventTarget.prototype = { |
addListener(listener) |
@@ -46,25 +40,13 @@ |
for (let listener of this._listeners) |
results.push(listener(...args)); |
return results; |
} |
}; |
- // Workaround since HTMLCollection, NodeList, StyleSheet and |
- // CSSRuleList didn't have iterator support before Chrome 51. |
- // https://bugs.chromium.org/p/chromium/issues/detail?id=401699 |
- let arrayIterator = Array.prototype[Symbol.iterator]; |
- if (!(Symbol.iterator in HTMLCollection.prototype)) |
- HTMLCollection.prototype[Symbol.iterator] = arrayIterator; |
- if (!(Symbol.iterator in NodeList.prototype)) |
- NodeList.prototype[Symbol.iterator] = arrayIterator; |
- if (!(Symbol.iterator in StyleSheetList.prototype)) |
- StyleSheetList.prototype[Symbol.iterator] = arrayIterator; |
- if (!(Symbol.iterator in CSSRuleList.prototype)) |
- CSSRuleList.prototype[Symbol.iterator] = arrayIterator; |
/* Message passing */ |
ext.onMessage = new ext._EventTarget(); |
}()); |