From 5d56127cb7dbe38f552ac8858a5a7185c997911b Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Mon, 6 Jul 2015 14:32:08 +0200 Subject: Log javascript console log to qInfo channel This is a pretty useful default for an example and test browser, we only log warnings and errors though. Change-Id: Ic92175cb8c231e7ec33c4899f9fc457923f65970 Reviewed-by: Joerg Bornemann --- examples/webenginewidgets/browser/webview.cpp | 17 +++++++++++++++++ examples/webenginewidgets/browser/webview.h | 1 + 2 files changed, 18 insertions(+) (limited to 'examples/webenginewidgets') diff --git a/examples/webenginewidgets/browser/webview.cpp b/examples/webenginewidgets/browser/webview.cpp index 834e89b7f..7705e7ab4 100644 --- a/examples/webenginewidgets/browser/webview.cpp +++ b/examples/webenginewidgets/browser/webview.cpp @@ -302,6 +302,23 @@ void WebPage::proxyAuthenticationRequired(const QUrl &requestUrl, QAuthenticator } } +void WebPage::javaScriptConsoleMessage(JavaScriptConsoleMessageLevel level, const QString& message, int /*lineNumber*/, const QString& sourceID) +{ + QUrl url; + url.setUrl(sourceID); + switch (level) { + case InfoMessageLevel: + // Ignore these, they can still be found in the inspector. + break; + case WarningMessageLevel: + qInfo() << "JavaScript WARNING:" << url.host() << message; + break; + case ErrorMessageLevel: + qInfo() << "JavaScript ERROR:" << url.host() << message; + break; + } +} + WebView::WebView(QWidget* parent) : QWebEngineView(parent) , m_progress(0) diff --git a/examples/webenginewidgets/browser/webview.h b/examples/webenginewidgets/browser/webview.h index 2497bc1b9..cb78fdd8a 100644 --- a/examples/webenginewidgets/browser/webview.h +++ b/examples/webenginewidgets/browser/webview.h @@ -71,6 +71,7 @@ protected: QObject *createPlugin(const QString &classId, const QUrl &url, const QStringList ¶mNames, const QStringList ¶mValues); #endif virtual bool certificateError(const QWebEngineCertificateError &error) Q_DECL_OVERRIDE; + virtual void javaScriptConsoleMessage(JavaScriptConsoleMessageLevel level, const QString& message, int lineNumber, const QString& sourceID) Q_DECL_OVERRIDE; private slots: #if defined(QWEBENGINEPAGE_UNSUPPORTEDCONTENT) -- cgit v1.2.3