The necessity for this is documented in the
QQuickWindow::incubationController() accessor. Bug 31203 is about
writing a custom main() with a QQmlApplicationEngine, not about
qmlscene, but the same workaround is necessary for both. Hopefully
soon we find a way to make it unnecessary, but for now it is.
This fix also doesn't take care of the QtObject { Window { } }
use case.
Task-number: QTBUG-31203
Change-Id: Ic9a5e4a23ac918593138dc9cab3de6cd36453eaf
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
QObject *topLevel = component->create();
QQuickWindow *window = qobject_cast<QQuickWindow *>(topLevel);
QQuickView* qxView = 0;
- if (!window) {
+ if (window) {
+ engine.setIncubationController(window->incubationController());
+ } else {
QQuickItem *contentItem = qobject_cast<QQuickItem *>(topLevel);
if (contentItem) {
qxView = new QQuickView(&engine, NULL);