X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=src%2Fwidgets%2FPrivacyWebEngineView.h;h=c227f428ee2bd1a0aab6a0b89a8708f2a6335519;hb=HEAD;hp=152c56e84f515c5979df2e26fb8b5b6f316dc40f;hpb=8756d450d1d44dd8e840f7e3de7b1d72ca5b7d8e;p=PrivacyBrowserPC.git diff --git a/src/widgets/PrivacyWebEngineView.h b/src/widgets/PrivacyWebEngineView.h index 152c56e..f68a755 100644 --- a/src/widgets/PrivacyWebEngineView.h +++ b/src/widgets/PrivacyWebEngineView.h @@ -1,7 +1,7 @@ /* - * Copyright 2022-2023 Soren Stoutner . + * Copyright 2022-2024 Soren Stoutner . * - * This file is part of Privacy Browser PC . + * This file is part of Privacy Browser PC . * * Privacy Browser PC is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,10 +17,18 @@ * along with Privacy Browser PC. If not, see . */ -#ifndef PRIVACYWEBENGINEVIEW_H -#define PRIVACYWEBENGINEVIEW_H +#ifndef PRIVACY_WEBENGINE_VIEW_H +#define PRIVACY_WEBENGINE_VIEW_H + +// Application headers. +#include "structs/RequestStruct.h" + +// KDE framework headers. +#include // Qt toolkit headers. +#include +#include #include #include #include @@ -32,23 +40,44 @@ class PrivacyWebEngineView : public QWebEngineView public: // The default constructor. - explicit PrivacyWebEngineView(); + explicit PrivacyWebEngineView(QWidget *parentWidgetPointer = nullptr); + + // The public static constants. + static const int ULTRAPRIVACY = 0; + static const int ULTRALIST = 1; + static const int EASYPRIVACY = 2; + static const int EASYLIST = 3; + static const int FANBOYS_ANNOYANCE_LIST = 4; + static const int TOTAL = 5; // The public variables. + QVector blockedRequestsVector = {0, 0, 0, 0, 0, 0}; std::list *cookieListPointer = new std::list; - QString domainSettingsName = QStringLiteral(""); + double defaultZoomFactor = 1.00; + QString domainSettingsName = QLatin1String(""); + bool easyListEnabled = true; + bool easyPrivacyEnabled = true; + bool fanboysAnnoyanceListEnabled = true; + QIcon favoriteIcon = QIcon::fromTheme(QLatin1String("globe"), QIcon::fromTheme(QLatin1String("applications-internet"))); bool findCaseSensitive = false; - QString findString = QStringLiteral(""); + QString findString = QLatin1String(""); QWebEngineFindTextResult findTextResult = QWebEngineFindTextResult(); + int httpAuthenticationDialogsDisplayed = 0; + bool isLoading = false; int loadProgressInt = -1; bool localStorageEnabled = false; + QList *requestsListPointer = new QList; + bool ultraListEnabled = true; + bool ultraPrivacyEnabled = true; // The public functions. void applyDomainSettings(const QString &hostname, const bool reloadWebsite); signals: // The signals. - void updateCookiesAction(const int numberOfCookies) const; + void numberOfCookiesChanged(const int numberOfCookies) const; + void displayHttpPingBlockedDialog(const QString &httpPingUrl) const; + void requestBlocked(const QVector blockedRequestsVector) const; void updateUi(const PrivacyWebEngineView *privacyWebEngineViewPointer) const; public Q_SLOTS: @@ -59,9 +88,15 @@ public Q_SLOTS: private Q_SLOTS: // The private slots. void applyDomainSettingsWithoutReloading(const QString &hostname); + void clearRequestsList(); + void displayHttpPingDialog(const QString &httpPingUrl) const; + void handleAuthenticationRequest(const QUrl &requestUrl, QAuthenticator *authenticatorPointer); + void storeRequest(RequestStruct *requestStructPointer); private: // The private variables. + KLineEdit *passwordLineEditPointer; + KLineEdit *usernameLineEditPointer; QWebEngineProfile *webEngineProfilePointer; QWebEngineSettings *webEngineSettingsPointer;