Go to file
Simon Hausmann 2f87fde9bb Allow for QtDeclarative and QtQml to co-exist at run-time
Qml has a bunch of hooks in QObject, that are callbacks as function pointers
when things happen in QObject. QtDeclarative (Qml1) only needs one callback,
for object destruction. In preparation for allowing both run-times to co-exist,
this patch forks the callback, keeping the "default" variant for QtQml and
having a *_qml1 variant for QtDeclarative.  QtQml continues to set the callback
variable for the default and QtDeclarative will set the _qml1 variant.

It is however a limitation that a QObject instance can only be exposed to _one_
engine at a time, and it is not possible to make a transfer. Double exposure
will result in crashes.

This patch alone is not sufficient to fix the bug, the
QQmlData/QDeclarativeData structures in Qml1 and Qml2 need to be extended to
allow distinction at run-time.

Task-number: QTBUG-35006

Change-Id: I3bac023873b5656a8a4f117fe816bafcda77b67d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-25 12:40:42 +01:00
bin Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable 2013-06-15 22:39:25 +02:00
config.tests Add PPS configure check 2013-11-23 15:45:35 +01:00
dist Doc: document QCoreApplication::arguments() behavior fix in Windows 2013-11-14 21:15:35 +01:00
doc Update the list of examples that work on Android. 2013-11-21 11:02:37 +01:00
examples Doc: Fix broken links 2013-11-05 00:29:01 +01:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs Prepare for printing support. 2013-11-23 15:46:19 +01:00
qmake fix handling of \\ in replacement string in s/// cmd of built-in sed 2013-11-23 23:31:18 +01:00
src Allow for QtDeclarative and QtQml to co-exist at run-time 2013-11-25 12:40:42 +01:00
tests Revert "Ensure Qt::WA_Mapped is set in case of obscured native windows." 2013-11-21 16:28:36 +01:00
tools Add PPS configure check 2013-11-23 15:45:35 +01:00
util generate qfeatures.h at build time 2013-10-29 15:37:58 +01:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore Long live QCommandLineParser! 2013-08-24 21:33:39 +02:00
.qmake.conf Enable -Werror for all of qtbase 2013-09-04 01:50:10 +02:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
configure Add PPS configure check 2013-11-23 15:45:35 +01:00
configure.bat get rid of syncqt wrapper scripts 2013-05-13 21:54:48 +02:00
header.BSD Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.FDL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL-ONLY Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
INSTALL INSTALL: Fix URL of Installing Qt documentation 2013-04-11 16:09:07 +02:00
LGPL_EXCEPTION.txt Change copyrights from Nokia to Digia 2012-09-22 19:20:11 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL Add the LICENSE.GPL file to the module referenced from license headers 2012-05-20 22:41:08 +02:00
LICENSE.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
LICENSE.PREVIEW.COMMERCIAL Update LICENSE.PREVIEW.COMMERCIAL license 2013-06-03 20:04:26 +02:00
qtbase.pro de-duplicate QT_DISABLED_FEATURES after resolving dependencies 2013-11-04 19:49:48 +01:00
sync.profile generate qfeatures.h at build time 2013-10-29 15:37:58 +01:00