diff options
author | Tony Leinonen <tony.leinonen@qt.io> | 2021-02-17 19:52:32 +0200 |
---|---|---|
committer | Tony Leinonen <tony.leinonen@qt.io> | 2021-03-02 05:31:17 +0000 |
commit | 2873034e617e99cad49146624d9dc36a03b7758a (patch) | |
tree | 0ccab1d7de297ce128551e2ab5a8a087f8ca4f80 | |
parent | 7632cf2dd0692aa4c8560bcdda5ce580a8611d4b (diff) |
Add component to dirty list when switching slides
Components are not being updated after slide switch.
Adding them to the dirty list for slide change fixes this.
Task-number: QT3DS-4217
Change-Id: I9f6f2d9c23548156edbc790d14e99e0e43e5d8ad
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
-rw-r--r-- | src/runtime/Qt3DSSlideSystem.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/runtime/Qt3DSSlideSystem.cpp b/src/runtime/Qt3DSSlideSystem.cpp index 4eaa698..67e38f7 100644 --- a/src/runtime/Qt3DSSlideSystem.cpp +++ b/src/runtime/Qt3DSSlideSystem.cpp @@ -41,6 +41,8 @@ #include "Qt3DSHash.h" #include "Qt3DSTimePolicy.h" #include "foundation/Qt3DSIndexableLinkedList.h" +#include "Qt3DSIPresentation.h" +#include "Qt3DSPresentation.h" using namespace qt3ds::runtime; using namespace qt3ds::runtime::element; @@ -457,6 +459,8 @@ struct SSlideSystem : public ISlideSystem if (!theElem) { QT3DS_ASSERT(false); } else { + if (theElem->IsIndependent()) + theElem->GetBelongedPresentation()->GetFrameData().GetDirtyList().Push(theElem); if (inOp.handleElementActive(*theElem, theElement->m_Active)) { for (TSlideAttributeNodeList::const_iterator iter = TSlideAttributeNodeList::begin(theElement->m_AttributeNodes, |