From 43173c6b1612f76fc9e8d42eff37f36930a15142 Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Tue, 23 Apr 2024 08:22:43 +0200 Subject: [PATCH] use proper URL when extracting article --- resources/skins/nudus-base/html_style_base.scss | 3 ++- resources/skins/nudus-dark/html_style.css | 3 ++- resources/skins/nudus-light/html_style.css | 3 ++- src/librssguard/gui/webbrowser.cpp | 16 ++++++++++++++-- .../gui/webviewers/webengine/webengineviewer.cpp | 2 ++ 5 files changed, 22 insertions(+), 5 deletions(-) diff --git a/resources/skins/nudus-base/html_style_base.scss b/resources/skins/nudus-base/html_style_base.scss index 761de1b07..d8a9322a3 100644 --- a/resources/skins/nudus-base/html_style_base.scss +++ b/resources/skins/nudus-base/html_style_base.scss @@ -48,6 +48,7 @@ body { -webkit-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; + padding: 10px !important; min-height: 100vh; } @@ -354,7 +355,7 @@ summary { // m* == message* .rssguard-mwrapper { - padding: $base-unit !important; + padding: 0px !important; .rssguard-mhead { diff --git a/resources/skins/nudus-dark/html_style.css b/resources/skins/nudus-dark/html_style.css index 744437b55..0f019d934 100644 --- a/resources/skins/nudus-dark/html_style.css +++ b/resources/skins/nudus-dark/html_style.css @@ -17,6 +17,7 @@ body { -webkit-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; + padding: 10px !important; min-height: 100vh; } ::selection { @@ -238,7 +239,7 @@ summary:focus { outline: 1px solid #647595; } .rssguard-mwrapper { - padding: 10px !important; } + padding: 0px !important; } .rssguard-mwrapper .rssguard-mhead .msmall, .rssguard-mwrapper .rssguard-mhead .mlinks { opacity: .8; } diff --git a/resources/skins/nudus-light/html_style.css b/resources/skins/nudus-light/html_style.css index 7c0fe44ff..d8a8a0fcc 100644 --- a/resources/skins/nudus-light/html_style.css +++ b/resources/skins/nudus-light/html_style.css @@ -17,6 +17,7 @@ body { -webkit-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; + padding: 10px !important; min-height: 100vh; } ::selection { @@ -238,7 +239,7 @@ summary:focus { outline: 1px solid #5D88D2; } .rssguard-mwrapper { - padding: 10px !important; } + padding: 0px !important; } .rssguard-mwrapper .rssguard-mhead .msmall, .rssguard-mwrapper .rssguard-mhead .mlinks { opacity: .8; } diff --git a/src/librssguard/gui/webbrowser.cpp b/src/librssguard/gui/webbrowser.cpp index 611bd8d5c..4b661f0f0 100644 --- a/src/librssguard/gui/webbrowser.cpp +++ b/src/librssguard/gui/webbrowser.cpp @@ -40,7 +40,7 @@ WebBrowser::WebBrowser(WebViewer* viewer, QWidget* parent) m_actionReadabilePage(new QAction(qApp->icons()->fromTheme(QSL("text-html")), tr("View website in reader mode"), this)), - m_actionGetFullArticle(new QAction(qApp->icons()->fromTheme(QSL("download"), QSL("browser-download")), + m_actionGetFullArticle(new QAction(qApp->icons()->fromTheme(QSL("applications-office")), tr("Load full source article"), this)) { if (m_webView == nullptr) { @@ -192,8 +192,20 @@ void WebBrowser::readabilePage() { } void WebBrowser::getFullArticle() { + QString url; + + if (!m_messages.isEmpty() && !m_messages.first().m_url.isEmpty()) { + url = m_messages.first().m_url; + } + else if (m_webView->url().isValid()) { + url = m_webView->url().toString(); + } + else { + return; + } + m_actionGetFullArticle->setEnabled(false); - qApp->web()->articleParse()->parseArticle(this, m_webView->url().toString()); + qApp->web()->articleParse()->parseArticle(this, url); } bool WebBrowser::eventFilter(QObject* watched, QEvent* event) { diff --git a/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp b/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp index e3e3663ee..962fb0922 100644 --- a/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp +++ b/src/librssguard/gui/webviewers/webengine/webengineviewer.cpp @@ -145,6 +145,8 @@ void WebEngineViewer::setUrl(const QUrl& url) { void WebEngineViewer::setHtml(const QString& html, const QUrl& base_url) { QWebEngineView::setHtml(html, base_url); + + // IOFactory::writeFile("a.html", html.toUtf8()); } void WebEngineViewer::setReadabledHtml(const QString& html, const QUrl& base_url) {