From 54f66cc7a1e17155e90a1d3b5c33f627dbd0d50f Mon Sep 17 00:00:00 2001 From: Milian Wolff Date: Fri, 10 Jan 2014 14:21:05 +0100 Subject: Make the underlying transport mechanism of the webchannel pluggable. This enables us to optionally use navigator.qt instead of a WebSocket, which is nicer setup-wise and is also slightly faster: navigator.qt: 284.0 msecs per iteration (total: 2,840, iterations: 10) WebSocket: 295.8 msecs per iteration (total: 2,959, iterations: 10) The baseline is ca. 203 msecs, which would mean a performance boost of ca. 12.7%. Furthermore, this sets the fundation to eventually add a WebEngine transport mechanism. The WebViewTransport should also be removed and instead the WebView itself should directly implement the WebChannelTransportInterface. Change-Id: I368bb27e38ffa2f17ffeb7f5ae695690f6f5ad21 Reviewed-by: Simon Hausmann --- examples/qml/example.qml | 10 +++++++--- examples/qml/index.html | 3 +-- examples/standalone/main.cpp | 9 ++++++--- 3 files changed, 14 insertions(+), 8 deletions(-) (limited to 'examples') diff --git a/examples/qml/example.qml b/examples/qml/example.qml index f77b4c6..2d51f27 100644 --- a/examples/qml/example.qml +++ b/examples/qml/example.qml @@ -58,8 +58,11 @@ ApplicationWindow { WebChannel { id: webChannel - onRawMessageReceived: { - textEdit.text += "Received message: " + rawMessage + "\n"; + connections: WebViewTransport { + webViewExperimental: webView.experimental + onMessageReceived: { + textEdit.text += "Received message: " + message + "\n"; + } } } @@ -106,8 +109,9 @@ ApplicationWindow { Layout.fillHeight: true Layout.minimumWidth: window.width / 2 id: webView - url: webChannel.baseUrl ? ("index.html?webChannelBaseUrl=" + webChannel.baseUrl) : "about:blank" + url: "index.html" experimental.preferences.developerExtrasEnabled: true + experimental.preferences.navigatorQtObjectEnabled: true } } } diff --git a/examples/qml/index.html b/examples/qml/index.html index cd20ac9..8b65dd2 100644 --- a/examples/qml/index.html +++ b/examples/qml/index.html @@ -5,8 +5,7 @@