diff options
author | Liang Qi <liang.qi@qt.io> | 2018-01-20 22:47:06 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2018-01-20 22:47:06 +0100 |
commit | 76e27b8f62afba31a2c675eba4445308eaf47df2 (patch) | |
tree | 2cbac1a8dc79abebc6e76f6a18c82d2fef32313a | |
parent | 6035467b37bc71b0ea25155fa70f85bee054d1a3 (diff) | |
parent | 235150a1909b9d666acbdb541c665a19cc474c01 (diff) |
Merge remote-tracking branch 'origin/5.10' into dev
Change-Id: If28722eb9a53f2e169f368aa677d01f283d4cc9f
-rw-r--r-- | src/plugins/platforms/webgl/qwebglintegration.cpp | 7 | ||||
-rw-r--r-- | src/plugins/platforms/webgl/qwebglwebsocketserver.cpp | 48 | ||||
-rw-r--r-- | src/plugins/platforms/webgl/webqt.jsx | 6 |
3 files changed, 17 insertions, 44 deletions
diff --git a/src/plugins/platforms/webgl/qwebglintegration.cpp b/src/plugins/platforms/webgl/qwebglintegration.cpp index 8c17190..4305253 100644 --- a/src/plugins/platforms/webgl/qwebglintegration.cpp +++ b/src/plugins/platforms/webgl/qwebglintegration.cpp @@ -628,6 +628,13 @@ void QWebGLIntegrationPrivate::handleKeyboard(const ClientData &clientData, if (specialKey != keyMap.end()) { key = *specialKey; string.clear(); + + // special case: match Qt's behavior on other platforms and differentiate: + // * "Enter": Qt::Key_Return + // * "NumpadEnter": Qt::Key_Enter + // TODO: consider whether "code" could be used rather than "keyName" above + if (key == Qt::Key_Enter && object.value("code").toString() == QStringLiteral("Enter")) + key = Qt::Key_Return; } const auto window = clientData.platformWindows.last()->window(); diff --git a/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp b/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp index ab90950..959287d 100644 --- a/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp +++ b/src/plugins/platforms/webgl/qwebglwebsocketserver.cpp @@ -55,43 +55,6 @@ QT_BEGIN_NAMESPACE static Q_LOGGING_CATEGORY(lc, "qt.qpa.webgl.websocketserver") -const QHash<QString, Qt::Key> keyMap { - { "Alt", Qt::Key_Alt }, - { "ArrowDown", Qt::Key_Down }, - { "ArrowLeft", Qt::Key_Left }, - { "ArrowRight", Qt::Key_Right }, - { "ArrowUp", Qt::Key_Up }, - { "Backspace", Qt::Key_Backspace }, - { "Control", Qt::Key_Control }, - { "Delete", Qt::Key_Delete }, - { "End", Qt::Key_End }, - { "Enter", Qt::Key_Enter }, - { "F1", Qt::Key_F1 }, - { "F2", Qt::Key_F2 }, - { "F3", Qt::Key_F3 }, - { "F4", Qt::Key_F4 }, - { "F5", Qt::Key_F5 }, - { "F6", Qt::Key_F6 }, - { "F7", Qt::Key_F7 }, - { "F8", Qt::Key_F8 }, - { "F9", Qt::Key_F9 }, - { "F10", Qt::Key_F10 }, - { "F11", Qt::Key_F11 }, - { "F12", Qt::Key_F12 }, - { "Escape", Qt::Key_Escape }, - { "Home", Qt::Key_Home }, - { "Insert", Qt::Key_Insert }, - { "Meta", Qt::Key_Meta }, - { "PageDown", Qt::Key_PageDown }, - { "PageUp", Qt::Key_PageUp }, - { "Shift", Qt::Key_Shift }, - { "Space", Qt::Key_Space }, - { "AltGraph", Qt::Key_AltGr }, - { "Tab", Qt::Key_Tab }, - { "Unidentified", Qt::Key_F }, - { "OS", Qt::Key_Super_L } -}; - inline QWebGLIntegration *webGLIntegration() { #ifdef QT_DEBUG @@ -145,10 +108,13 @@ void QWebGLWebSocketServer::create() { Q_D(QWebGLWebSocketServer); d->server = new QWebSocketServer(QLatin1String("qtwebgl"), QWebSocketServer::NonSecureMode); - bool ok = d->server->listen(QHostAddress::Any); - if (ok) - connect(d->server, &QWebSocketServer::newConnection, this, - &QWebGLWebSocketServer::onNewConnection); + if (d->server->listen(QHostAddress::Any)) { + connect(d->server, &QWebSocketServer::newConnection, + this, &QWebGLWebSocketServer::onNewConnection); + } else { + qCCritical(lc, "The WebSocket Server cannot start: %s", + qPrintable(d->server->errorString())); + } QMutexLocker lock(&QWebGLIntegrationPrivate::instance()->waitMutex); QWebGLIntegrationPrivate::instance()->waitCondition.wakeAll(); diff --git a/src/plugins/platforms/webgl/webqt.jsx b/src/plugins/platforms/webgl/webqt.jsx index 53158b1..e3a2f29 100644 --- a/src/plugins/platforms/webgl/webqt.jsx +++ b/src/plugins/platforms/webgl/webqt.jsx @@ -454,7 +454,7 @@ window.onload = function () { gl.deleteBuffer(d.bufferMap[arguments[1 +i]]); }; - gl.deleteFramebuffers = function(n) { + gl.deleteFramebuffers = function(framebuffers) { var d = contextData[currentContext]; for (var i in framebuffers) gl.deleteFramebuffer(d.framebufferMap[framebuffers[i]]); @@ -466,7 +466,7 @@ window.onload = function () { gl._deleteProgram(d.programMap[program]); }; - gl.deleteRenderbuffers = function() { + gl.deleteRenderbuffers = function(renderbuffers) { var d = contextData[currentContext]; for (var i in renderbuffers) gl.deleteRenderbuffer(d.renderbufferMap[renderbuffers[i]]); @@ -1172,7 +1172,7 @@ window.onload = function () { "metaKey" : event.metaKey, "string" : String.fromCharCode(event.which || event.keyCode), - "keyCode" : event.keyCode, "charCode" : event.charCode, + "keyCode" : event.keyCode, "charCode" : event.charCode, "code" : event.code, "time" : new Date().getTime(), }; sendObject(object); |