@@ -54,23 +54,30 @@ void DebuggingController::SetSceneGraphVisualizer(const QString &visualizer)
56void DebuggingController::applyRenderMode() {
56void DebuggingController::applyRenderMode() {
57+ qDebug() << "applyRenderMode called";
57 QQuickWindow *qquickWindow = qobject_cast<QQuickWindow*>(sender());
58 QQuickWindow *qquickWindow = qobject_cast<QQuickWindow*>(sender());
59+ qDebug() << "window is" << qquickWindow;
59 QMutexLocker lock(&m_renderModeMutex);
61 QMutexLocker lock(&m_renderModeMutex);
60 disconnect(qquickWindow, &QQuickWindow::beforeSynchronizing, this, &DebuggingController::applyRenderMode);
62 disconnect(qquickWindow, &QQuickWindow::beforeSynchronizing, this, &DebuggingController::applyRenderMode);
62−
64+ qDebug() << "mutex locked";
63#if QT_VERSION >= QT_VERSION_CHECK(5, 5, 0)
65#if QT_VERSION >= QT_VERSION_CHECK(5, 5, 0)
64 QQuickWindowPrivate *winPriv = QQuickWindowPrivate::get(qquickWindow);
66 QQuickWindowPrivate *winPriv = QQuickWindowPrivate::get(qquickWindow);
65 QQuickItemPrivate *contentPriv = QQuickItemPrivate::get(qquickWindow->contentItem());
67 QQuickItemPrivate *contentPriv = QQuickItemPrivate::get(qquickWindow->contentItem());
68+ qDebug() << "winPriv is" << winPriv << "contentPriv is" << contentPriv;
66 QSGNode *rootNode = contentPriv->itemNode();
69 QSGNode *rootNode = contentPriv->itemNode();
67 while (rootNode->parent())
70 while (rootNode->parent())
68 rootNode = rootNode->parent();
71 rootNode = rootNode->parent();
73+ qDebug() << "rootnode is" << rootNode;
70 winPriv->customRenderMode = m_pendingRenderMode.toLatin1();
74 winPriv->customRenderMode = m_pendingRenderMode.toLatin1();
71 delete winPriv->renderer;
75 delete winPriv->renderer;
76+ qDebug() << "renderer deleted";
72 winPriv->renderer = winPriv->context->createRenderer();
77 winPriv->renderer = winPriv->context->createRenderer();
78+ qDebug() << "new renderer created";
73 winPriv->renderer->setRootNode(static_cast<QSGRootNode *>(rootNode));
79 winPriv->renderer->setRootNode(static_cast<QSGRootNode *>(rootNode));
80+ qDebug() << "setting back old rootNode. done";