aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp')
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp23
1 files changed, 19 insertions, 4 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp
index 08b20ccd22..fd3446f396 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp
@@ -87,17 +87,27 @@ void Qt5RenderNodeInstanceServer::collectItemChangesAndSendChangeCommands()
if (ancestorInstance.isValid())
m_dirtyInstanceSet.insert(ancestorInstance);
}
- DesignerSupport::updateDirtyNode(item);
+ Internal::QuickItemNodeInstance::updateDirtyNode(item);
}
}
clearChangedPropertyList();
- if (!m_dirtyInstanceSet.isEmpty()) {
- nodeInstanceClient()->pixmapChanged(createPixmapChangedCommand(QtHelpers::toList(m_dirtyInstanceSet)));
- m_dirtyInstanceSet.clear();
+ if (Internal::QuickItemNodeInstance::unifiedRenderPath()) {
+ /* QQuickItem::grabToImage render path */
+ /* TODO implement QQuickItem::grabToImage based rendering */
+ /* sheduleRootItemRender(); */
+ nodeInstanceClient()->pixmapChanged(createPixmapChangedCommand({rootNodeInstance()}));
+ } else {
+ if (!m_dirtyInstanceSet.isEmpty()) {
+ nodeInstanceClient()->pixmapChanged(
+ createPixmapChangedCommand(QtHelpers::toList(m_dirtyInstanceSet)));
+ m_dirtyInstanceSet.clear();
+ }
}
+ m_dirtyInstanceSet.clear();
+
resetAllItems();
slowDownRenderTimer();
@@ -137,6 +147,11 @@ void Qt5RenderNodeInstanceServer::createScene(const CreateSceneCommand &command)
}
nodeInstanceClient()->pixmapChanged(createPixmapChangedCommand(instanceList));
+
+#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+#else
+ quickView()->show();
+#endif
}
void Qt5RenderNodeInstanceServer::clearScene(const ClearSceneCommand &command)