From 938c3e6f4b94713516ed7ba88f7118d92958f5bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antti=20M=C3=A4=C3=A4tt=C3=A4?= Date: Fri, 18 Oct 2019 08:22:12 +0300 Subject: Fix datainput controlled component activity change MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Datainput control check needs to be done in the Update too. Task-number: QT3DS-3988 Task-number: QT3DS-3989 Change-Id: Iab628ab5fcab57379c23ed8122d24d37f66b303b Reviewed-by: Jere Tuliniemi Reviewed-by: Pasi Keränen --- src/runtime/Qt3DSActivationManager.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/runtime/Qt3DSActivationManager.cpp b/src/runtime/Qt3DSActivationManager.cpp index 9b74ea5..cf14820 100644 --- a/src/runtime/Qt3DSActivationManager.cpp +++ b/src/runtime/Qt3DSActivationManager.cpp @@ -664,7 +664,12 @@ struct STimeContext parentActive = theParent->IsGlobalActive(); bool wasActive = theContextNode.IsGlobalActive(); - bool isActive = theContextNode.IsGlobalActive(parentActive); + bool isControlledByDi + = m_ControlledList.contains(theContextNode) && theContextNode.m_OnMaster; + + // Override visibility for master slide elements that have datainput eyeball controller. + bool isActive = isControlledByDi ? theContextNode.IsControlledActive() + : theContextNode.IsGlobalActive(parentActive); bool activationChange = isActive != wasActive; inPerfTimer.Update("ActivationManager - Update Initial Vars", qt3ds::foundation::Time::getCurrentCounterValue() - start); -- cgit v1.2.3