summaryrefslogtreecommitdiffstats
path: root/src/runtime/Qt3DSComponentManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/Qt3DSComponentManager.cpp')
-rw-r--r--src/runtime/Qt3DSComponentManager.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/runtime/Qt3DSComponentManager.cpp b/src/runtime/Qt3DSComponentManager.cpp
index 73c3467..27d75e1 100644
--- a/src/runtime/Qt3DSComponentManager.cpp
+++ b/src/runtime/Qt3DSComponentManager.cpp
@@ -85,10 +85,14 @@ void CComponentManager::GotoSlideIndex(TElement *inComponent,
return;
}
- if (!theComponent->GetActive() || theComponent->AboutToDeactivate()) {
- // When (becoming) not active, don't proceed slide switching
- m_ComponentInitialSlideMap[inComponent] = inGotoData;
- return;
+ if (theComponent->GetActive()) {
+ if (!theComponent->IsAnyParentAboutToActivate()) {
+ if (theComponent->AboutToDeactivate()) {
+ // When (becoming) not active, don't proceed slide switching
+ m_ComponentInitialSlideMap[inComponent] = inGotoData;
+ return;
+ }
+ }
}
SComponentGotoSlideData theGotoSlideData(inGotoData);