summaryrefslogtreecommitdiff
path: root/src/adblock/adblockrule.h
Commit message (Collapse)AuthorAgeFilesLines
* Add support for domain option in the ad block moduleBenjamin Poulain2010-08-221-2/+3
| | | | | | | | | | | | | | | | | | Some ads were not filtered because they were incorrectly matched by the whitelist. This is because we ignore options, including the domain restrictions. For example, the white filter: @@||pagead2.googlesyndication.com/pagead/show_ads.js$domain=kde.org would match any page regardless of the domain restriction. So no ads from pagead2.googlesyndication.com were filtered. This patch adds support for "domain" options in the fallback rules (the other AdBlockRuleImpl rejects options). The domain of the frame making the request is now compared to the option to take the right decision. This patch requires Qt 4.7 with a recent QtWebKit 2.0.
* Improve the performance of AdBlockRuleTextMatchImplBenjamin Poulain2010-08-191-2/+3
| | | | | | | | | | Comparing unicode string without case sensitive is rather expensive because each codepoint must be converted, which is non trivial for unicode. This patch introduce a new argument of ::match() taking the encoded url in lowercase. This way, the conversion can be done only once for a lot of rules.
* Split AdBlock rule in two classes to move the implementation out of itBenjamin Poulain2010-08-181-9/+9
| | | | | | | | | | | | In order to make special matching rules, we need specialization of the implementation depending on the type of rule. The previous AdBlockRule was entierly based on regexp. The new one is only a factory to a AdBlockRuleImpl, and delegate everything to this implementation. This will allow faster specialization of the ad block rules in the future.
* Remove the method pattern() from AdBlockRuleBenjamin Poulain2010-08-181-2/+0
| | | | | The method pattern imply the rule is implemented with a regexp, which is what we should try to avoid in the future for performance reasons.
* AdBlock clean up, step 1Andrea Diamantini2010-05-141-3/+0
|
* Include Fixes, first bunchAndrea Diamantini2010-04-301-2/+2
|
* New rekonq_defines.hAndrea Diamantini2010-04-301-0/+3
| | | | Speed up compilation & linking on Win, Lin & Mac. Step 1
* A coding style roundAndrea Diamantini2010-04-301-7/+7
|
* Implemented automatic adblock update.Andrea Diamantini2010-03-131-1/+3
| | | | | | | | | | | | | | This (squashed) commit adds this new feature in rekonq, letting people to simply "forgot" adblock and let rekonq do everything for it I added: - a new (rekonq) adblock widget - an asyncronous method to update rules from the net every TOT days - a better AdBlockManager management. What it is actually missing is the adp protocol support to add new subscriptions to adblock. This will come the next week. For now this part seems stable and needs just testing :)
* tests support for every Qt derived rekonq classAndrea Diamantini2010-02-261-0/+1
|
* Fix copyright for 0.4 beta releaseAndrea Diamantini2010-02-101-1/+1
|
* Save memory!Andrea Diamantini2010-01-211-3/+5
| | | | | | With this commit, we save (at least) 3 bytes for each AdBlockRule defined (and probably more than 3!). In my installation I have about 100 rules... :)
* Better AdBlocking things :)Andrea Diamantini2010-01-141-3/+0
|
* trade-off: speed vs mem saving.Andrea Diamantini2009-12-021-0/+1
| | | | This time I decided for speed..
* We have adblock! (and it works)Andrea Diamantini2009-11-301-0/+82
| | | | | | | | | | | I had a lot of problems implementing it because I started working on assuming 2 things: 1) konqueror implementation works (it's not true, I found a bug! To guess what, try loading current rekonq vs current konqueror against kde-apps.org) 2) Arora's implementation can be easily ported to kcm technology. Another wrong assumption, based on MVP implementation. Sorry for spamming master branch, guys.
* removed current bugged adblock implementation.Andrea Diamantini2009-11-281-82/+0
| | | | Sorry about that :(
* Forgot some files :)Andrea Diamantini2009-11-231-0/+82