]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/widgets/PrivacyWebEngineView.h
Handle HTTP authentication. https://redmine.stoutner.com/issues/898
[PrivacyBrowserPC.git] / src / widgets / PrivacyWebEngineView.h
index c0c47134fff55f5becabbdb5708294bf5e5668d5..4f621ce86097009c2b680d668285f35c1b3b69d3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2022-2023 Soren Stoutner <soren@stoutner.com>.
+ * Copyright 2022-2024 Soren Stoutner <soren@stoutner.com>.
  *
  * This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-pc>.
  *
@@ -20,6 +20,9 @@
 #ifndef PRIVACYWEBENGINEVIEW_H
 #define PRIVACYWEBENGINEVIEW_H
 
+// KDE framework headers.
+#include <KLineEdit>
+
 // Qt toolkit headers.
 #include <QIcon>
 #include <QNetworkCookie>
@@ -33,15 +36,15 @@ class PrivacyWebEngineView : public QWebEngineView
 
 public:
     // The default constructor.
-    explicit PrivacyWebEngineView();
+    explicit PrivacyWebEngineView(QWidget *parentWidgetPointer = nullptr);
 
     // The public variables.
     std::list<QNetworkCookie> *cookieListPointer = new std::list<QNetworkCookie>;
     double defaultZoomFactor = 1.00;
-    QString domainSettingsName = QStringLiteral("");
-    QIcon favoriteIcon = QIcon::fromTheme(QStringLiteral("globe"));
+    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();
     bool isLoading = false;
     int loadProgressInt = -1;
@@ -65,9 +68,12 @@ private Q_SLOTS:
     // The private slots.
     void applyDomainSettingsWithoutReloading(const QString &hostname);
     void displayHttpPingDialog(const QString &httpPingUrl) const;
+    void handleAuthenticationRequest(const QUrl &requestUrl, QAuthenticator *authenticatorPointer);
 
 private:
     // The private variables.
+    KLineEdit *passwordLineEditPointer;
+    KLineEdit *usernameLineEditPointer;
     QWebEngineProfile *webEngineProfilePointer;
     QWebEngineSettings *webEngineSettingsPointer;