From 96db947c81d55dc9c3565c369a796da92ce1c317 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antti=20M=C3=A4=C3=A4tt=C3=A4?= Date: Mon, 15 Nov 2021 14:23:06 +0200 Subject: [PATCH] Fix particles play button state when scene changes Add play button state to the scene state. Task-number: QDS-5499 Change-Id: Id3035de439aa80fd782348cf89a1d8456a7dd006 Reviewed-by: Miikka Heikkinen Reviewed-by: Qt CI Bot --- .../instances/qt5informationnodeinstanceserver.cpp | 4 +--- src/plugins/qmldesigner/components/edit3d/edit3dview.cpp | 6 ++++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp index 34d96265286..b1c211b6f84 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp @@ -1994,11 +1994,9 @@ void Qt5InformationNodeInstanceServer::view3DAction(const View3DActionCommand &c updatedState.insert("showGrid", command.isEnabled()); break; #ifdef QUICK3D_PARTICLES_MODULE - case View3DActionCommand::Edit3DParticleModeToggle: - updatedState.insert("enableParticleViewMode", command.isEnabled()); - break; case View3DActionCommand::ParticlesPlay: m_particleAnimationPlaying = command.isEnabled(); + updatedState.insert("particlePlay", command.isEnabled()); if (m_particleAnimationPlaying) { m_particleAnimationDriver->reset(); m_particleAnimationDriver->restart(); diff --git a/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp b/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp index c6fa4a0bdb5..1c944f49a94 100644 --- a/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp +++ b/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp @@ -108,6 +108,7 @@ void Edit3DView::updateActiveScene3D(const QVariantMap &sceneState) const QString orientationKey = QStringLiteral("globalOrientation"); const QString editLightKey = QStringLiteral("showEditLight"); const QString gridKey = QStringLiteral("showGrid"); + const QString particlesPlayKey = QStringLiteral("particlePlay"); if (sceneState.contains(sceneKey)) { qint32 newActiveScene = sceneState[sceneKey].value(); @@ -151,6 +152,11 @@ void Edit3DView::updateActiveScene3D(const QVariantMap &sceneState) m_showGridAction->action()->setChecked(sceneState[gridKey].toBool()); else m_showGridAction->action()->setChecked(false); + + if (sceneState.contains(particlesPlayKey)) + m_particlesPlayAction->action()->setChecked(sceneState[particlesPlayKey].toBool()); + else + m_particlesPlayAction->action()->setChecked(true); } void Edit3DView::modelAttached(Model *model)