Fwd: [Qt-qml] Merging V8 into qtdeclarative.git#master

Marco Martin notmart at gmail.com
Tue Jul 5 13:38:33 CEST 2011


On Tuesday 05 July 2011, Artur Souza (MoRpHeUz) wrote:
> 
>    1. Creator integration will probably not work as smoothly in the
> short term - at the very least the JavaScript debugging will not work.
>    2. Any QML API that relies on QML's undocumented ability to set and
> get QScriptValue properties will no longer work.
>    3. Any application that provides a QScriptValue based QML module
> API will no longer work.  As module APIs are an unreleased feature
> anyway, hopefully this wont be a big problem.

ok, so this feared and unbelievably BS change happened in the end.

I'm still amazed that they got a change in that makes debugging with QtCreator 
impossible (and if they don't get either the acess to qtscript back, or write 
something else that almost mimicks qtscript behaviour,  debugging is just 
plain impossible, end of story)

this means that in Qt5 we will be able to use exactly zero of the current JS 
api in qml.

Of the current bindings is possible to make some of them work, the Core one 
should "almost" work, qtextracomponents has a problem for qicons (at least), 
and this means as well, *every* qstandarditemmodel is broken now

the behavior of plasmoid.* object could *almost* be emulated, but not 
functions dynamically added as is now, meaning saying goodbye to the last 
pieces of the nice sandboxing model that remained.

other thing that in no way they can work anymore:

* services: no more bindings for kconfiggroup, impossible to pass any 
parameter
* addons: not possible anymore as well (there is some way to make a 
decalrative engine interpret js, but is nowhere near as the needed)
* access to qvarianthash/maps provided by the dataengines (have to check, iirc 
doesn't work)
* anything that relies writing on the root context
* forget any binding to QPainter (they could still have been useful to paint 
over pixmaps)
probably i still forgotten something.


so, few options here:
* acting as Qt5 will never happen (not too wise)
* starting from scratch bindings for qml2, something can be saved most to be 
rewritten (and no, don't have time for it, also rewriting them to make them 
explicitly worse is not exactly fun)
* fighting, fighting and fighting (this got exactly nothing so far, i guess 
they will hear even less now)

so, what else remains to do??

Cheers,
Marco Martin


More information about the Plasma-devel mailing list