From 7ae288d355b9763ed495c1ebbf198809ed7e50f0 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Fri, 10 Jun 2022 21:10:52 +0200 Subject: [PATCH] QmlDesigner: Use changed properties to update 3D preview EffectReference is always dirty and it is the only dirty flag. Instead, we update now if any property changed. Task-number: QDS-7079 Change-Id: I157cf2d3b15120c33f4a6b3f53e526d555c7f80c Reviewed-by: Miikka Heikkinen --- .../qml2puppet/instances/qt5rendernodeinstanceserver.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp index 2ff23395761..59e7a4aa821 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5rendernodeinstanceserver.cpp @@ -111,8 +111,6 @@ void Qt5RenderNodeInstanceServer::collectItemChangesAndSendChangeCommands() } } - clearChangedPropertyList(); - if (Internal::QuickItemNodeInstance::unifiedRenderPath()) { if (windowDirty) nodeInstanceClient()->pixmapChanged(createPixmapChangedCommand({rootNodeInstance()})); @@ -134,13 +132,15 @@ void Qt5RenderNodeInstanceServer::collectItemChangesAndSendChangeCommands() } if (rootIsRenderable3DObject() && rootNodeInstance().contentItem() - && DesignerSupport::isDirty(rootNodeInstance().contentItem(), - DesignerSupport::AllMask) + && !changedPropertyList().isEmpty() && nodeInstanceClient()->bytesToWrite() < 10000) { + Internal::QuickItemNodeInstance::updateDirtyNode(rootNodeInstance().contentItem()); nodeInstanceClient()->pixmapChanged(createPixmapChangedCommand({rootNodeInstance()})); } + clearChangedPropertyList(); + inFunction = false; } }