Details
-
Task
-
Resolution: Done
-
P2: Important
-
None
-
None
Description
For a signal declaration like so:
signal clicked(color cellColor)
and signal handler like so:
onClicked:
QML will generate a function expression
function() { helloText.color = cellColor; }
and the resolution of the arguments (cellColor, in this case) is done dynamically in the QML scope.
Instead, QML could generate the expression
function(cellColor)
{ helloText.color = cellColor; }and pass the arguments directly to QScriptValue::call().
This should make arguments access a lot faster since it allows JSC to use "static" opcodes (i.e. avoids virtual calls to scope chain).
Attachments
Issue Links
- resulted from
-
QTBUG-8576 Javascript performance for QML is much worse than javascript performance within the WebView in QML.
- Closed