| 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-2017 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  * | 
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  147  |  147  | 
|  148 FilterNotifier.on("subscription.added", onFilterChange); |  148 FilterNotifier.on("subscription.added", onFilterChange); | 
|  149 FilterNotifier.on("subscription.removed", onFilterChange); |  149 FilterNotifier.on("subscription.removed", onFilterChange); | 
|  150 FilterNotifier.on("subscription.updated", onFilterChange); |  150 FilterNotifier.on("subscription.updated", onFilterChange); | 
|  151 FilterNotifier.on("subscription.disabled", arg => onFilterChange(arg, true)); |  151 FilterNotifier.on("subscription.disabled", arg => onFilterChange(arg, true)); | 
|  152 FilterNotifier.on("filter.added", onFilterChange); |  152 FilterNotifier.on("filter.added", onFilterChange); | 
|  153 FilterNotifier.on("filter.removed", onFilterChange); |  153 FilterNotifier.on("filter.removed", onFilterChange); | 
|  154 FilterNotifier.on("filter.disabled", arg => onFilterChange(arg, true)); |  154 FilterNotifier.on("filter.disabled", arg => onFilterChange(arg, true)); | 
|  155 FilterNotifier.on("load", onFilterChange); |  155 FilterNotifier.on("load", onFilterChange); | 
|  156  |  156  | 
|  157 port.on("request.websocket", (msg, sender) => |  157 // Before Chrome 58, the webRequest API didn't intercept WebSocket connections, | 
 |  158 // (see https://crbug.com/129353). Hence we patched the WebSocket object as a | 
 |  159 // workaround. WebSocket connections detected by this workaround are handled | 
 |  160 // below. | 
 |  161 if (!("WEBSOCKET" in chrome.webRequest.ResourceType)) | 
|  158 { |  162 { | 
|  159   return ext.webRequest.onBeforeRequest._dispatch( |  163   port.on("request.websocket", (msg, sender) => | 
|  160     new URL(msg.url), |  164   { | 
|  161     "WEBSOCKET", |  165     return ext.webRequest.onBeforeRequest._dispatch( | 
|  162     sender.page, |  166       new URL(msg.url), | 
|  163     sender.frame |  167       "WEBSOCKET", | 
|  164   ).indexOf(false) != -1; |  168       sender.page, | 
|  165 }); |  169       sender.frame | 
 |  170     ).indexOf(false) != -1; | 
 |  171   }); | 
 |  172 } | 
| LEFT | RIGHT |