X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=src%2Fwidgets%2FPrivacyWebEngineView.h;h=95cc69f5b67d8397b030c27a6f987c5d8e7fc715;hb=refs%2Fheads%2Fmaster;hp=c227f428ee2bd1a0aab6a0b89a8708f2a6335519;hpb=aa9a6b20db5e2c808b390b62704f28bd649e283c;p=PrivacyBrowserPC.git diff --git a/src/widgets/PrivacyWebEngineView.h b/src/widgets/PrivacyWebEngineView.h index c227f42..b87a368 100644 --- a/src/widgets/PrivacyWebEngineView.h +++ b/src/widgets/PrivacyWebEngineView.h @@ -1,7 +1,7 @@ /* - * Copyright © 2022 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 @@ -20,7 +20,15 @@ #ifndef PRIVACYWEBENGINEVIEW_H #define PRIVACYWEBENGINEVIEW_H +// Application headers. +#include "structs/RequestStruct.h" + +// KDE framework headers. +#include + // Qt toolkit headers. +#include +#include #include #include #include @@ -32,28 +40,56 @@ class PrivacyWebEngineView : public QWebEngineView public: // The default constructor. - explicit PrivacyWebEngineView(); + explicit PrivacyWebEngineView(QWidget *parentWidgetPointer = nullptr); // The public variables. + int blockedRequests = 0; std::list *cookieListPointer = new std::list; - QString domainSettingsName = QStringLiteral(""); + double defaultZoomFactor = 1.00; + QString domainSettingsName = QLatin1String(""); + 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; + + // 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 int blockedRequests) const; + void updateUi(const PrivacyWebEngineView *privacyWebEngineViewPointer) const; public Q_SLOTS: // The public slots. void addCookieToList(const QNetworkCookie &cookie) const; void removeCookieFromList(const QNetworkCookie &cookie) const; +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; + protected: // The protected functions. + void contextMenuEvent(QContextMenuEvent *contextMenuEvent) override; QWebEngineView* createWindow(QWebEnginePage::WebWindowType webWindowType) override; }; #endif