From 85d2ee950dbd93cd2a8892472a302bf2e3d179fd Mon Sep 17 00:00:00 2001 From: Le Tan Date: Mon, 7 Apr 2025 23:23:29 +0800 Subject: [PATCH] export: allow local file remote access --- src/widgets/editors/markdownviewer.cpp | 3 +++ src/widgets/markdownviewwindow.cpp | 2 -- src/widgets/webpage.cpp | 13 +++++++++++++ src/widgets/webpage.h | 5 +++++ 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/widgets/editors/markdownviewer.cpp b/src/widgets/editors/markdownviewer.cpp index 3b81ee5d..bfbe76d3 100644 --- a/src/widgets/editors/markdownviewer.cpp +++ b/src/widgets/editors/markdownviewer.cpp @@ -6,6 +6,7 @@ #include #include #include +#include #include "markdownvieweradapter.h" #include "previewhelper.h" @@ -70,6 +71,8 @@ MarkdownViewer::MarkdownViewer(MarkdownViewerAdapter *p_adapter, mimeData->setHtml(p_html); ClipboardUtils::setMimeDataToClipboard(QApplication::clipboard(), mimeData.release()); }); + + settings()->setAttribute(QWebEngineSettings::LocalContentCanAccessRemoteUrls, true); } MarkdownViewerAdapter *MarkdownViewer::adapter() const diff --git a/src/widgets/markdownviewwindow.cpp b/src/widgets/markdownviewwindow.cpp index ef6fc58b..cddc82a2 100644 --- a/src/widgets/markdownviewwindow.cpp +++ b/src/widgets/markdownviewwindow.cpp @@ -508,8 +508,6 @@ void MarkdownViewWindow::setupViewer() setEditViewMode(m_editViewMode); } }); - - m_viewer->settings()->setAttribute(QWebEngineSettings::LocalContentCanAccessRemoteUrls, true); } void MarkdownViewWindow::syncTextEditorFromBuffer(bool p_syncPositionFromReadMode) diff --git a/src/widgets/webpage.cpp b/src/widgets/webpage.cpp index a36d7d4b..2b01c897 100644 --- a/src/widgets/webpage.cpp +++ b/src/widgets/webpage.cpp @@ -1,5 +1,7 @@ #include "webpage.h" +#include + #include #include #include @@ -35,3 +37,14 @@ bool WebPage::acceptNavigationRequest(const QUrl &p_url, WidgetUtils::openUrlByDesktop(p_url); return false; } + +void WebPage::javaScriptConsoleMessage(JavaScriptConsoleMessageLevel level, + const QString &message, + int lineNumber, + const QString &sourceID) +{ + if (level == QWebEnginePage::InfoMessageLevel) { + qDebug() << "JS(" << sourceID << ":" << lineNumber << "):" << message; + } + QWebEnginePage::javaScriptConsoleMessage(level, message, lineNumber, sourceID); +} diff --git a/src/widgets/webpage.h b/src/widgets/webpage.h index 1aa35b45..97e162f5 100644 --- a/src/widgets/webpage.h +++ b/src/widgets/webpage.h @@ -15,6 +15,11 @@ namespace vnotex bool acceptNavigationRequest(const QUrl &p_url, NavigationType p_type, bool p_isMainFrame) Q_DECL_OVERRIDE; + + void javaScriptConsoleMessage(JavaScriptConsoleMessageLevel level, + const QString &message, + int lineNumber, + const QString &sourceID) override; }; }