summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaj Grönholm <kaj.gronholm@qt.io>2020-10-02 08:16:38 +0300
committerKaj Grönholm <kaj.gronholm@qt.io>2020-10-02 13:13:22 +0300
commit5f8471a92868a06298ef0e0f1047d20491ac7f46 (patch)
treeb9c2c6d7ca8e12161963ef919d22d7327dd65f71
parentec0dbb0ef010ea2d51838a51131b5028eb3237a8 (diff)
Fix slide activity changes
When doing multiple slide switches at the same frame, activity (visibility) didn't update correctly because even empty elements caused activity changes. Task-number: QT3DS-4169 Change-Id: Ib2dec31ee6b33487261b73cf5550a090ce91513e Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
-rw-r--r--src/runtime/Qt3DSSlideSystem.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/runtime/Qt3DSSlideSystem.cpp b/src/runtime/Qt3DSSlideSystem.cpp
index 4eaa698..4cdce28 100644
--- a/src/runtime/Qt3DSSlideSystem.cpp
+++ b/src/runtime/Qt3DSSlideSystem.cpp
@@ -457,6 +457,11 @@ struct SSlideSystem : public ISlideSystem
if (!theElem) {
QT3DS_ASSERT(false);
} else {
+ // If slide element doesn't contain any attributes, don't continue
+ // even to activity change.
+ if (theElement->m_AttributeCount == 0)
+ continue;
+
if (inOp.handleElementActive(*theElem, theElement->m_Active)) {
for (TSlideAttributeNodeList::const_iterator
iter = TSlideAttributeNodeList::begin(theElement->m_AttributeNodes,