| OLD | NEW | 
|---|
| 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 | 
| (...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 476 { | 476 { | 
| 477   return patterns.some(pattern => pattern.dependsOnCharacterData); | 477   return patterns.some(pattern => pattern.dependsOnCharacterData); | 
| 478 } | 478 } | 
| 479 | 479 | 
| 480 function ElemHideEmulation(addSelectorsFunc, hideElemsFunc) | 480 function ElemHideEmulation(addSelectorsFunc, hideElemsFunc) | 
| 481 { | 481 { | 
| 482   this.document = document; | 482   this.document = document; | 
| 483   this.addSelectorsFunc = addSelectorsFunc; | 483   this.addSelectorsFunc = addSelectorsFunc; | 
| 484   this.hideElemsFunc = hideElemsFunc; | 484   this.hideElemsFunc = hideElemsFunc; | 
| 485   this.observer = new MutationObserver(this.observe.bind(this)); | 485   this.observer = new MutationObserver(this.observe.bind(this)); | 
|  | 486   this.useInlineStyles = true; | 
| 486 } | 487 } | 
| 487 | 488 | 
| 488 ElemHideEmulation.prototype = { | 489 ElemHideEmulation.prototype = { | 
| 489   isSameOrigin(stylesheet) | 490   isSameOrigin(stylesheet) | 
| 490   { | 491   { | 
| 491     try | 492     try | 
| 492     { | 493     { | 
| 493       return new URL(stylesheet.href).origin == this.document.location.origin; | 494       return new URL(stylesheet.href).origin == this.document.location.origin; | 
| 494     } | 495     } | 
| 495     catch (e) | 496     catch (e) | 
| (...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 645 | 646 | 
| 646         pattern = patterns.shift(); | 647         pattern = patterns.shift(); | 
| 647 | 648 | 
| 648         generator = evaluate(pattern.selectors, 0, "", | 649         generator = evaluate(pattern.selectors, 0, "", | 
| 649                              this.document, cssStyles); | 650                              this.document, cssStyles); | 
| 650       } | 651       } | 
| 651       for (let selector of generator) | 652       for (let selector of generator) | 
| 652       { | 653       { | 
| 653         if (selector != null) | 654         if (selector != null) | 
| 654         { | 655         { | 
| 655           if (pattern.isSelectorHidingOnlyPattern()) | 656           if (!this.useInlineStyles || | 
|  | 657               pattern.isSelectorHidingOnlyPattern()) | 
| 656           { | 658           { | 
| 657             selectors.push(selector); | 659             selectors.push(selector); | 
| 658             selectorFilters.push(pattern.text); | 660             selectorFilters.push(pattern.text); | 
| 659           } | 661           } | 
| 660           else | 662           else | 
| 661           { | 663           { | 
| 662             for (let element of this.document.querySelectorAll(selector)) | 664             for (let element of this.document.querySelectorAll(selector)) | 
| 663             { | 665             { | 
| 664               elements.push(element); | 666               elements.push(element); | 
| 665               elementFilters.push(pattern.text); | 667               elementFilters.push(pattern.text); | 
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 809           characterData: shouldObserveCharacterData(this.patterns), | 811           characterData: shouldObserveCharacterData(this.patterns), | 
| 810           subtree: true | 812           subtree: true | 
| 811         } | 813         } | 
| 812       ); | 814       ); | 
| 813       this.document.addEventListener("load", this.onLoad.bind(this), true); | 815       this.document.addEventListener("load", this.onLoad.bind(this), true); | 
| 814     } | 816     } | 
| 815   } | 817   } | 
| 816 }; | 818 }; | 
| 817 | 819 | 
| 818 exports.ElemHideEmulation = ElemHideEmulation; | 820 exports.ElemHideEmulation = ElemHideEmulation; | 
| OLD | NEW | 
|---|