| Index: ext/common.js |
| =================================================================== |
| --- a/ext/common.js |
| +++ b/ext/common.js |
| @@ -46,24 +46,28 @@ |
| for (let listener of this._listeners) |
| results.push(listener(...args)); |
| return results; |
| } |
| }; |
| - // Workaround since HTMLCollection and NodeList didn't have iterator support |
| - // before Chrome 51. |
| + // 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(); |
| /* Background page */ |