Forráskód Böngészése

export: allow local file remote access

Le Tan 6 hónapja
szülő
commit
85d2ee950d

+ 3 - 0
src/widgets/editors/markdownviewer.cpp

@@ -6,6 +6,7 @@
 #include <QApplication>
 #include <QMimeData>
 #include <QScopedPointer>
+#include <QWebEngineSettings>
 
 #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

+ 0 - 2
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)

+ 13 - 0
src/widgets/webpage.cpp

@@ -1,5 +1,7 @@
 #include "webpage.h"
 
+#include <QDebug>
+
 #include <utils/widgetutils.h>
 #include <core/vnotex.h>
 #include <core/fileopenparameters.h>
@@ -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);
+}

+ 5 - 0
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;
     };
 }