| LEFT | RIGHT | 
|---|
| 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 "use strict"; | 18 "use strict"; | 
| 19 | 19 | 
| 20 let typeMap = { | 20 const typeMap = { | 
| 21   "img": "IMAGE", | 21   "img": "IMAGE", | 
| 22   "input": "IMAGE", | 22   "input": "IMAGE", | 
| 23   "picture": "IMAGE", | 23   "picture": "IMAGE", | 
| 24   "audio": "MEDIA", | 24   "audio": "MEDIA", | 
| 25   "video": "MEDIA", | 25   "video": "MEDIA", | 
| 26   "frame": "SUBDOCUMENT", | 26   "frame": "SUBDOCUMENT", | 
| 27   "iframe": "SUBDOCUMENT", | 27   "iframe": "SUBDOCUMENT", | 
| 28   "object": "OBJECT", | 28   "object": "OBJECT", | 
| 29   "embed": "OBJECT" | 29   "embed": "OBJECT" | 
| 30 }; | 30 }; | 
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 75   } | 75   } | 
| 76 | 76 | 
| 77   return urls; | 77   return urls; | 
| 78 } | 78 } | 
| 79 | 79 | 
| 80 function getURLsFromMediaElement(element) | 80 function getURLsFromMediaElement(element) | 
| 81 { | 81 { | 
| 82   let urls = getURLsFromAttributes(element); | 82   let urls = getURLsFromAttributes(element); | 
| 83 | 83 | 
| 84   for (let child of element.children) | 84   for (let child of element.children) | 
|  | 85   { | 
| 85     if (child.localName == "source" || child.localName == "track") | 86     if (child.localName == "source" || child.localName == "track") | 
| 86       urls.push.apply(urls, getURLsFromAttributes(child)); | 87       urls.push.apply(urls, getURLsFromAttributes(child)); | 
|  | 88   } | 
| 87 | 89 | 
| 88   if (element.poster) | 90   if (element.poster) | 
| 89     urls.push(element.poster); | 91     urls.push(element.poster); | 
| 90 | 92 | 
| 91   return urls; | 93   return urls; | 
| 92 } | 94 } | 
| 93 | 95 | 
| 94 function getURLsFromElement(element) | 96 function getURLsFromElement(element) | 
| 95 { | 97 { | 
| 96   let urls; | 98   let urls; | 
| (...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 572       checkLoaded(); | 574       checkLoaded(); | 
| 573     }); | 575     }); | 
| 574   } | 576   } | 
| 575 }; | 577 }; | 
| 576 | 578 | 
| 577 if (document instanceof HTMLDocument) | 579 if (document instanceof HTMLDocument) | 
| 578 { | 580 { | 
| 579   checkSitekey(); | 581   checkSitekey(); | 
| 580   wrapWebSocket(); | 582   wrapWebSocket(); | 
| 581 | 583 | 
| 582   let elemhide = new ElemHide(); | 584   // This variable is also used by our other content scripts, outside of the | 
|  | 585   // current scope. | 
|  | 586   var elemhide = new ElemHide(); | 
| 583   elemhide.apply(); | 587   elemhide.apply(); | 
| 584 | 588 | 
| 585   document.addEventListener("error", event => | 589   document.addEventListener("error", event => | 
| 586   { | 590   { | 
| 587     checkCollapse(event.target); | 591     checkCollapse(event.target); | 
| 588   }, true); | 592   }, true); | 
| 589 | 593 | 
| 590   document.addEventListener("load", event => | 594   document.addEventListener("load", event => | 
| 591   { | 595   { | 
| 592     let element = event.target; | 596     let element = event.target; | 
| 593     if (/^i?frame$/.test(element.localName)) | 597     if (/^i?frame$/.test(element.localName)) | 
| 594       checkCollapse(element); | 598       checkCollapse(element); | 
| 595   }, true); | 599   }, true); | 
| 596 } | 600 } | 
| LEFT | RIGHT | 
|---|