diff --git a/syncthingwidgets/CMakeLists.txt b/syncthingwidgets/CMakeLists.txt index 361686c..7f7f9e5 100644 --- a/syncthingwidgets/CMakeLists.txt +++ b/syncthingwidgets/CMakeLists.txt @@ -115,7 +115,7 @@ if (SYNCTHING_WIDGETS_LOG_JAVASCRIPT_CONSOLE) SOURCE webview/webpage.cpp APPEND PROPERTY COMPILE_DEFINITIONS SYNCTHINGWIDGETS_LOG_JAVASCRIPT_CONSOLE) - message(WARNING "JavaScript console of web view will be logged to stderr") + message(STATUS_MESSAGE "JavaScript console of web view will be logged to stderr") endif () # configure autostart .desktop file exec path diff --git a/syncthingwidgets/webview/webpage.cpp b/syncthingwidgets/webview/webpage.cpp index 1ba40ad..0ec49a0 100644 --- a/syncthingwidgets/webview/webpage.cpp +++ b/syncthingwidgets/webview/webpage.cpp @@ -200,6 +200,23 @@ void WebPage::javaScriptConsoleMessage( Q_UNUSED(level) Q_UNUSED(lineNumber) Q_UNUSED(sourceID) +#ifdef SYNCTHINGWIDGETS_LOG_JAVASCRIPT_CONSOLE + auto levelName = std::string_view(); + switch (level) { + case QWebEnginePage::InfoMessageLevel: + levelName = "info"; + break; + case QWebEnginePage::WarningMessageLevel: + levelName = "warning"; + break; + case QWebEnginePage::ErrorMessageLevel: + levelName = "error"; + break; + default: + levelName = "message"; + } + std::cerr << "JS " << levelName << ": line " << lineNumber << ": " << message.toLocal8Bit().data() << '\n'; +#endif if (level == QWebEnginePage::InfoMessageLevel) { processJavaScriptConsoleMessage(message); } @@ -223,6 +240,9 @@ void WebPage::javaScriptConsoleMessage(const QString &message, int lineNumber, c { Q_UNUSED(lineNumber) Q_UNUSED(sourceID) +#ifdef SYNCTHINGWIDGETS_LOG_JAVASCRIPT_CONSOLE + std::cerr << "JS console: line " << lineNumber << ": " << message.toLocal8Bit().data() << '\n'; +#endif processJavaScriptConsoleMessage(message); } #endif @@ -336,9 +356,6 @@ void WebPage::injectJavaScripts(bool ok) */ void WebPage::processJavaScriptConsoleMessage(const QString &message) { -#ifdef SYNCTHINGWIDGETS_LOG_JAVASCRIPT_CONSOLE - std::cerr << "JS console: " << message.toLocal8Bit().data() << std::endl; -#endif if (message.startsWith(QLatin1String("nativeInterface.showFolderPathSelection: "))) { showFolderPathSelection(message.mid(41)); } else if (message == QLatin1String("UIOnline")) {