diff --git a/src/widgets/webpage.cpp b/src/widgets/webpage.cpp index 8390f6df..89754164 100644 --- a/src/widgets/webpage.cpp +++ b/src/widgets/webpage.cpp @@ -1,5 +1,9 @@ #include "webpage.h" +#include +#include +#include + using namespace vnotex; WebPage::WebPage(QWidget *p_parent) @@ -13,12 +17,17 @@ bool WebPage::acceptNavigationRequest(const QUrl &p_url, bool p_isMainFrame) { Q_UNUSED(p_type); - if (!p_isMainFrame) { + if (p_url.isLocalFile()) { + emit VNoteX::getInst().openFileRequested(p_url.toLocalFile(), + QSharedPointer::create()); + return false; + } if (!p_isMainFrame) { return true; } else if (p_url.scheme() == QStringLiteral("data")) { // Qt 5.12 and above will trigger this when calling QWebEngineView::setHtml(). return true; } + WidgetUtils::openUrlByDesktop(p_url); return false; }