diff options
Diffstat (limited to 'src/runtime/Qt3DSComponentManager.cpp')
-rw-r--r-- | src/runtime/Qt3DSComponentManager.cpp | 12 |
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); |