[Pkg-mozext-commits] [adblock-plus] 01/87: Issue 2396 - Add CSS property filter message responder
David Prévot
taffit at moszumanska.debian.org
Sat Apr 30 17:59:01 UTC 2016
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository adblock-plus.
commit 261b5d3fdc222de946e985b9ebea4cc846239577
Author: Dave Barker <kzar at kzar.co.uk>
Date: Fri Nov 6 15:46:26 2015 +0100
Issue 2396 - Add CSS property filter message responder
---
background.js | 15 ++++++++++-----
messageResponder.js | 29 +++++++++++++++++++++++++++--
2 files changed, 37 insertions(+), 7 deletions(-)
diff --git a/background.js b/background.js
index ff1f2d4..f71b877 100644
--- a/background.js
+++ b/background.js
@@ -63,7 +63,7 @@
Prefs: {
"subscriptions_exceptionsurl": "https://easylist-downloads.adblockplus.org/exceptionrules.txt"
}
- }
+ };
modules.subscriptionClasses = {
Subscription: function(url)
@@ -164,9 +164,8 @@
modules.filterValidation =
{
- parseFilter: function(text)
+ parseFilter: function(text)
{
-
if (params.filterError)
return {error: "Invalid filter"};
return {filter: modules.filterClasses.Filter.fromText(text)};
@@ -199,6 +198,12 @@
}
};
+ modules.cssRules = {
+ CSSRules: {
+ getRulesForDomain: function(domain) { }
+ }
+ };
+
var notifierListeners = [];
modules.filterNotifier = {
FilterNotifier: {
@@ -246,7 +251,7 @@
var filters = [
"@@||alternate.de^$document",
- "@@||der.postillion.com^$document",
+ "@@||der.postillion.com^$document",
"@@||taz.de^$document",
"@@||amazon.de^$document",
"||biglemon.am/bg_poster/banner.jpg",
@@ -281,7 +286,7 @@
global.seenDataCorruption = params.seenDataCorruption;
global.filterlistsReinitialized = params.filterlistsReinitialized;
-
+
if (params.addSubscription)
{
// We don't know how long it will take for the page to fully load
diff --git a/messageResponder.js b/messageResponder.js
index a6886cb..965e014 100644
--- a/messageResponder.js
+++ b/messageResponder.js
@@ -25,10 +25,12 @@
var FilterStorage = require("filterStorage").FilterStorage;
var FilterNotifier = require("filterNotifier").FilterNotifier;
var defaultMatcher = require("matcher").defaultMatcher;
-
+ var CSSRules = require("cssRules").CSSRules;
+
var filterClasses = require("filterClasses");
var Filter = filterClasses.Filter;
var BlockingFilter = filterClasses.BlockingFilter;
+ var RegExpFilter = filterClasses.RegExpFilter;
var Synchronizer = require("synchronizer").Synchronizer;
var subscriptionClasses = require("subscriptionClasses");
@@ -194,13 +196,36 @@
callback(filter instanceof BlockingFilter);
break;
case "filters.get":
+ if (message.what == "cssproperties")
+ {
+ var filters = [];
+ var isFrameWhitelisted = require("whitelisting").isFrameWhitelisted;
+
+ if (!isFrameWhitelisted(sender.page, sender.frame,
+ RegExpFilter.typeMap.DOCUMENT |
+ RegExpFilter.typeMap.ELEMHIDE))
+ {
+ filters = CSSRules.getRulesForDomain(sender.frame.url.hostname);
+ filters = filters.map(function(filter)
+ {
+ return {
+ prefix: filter.selectorPrefix,
+ suffix: filter.selectorSuffix,
+ regexp: filter.regexpString
+ };
+ });
+ }
+ callback(filters);
+ break;
+ }
+
var subscription = Subscription.fromURL(message.subscriptionUrl);
if (!subscription)
{
callback([]);
break;
}
-
+
callback(subscription.filters.map(convertFilter));
break;
case "filters.importRaw":
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/adblock-plus.git
More information about the Pkg-mozext-commits
mailing list