From 0250559bcf5764fb8cf3a8ccc4e330b8ed855f96 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Tue, 24 Jan 2017 16:09:07 +0100 Subject: Blocker UI --- src/webengine/adblockinterceptor.cpp | 56 ------------------------------------ 1 file changed, 56 deletions(-) delete mode 100644 src/webengine/adblockinterceptor.cpp (limited to 'src/webengine/adblockinterceptor.cpp') diff --git a/src/webengine/adblockinterceptor.cpp b/src/webengine/adblockinterceptor.cpp deleted file mode 100644 index 02bf2f4..0000000 --- a/src/webengine/adblockinterceptor.cpp +++ /dev/null @@ -1,56 +0,0 @@ -#include "adblockinterceptor.h" - -#include -#include - -AdBlockInterceptor::AdBlockInterceptor(QObject *parent) : - QWebEngineUrlRequestInterceptor(parent) -{ - loadSubscription("blocklist.txt"); -} - -void AdBlockInterceptor::interceptRequest(QWebEngineUrlRequestInfo &info) -{ - bool blocked = false; - for(AdBlockRule *rule : m_urlBlacklist) { - if(rule->match(info.requestUrl())) { - info.block(true); - blocked = true; - } - } - - qDebug("%i %i %i %s %s", blocked, info.navigationType(), info.resourceType(), qUtf8Printable(info.requestMethod()), qUtf8Printable(info.requestUrl().toString())); -} - -int AdBlockInterceptor::loadSubscription(const QString &subpath) -{ - QFile subfile(subpath); - if(!subfile.open(QIODevice::ReadOnly | QIODevice::Text)) { - qDebug("AdBlockInterceptor: cannot load subscription: %s", qUtf8Printable(subpath)); - return -1; - } - - QTextStream subscription(&subfile); - - QString header = subscription.readLine(); - if(header != "[Adblock Plus 2.0]") { - qDebug("AdBlockInterceptor: invalid format of subscription: %s", qUtf8Printable(subpath)); - return -1; - } - - int rules = 0; - - while(!subscription.atEnd()) { - QString line = subscription.readLine(); - if(!line.isEmpty() && !line.startsWith('!')) { - // The line is not a comment - AdBlockRule *rule = new AdBlockRule(line, this); - m_urlBlacklist.append(rule); - rules++; - } - } - - qDebug("Loaded %i rules from subscription %s", rules, qUtf8Printable(subpath)); - - return rules; -} -- cgit v1.2.1