From e14f45692d5a0ffc15bfd3b85e4fd31d7e578d31 Mon Sep 17 00:00:00 2001 From: Jesus Fernandez Date: Wed, 10 Oct 2018 20:17:19 +0200 Subject: Disable mouse tracking by default It will improve the performance and fix problems with code not optimized for the new QtQuick scenegraph. A new environment variable is added in this patch to enable it, QT_WEBGL_TRACKING. Change-Id: Id2b87c5baa16822008a146051fa43be12db0a1ed Reviewed-by: Volker Hilsheimer --- src/plugins/platforms/webgl/qwebglwebsocketserver.cpp | 3 ++- src/plugins/platforms/webgl/webqt.jsx | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp b/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp index 1c1e6a1..dfeaa58 100644 --- a/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp +++ b/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp @@ -275,6 +275,7 @@ void QWebGLWebSocketServer::onNewConnection() #endif }, { QStringLiteral("loadingScreen"), qgetenv("QT_WEBGL_LOADINGSCREEN") }, + { QStringLiteral("mouseTracking"), qgetenv("QT_WEBGL_MOUSETRACKING") }, { QStringLiteral("supportedFunctions"), QVariant::fromValue(QWebGLContext::supportedFunctions()) }, { "sysinfo", @@ -287,7 +288,7 @@ void QWebGLWebSocketServer::onNewConnection() { QStringLiteral("machineHostName"), QSysInfo::machineHostName() }, { QStringLiteral("prettyProductName"), QSysInfo::prettyProductName() }, { QStringLiteral("productType"), QSysInfo::productType() }, - { QStringLiteral("productVersion"), QSysInfo::productVersion() } + { QStringLiteral("productVersion"), QSysInfo::productVersion() }, } } }; diff --git a/src/plugins/platforms/webgl/webqt.jsx b/src/plugins/platforms/webgl/webqt.jsx index a7de04d..78d56d3 100644 --- a/src/plugins/platforms/webgl/webqt.jsx +++ b/src/plugins/platforms/webgl/webqt.jsx @@ -34,6 +34,7 @@ function physicalSizeRatio() { window.onload = function () { var DEBUG = 0; + var MOUSETRACKING = 0; var LOADINGSCREEN = 1; var canvas; var socket = new WebSocket("ws://" + host + ":" + port); @@ -234,8 +235,9 @@ window.onload = function () { }; canvas.onmousemove = function (event) { - sendMouseEvent(qtButtons, event.layerX, event.layerY, event.clientX, event.clientY, - name); + if (MOUSETRACKING || event.buttons > 0) + sendMouseEvent(qtButtons, event.layerX, event.layerY, event.clientX, event.clientY, + name); }; canvas.onmouseup = function (event) { @@ -1126,6 +1128,8 @@ window.onload = function () { var sysinfo = obj.sysinfo; if (obj.debug) DEBUG = 1; + if (obj.mouseTracking) + MOUSETRACKING = 1; if (obj.loadingScreen === "0") LOADINGSCREEN = 0; console.log(sysinfo); -- cgit v1.2.3