From 502e4d88e0d707984159fc180887370b8ffb63fe Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Fri, 21 Apr 2023 07:48:26 +0200 Subject: [PATCH] fixed #386 --- .../gui/webviewers/webengine/webengineviewer.cpp | 2 -- .../network-web/webengine/webenginepage.cpp | 10 +++++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp b/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp index 83f66a88d..f2e63dad4 100644 --- a/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp +++ b/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp @@ -32,8 +32,6 @@ WebEngineViewer::WebEngineViewer(QWidget* parent) : QWebEngineView(parent), m_br WebEnginePage* page = new WebEnginePage(this); setPage(page); - - // page->profile()->settings()->setAttribute(QWebEngineSettings::WebAttribute::ScrollAnimatorEnabled, true); } bool WebEngineViewer::event(QEvent* event) { diff --git a/src/librssguard/network-web/webengine/webenginepage.cpp b/src/librssguard/network-web/webengine/webenginepage.cpp index 34b46e567..dffe8c033 100644 --- a/src/librssguard/network-web/webengine/webenginepage.cpp +++ b/src/librssguard/network-web/webengine/webenginepage.cpp @@ -47,7 +47,15 @@ void WebEnginePage::hideUnwantedElements() { } bool WebEnginePage::acceptNavigationRequest(const QUrl& url, NavigationType type, bool is_main_frame) { - const RootItem* root = view()->root(); + if (type == NavigationType::NavigationTypeLinkClicked) { + bool open_externally_now = + qApp->settings()->value(GROUP(Browser), SETTING(Browser::OpenLinksInExternalBrowserRightAway)).toBool(); + + if (open_externally_now) { + qApp->web()->openUrlInExternalBrowser(url.toString()); + return false; + } + } if (is_main_frame) { auto blocked = qApp->web()->adBlock()->block(AdblockRequestInfo(url));