* along with Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef FILTERLISTHELPER_H
-#define FILTERLISTHELPER_H
+#ifndef FILTER_LIST_HELPER_H
+#define FILTER_LIST_HELPER_H
// Application headers.
#include "structs/FilterListStruct.h"
#include "structs/RequestStruct.h"
-#include "structs/UrlStruct.h"
+#include "widgets/PrivacyWebEngineView.h"
// Qt framework headers.
#include <QString>
// The public static sublist constant integers.
static const int MAIN_ALLOWLIST = 0;
- static const int MAIN_BLOCKLIST = 1;
- static const int INITIAL_DOMAIN_BLOCKLIST = 2;
- static const int REGULAR_EXPRESSION_BLOCKLIST = 3;
+ static const int INITIAL_DOMAIN_ALLOWLIST = 1;
+ static const int REGULAR_EXPRESSION_ALLOWLIST = 2;
+ static const int MAIN_BLOCKLIST = 3;
+ static const int INITIAL_DOMAIN_BLOCKLIST = 4;
+ static const int REGULAR_EXPRESSION_BLOCKLIST = 5;
// The public variables.
FilterListStruct *easyListStructPointer;
FilterListStruct *ultraPrivacyStructPointer;
// The public functions.
- bool checkFilterLists(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer) const;
+ bool checkFilterLists(PrivacyWebEngineView *privacyWebEngineViewPointer, QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer) const;
QString getDispositionString(int dispositionInt) const;
QString getNavigationTypeString(int navigationTypeInt) const;
- QString getRequestOptionDispositionString(const FilterOptionEnum::Disposition filterOptionDisposition) const;
+ QString getRequestOptionDispositionString(const FilterOptionDisposition filterOptionDisposition) const;
QString getResourceTypeString(int resourceTypeInt) const;
QString getSublistName(int sublistInt) const;
// The private translated sublist strings.
QString MAIN_ALLOWLIST_STRING;
+ QString INITIAL_DOMAIN_ALLOWLIST_STRING;
+ QString REGULAR_EXPRESSION_ALLOWLIST_STRING;
QString MAIN_BLOCKLIST_STRING;
QString INITIAL_DOMAIN_BLOCKLIST_STRING;
QString REGULAR_EXPRESSION_BLOCKLIST_STRING;
// The private functions.
- bool blockRequest(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
- bool checkAppliedEntry(QWebEngineUrlRequestInfo &urlRequestInfo, UrlStruct &urlStruct, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
- EntryStruct *entryStructPointer, QString &urlString, QString &urlStringWithSeparators) const;
- bool checkDomain(QWebEngineUrlRequestInfo &urlRequestInfo, UrlStruct &urlStruct, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
+ bool checkAppliedEntry(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, QString urlString,
+ const RequestUrlType requestUrlType, EntryStruct *entryStructPointer) const;
+ bool checkDomain(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
EntryStruct *entryStructPointer) const;
- bool checkIndividualList(QWebEngineUrlRequestInfo &urlRequestInfo, UrlStruct &urlStruct, RequestStruct *requestStructPointer, FilterListStruct *filterListStructPointer) const;
- bool checkRegularExpression(QWebEngineUrlRequestInfo &urlRequestInfo, UrlStruct &urlStruct, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
+ bool checkIndividualList(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, FilterListStruct *filterListStructPointer) const;
+ bool checkRegularExpression(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
EntryStruct *entryStructPointer) const;
bool checkRequestOptions(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
EntryStruct *entryStructPointer) const;
- bool checkThirdParty(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const bool isThirdPartyRequest, const QString &filterListTitle, const int sublistInt,
- EntryStruct *entryStructPointer) const;
+ bool checkThirdParty(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
FilterListStruct* populateFilterList(const QString &filterListFileName) const;
- void populateRequestStruct(RequestStruct *requestStructPointer, const int disposition, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
void prepareFilterListString(QString &filterListString, EntryStruct *entryStructPointer) const;
+ bool processRequest(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
};
#endif