aboutsummaryrefslogtreecommitdiff
path: root/src/widgets
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-05-01 20:43:12 +0530
committerAkshay Nair <phenax5@gmail.com>2025-05-02 16:20:09 +0530
commitfab5f4d2fd80eb288265c64ba390460ac974ee81 (patch)
treeaced5984fceced0e621a885c8a38e8ddf88cd203 /src/widgets
parent4afe7914a4d4f59703d14f9ba8470ed87831ddcb (diff)
downloadnull-browser-fab5f4d2fd80eb288265c64ba390460ac974ee81.tar.gz
null-browser-fab5f4d2fd80eb288265c64ba390460ac974ee81.zip
Make window requests open a tab instead
Diffstat (limited to '')
-rw-r--r--src/widgets/WebViewStack.cpp7
-rw-r--r--src/widgets/WebViewStack.hpp3
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;