From 041f8933be28d0fcff1196792f30c5ca3176c155 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 16 Mar 2025 15:28:00 +0530 Subject: Add configuration class --- include/Configuration.hpp | 13 +++++++++++++ include/widgets/MainWindow.hpp | 2 ++ include/widgets/WebViewStack.hpp | 11 ++++++----- 3 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 include/Configuration.hpp (limited to 'include') diff --git a/include/Configuration.hpp b/include/Configuration.hpp new file mode 100644 index 0000000..cc68803 --- /dev/null +++ b/include/Configuration.hpp @@ -0,0 +1,13 @@ +#pragma once + +#include +#include + +class Configuration : public QObject { + Q_OBJECT + +public: + using QObject::QObject; + + QUrl newTabUrl = QUrl("https://lite.duckduckgo.com"); +}; diff --git a/include/widgets/MainWindow.hpp b/include/widgets/MainWindow.hpp index f77ed60..559a119 100644 --- a/include/widgets/MainWindow.hpp +++ b/include/widgets/MainWindow.hpp @@ -5,6 +5,7 @@ #include #include +#include "Configuration.hpp" #include "InputMediator.hpp" class MainWindow : public QMainWindow { @@ -16,4 +17,5 @@ private: private: InputMediator *inputMediator; + Configuration configuration; }; diff --git a/include/widgets/WebViewStack.hpp b/include/widgets/WebViewStack.hpp index faf4562..34b1658 100644 --- a/include/widgets/WebViewStack.hpp +++ b/include/widgets/WebViewStack.hpp @@ -5,6 +5,7 @@ #include #include +#include "Configuration.hpp" #include "completion/TabsModel.hpp" enum OpenType { OpenUrl, OpenUrlInTab, OpenUrlInBgTab, OpenUrlInWindow }; @@ -16,11 +17,11 @@ public: inline static const QUrl NewtabURL = QUrl("about:blank"); public: - WebViewStack(QWebEngineProfile *profile = new QWebEngineProfile, + WebViewStack(const Configuration *configuration, + QWebEngineProfile *profile = new QWebEngineProfile, QWidget *parent = nullptr); - void openUrl(QUrl url = WebViewStack::NewtabURL, - OpenType openType = OpenType::OpenUrl); + void openUrl(QUrl url, OpenType openType = OpenType::OpenUrl); std::vector urls(); u_int32_t currentWebViewIndex(); @@ -38,13 +39,13 @@ public: private: void setCurrentUrl(QUrl url); - QWebEngineView *createNewWebView(QUrl url = WebViewStack::NewtabURL, - bool focus = false); + QWebEngineView *createNewWebView(QUrl url, bool focus = false); private slots: void onNewWebViewRequest(QWebEngineNewWindowRequest &request); private: + const Configuration *configuration; QWebEngineProfile *profile; QStackedLayout *layout; QList webViewList; -- cgit v1.3.1