| 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-2015 Eyeo GmbH | 3 * Copyright (C) 2006-2015 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 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 131 { | 131 { |
| 132 Array.prototype.forEach.call( | 132 Array.prototype.forEach.call( |
| 133 document.querySelectorAll(highlightedElementsSelector), | 133 document.querySelectorAll(highlightedElementsSelector), |
| 134 unhighlightElement | 134 unhighlightElement |
| 135 ); | 135 ); |
| 136 | 136 |
| 137 highlightedElementsSelector = null; | 137 highlightedElementsSelector = null; |
| 138 } | 138 } |
| 139 } | 139 } |
| 140 | 140 |
| 141 function getURLsFromObjectElement(element) | |
| 142 { | |
| 143 var url = element.getAttribute("data"); | |
| 144 if (url) | |
| 145 return [url]; | |
| 146 | |
| 147 for (var i = 0; i < element.children.length; i++) | |
| 148 { | |
| 149 var child = element.children[i]; | |
| 150 if (child.localName != "param") | |
| 151 continue; | |
| 152 | |
| 153 var name = child.getAttribute("name"); | |
| 154 if (name != "movie" && // Adobe Flash | |
| 155 name != "source" && // Silverlight | |
| 156 name != "src" && // Real Media + Quicktime | |
| 157 name != "FileName") // Windows Media | |
| 158 continue; | |
| 159 | |
| 160 var value = child.getAttribute("value"); | |
| 161 if (!value) | |
| 162 continue; | |
| 163 | |
| 164 return [value]; | |
| 165 } | |
| 166 | |
| 167 return []; | |
| 168 } | |
| 169 | |
| 170 function getURLsFromAttributes(element) | |
| 171 { | |
| 172 var urls = []; | |
| 173 | |
| 174 if (element.src) | |
| 175 urls.push(element.src); | |
| 176 | |
| 177 if (element.srcset) | |
| 178 { | |
| 179 var candidates = element.srcset.split(","); | |
| 180 for (var i = 0; i < candidates.length; i++) | |
| 181 { | |
| 182 var url = candidates[i].trim().replace(/\s+\S+$/, ""); | |
| 183 if (url) | |
| 184 urls.push(url); | |
| 185 } | |
| 186 } | |
| 187 | |
| 188 return urls; | |
| 189 } | |
| 190 | |
| 191 function getURLsFromMediaElement(element) | |
| 192 { | |
| 193 var urls = getURLsFromAttributes(element); | |
| 194 | |
| 195 for (var i = 0; i < element.children.length; i++) | |
| 196 { | |
| 197 var child = element.children[i]; | |
| 198 if (child.localName == "source" || child.localName == "track") | |
| 199 urls.push.apply(urls, getURLsFromAttributes(child)); | |
| 200 } | |
| 201 | |
| 202 if (element.poster) | |
| 203 urls.push(element.poster); | |
| 204 | |
| 205 return urls; | |
| 206 } | |
| 207 | |
| 208 function getURLsFromElement(element) { | |
| 209 switch (element.localName) | |
| 210 { | |
| 211 case "object": | |
| 212 return getURLsFromObjectElement(element); | |
| 213 | |
| 214 case "video": | |
| 215 case "audio": | |
| 216 case "picture": | |
| 217 return getURLsFromMediaElement(element); | |
| 218 } | |
| 219 | |
| 220 return getURLsFromAttributes(element); | |
| 221 } | |
| 222 | |
| 223 // Adds an overlay to an element, which is probably a Flash object | 141 // Adds an overlay to an element, which is probably a Flash object |
| 224 function addElementOverlay(elt) { | 142 function addElementOverlay(elt) { |
| 225 var position = "absolute"; | 143 var position = "absolute"; |
| 226 var offsetX = window.scrollX; | 144 var offsetX = window.scrollX; |
| 227 var offsetY = window.scrollY; | 145 var offsetY = window.scrollY; |
| 228 | 146 |
| 229 for (var e = elt; e; e = e.parentElement) | 147 for (var e = elt; e; e = e.parentElement) |
| 230 { | 148 { |
| 231 var style = getComputedStyle(e); | 149 var style = getComputedStyle(e); |
| 232 | 150 |
| (...skipping 514 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 747 lastRightClickEventValid = false; | 665 lastRightClickEventValid = false; |
| 748 else | 666 else |
| 749 lastRightClickEvent = null; | 667 lastRightClickEvent = null; |
| 750 break; | 668 break; |
| 751 } | 669 } |
| 752 }); | 670 }); |
| 753 | 671 |
| 754 if (window == window.top) | 672 if (window == window.top) |
| 755 ext.backgroundPage.sendMessage({type: "report-html-page"}); | 673 ext.backgroundPage.sendMessage({type: "report-html-page"}); |
| 756 } | 674 } |
| OLD | NEW |