aboutsummaryrefslogtreecommitdiff
path: root/src/formats/adblockrule.h
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2017-12-23 16:45:31 +0100
committerAqua-sama <aqua@iserlohn-fortress.net>2017-12-23 16:45:31 +0100
commitf7ed63179fa4f99322d6c7716e17466ec4e3e4ce (patch)
treef187d1f73300f1ac0882a4be569d567bb4ed29f7 /src/formats/adblockrule.h
parentRemoved SingleApplication::SessionParam (diff)
downloadsmolbote-f7ed63179fa4f99322d6c7716e17466ec4e3e4ce.tar.xz
Request filter now properly takes hostlists
- hostslist directory is set in browser.filterPath
Diffstat (limited to 'src/formats/adblockrule.h')
-rw-r--r--src/formats/adblockrule.h71
1 files changed, 0 insertions, 71 deletions
diff --git a/src/formats/adblockrule.h b/src/formats/adblockrule.h
deleted file mode 100644
index a56be2a..0000000
--- a/src/formats/adblockrule.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * This file is part of smolbote. It's copyrighted by the contributors recorded
- * in the version control history of the file, available from its original
- * location: git://neueland.iserlohn-fortress.net/smolbote.git
- *
- * SPDX-License-Identifier: GPL-3.0
- */
-
-#ifndef ADBLOCKRULE_H
-#define ADBLOCKRULE_H
-
-#include <QObject>
-#include <QUrl>
-#include "regexp.h"
-#include <QWebEngineUrlRequestInfo>
-
-class BlockerRule : public QObject
-{
- Q_OBJECT
-public:
-
- // https://adblockplus.org/en/filters#options
- enum RuleOption {
- script = 1,
- image = 2,
- stylesheet = 4,
- object = 8,
- xmlhttprequest = 16,
- objectsubrequest = 32,
- subdocument = 64,
- ping = 128,
- websocket = 256,
- document = 512,
- elemhide = 1024,
- generichide = 2048,
- genericblock = 4096,
- other = 8192
- };
- Q_DECLARE_FLAGS(RuleOptions, RuleOption)
-
- explicit BlockerRule(QString rule, QObject *parent = 0);
-
- bool match(const QWebEngineUrlRequestInfo &info);
- bool isValid();
- bool isException();
- QString filter() const;
-
-signals:
-
-public slots:
-
-private:
- void parseOption(const QString &opt);
- bool matchOptions(const QWebEngineUrlRequestInfo &info, const RuleOptions &options);
-
- QString m_filter;
-
- bool m_valid;
- bool m_exception = false;
- bool m_elementRule;
-
- QStringList hostsBlacklist;
- QStringList hostsWhitelist;
- RegExp domainExpression;
- RegExp ruleExpression;
-
- RuleOptions m_blacklistOptions;
- RuleOptions m_whitelistOptions;
-};
-
-#endif // ADBLOCKRULE_H