diff options
| author | Akshay Nair <phenax5@gmail.com> | 2025-05-01 20:43:12 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2025-05-02 16:20:09 +0530 |
| commit | fab5f4d2fd80eb288265c64ba390460ac974ee81 (patch) | |
| tree | aced5984fceced0e621a885c8a38e8ddf88cd203 /src | |
| parent | 4afe7914a4d4f59703d14f9ba8470ed87831ddcb (diff) | |
| download | null-browser-fab5f4d2fd80eb288265c64ba390460ac974ee81.tar.gz null-browser-fab5f4d2fd80eb288265c64ba390460ac974ee81.zip | |
Make window requests open a tab instead
Diffstat (limited to '')
| -rw-r--r-- | src/widgets/WebViewStack.cpp | 7 | ||||
| -rw-r--r-- | src/widgets/WebViewStack.hpp | 3 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/widgets/WebViewStack.cpp b/src/widgets/WebViewStack.cpp index 53224c5..c48a363 100644 --- a/src/widgets/WebViewStack.cpp +++ b/src/widgets/WebViewStack.cpp @@ -80,7 +80,7 @@ QList<WebViewData> WebViewStack::get_webview_list() { return urls; } -void WebViewStack::on_new_webview_request(const QWebEngineNewWindowRequest &request) { +void WebViewStack::on_new_webview_request(QWebEngineNewWindowRequest &request) { switch (request.destination()) { case QWebEngineNewWindowRequest::InNewTab: open_url(request.requestedUrl(), OpenType::OpenUrlInView); @@ -90,7 +90,10 @@ void WebViewStack::on_new_webview_request(const QWebEngineNewWindowRequest &requ break; case QWebEngineNewWindowRequest::InNewWindow: case QWebEngineNewWindowRequest::InNewDialog: - emit new_window_requested(request.requestedUrl()); + // NOTE: Using tabs for now instead of windows + auto *webview = create_new_webview(request.requestedUrl(), true); + request.openIn(webview->page()); + // emit new_window_requested(request.requestedUrl()); break; } } diff --git a/src/widgets/WebViewStack.hpp b/src/widgets/WebViewStack.hpp index 6e17753..1b8b288 100644 --- a/src/widgets/WebViewStack.hpp +++ b/src/widgets/WebViewStack.hpp @@ -3,6 +3,7 @@ #include <QStackedLayout> #include <QWebEngineProfile> #include <cstdint> +#include <functional> #include <qwebengineprofile.h> #include <vector> @@ -72,7 +73,7 @@ public slots: void scroll_to_bottom(WebViewId webview_id); protected slots: - void on_new_webview_request(const QWebEngineNewWindowRequest &request); + void on_new_webview_request(QWebEngineNewWindowRequest &request); private: const Configuration *configuration; |
