From ec28fe968554f866e124ff716c7c0a7444942d5e Mon Sep 17 00:00:00 2001 From: Paul Lemire Date: Mon, 18 Oct 2021 11:23:33 +0200 Subject: ObjectPicker: markDirty(AllDirty) when we change the enabled property Otherwise we would simply change it internally but this wouldn't lead to any actual changes in how we handle pick events. Change-Id: I71aedc74db538978a939620d053af3167fd67dc4 Reviewed-by: Sean Harmer (cherry picked from commit d32ff6b43b92474de495c88783a67b0b30211a7c) Reviewed-by: Qt Cherry-pick Bot --- src/render/picking/objectpicker.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/render/picking/objectpicker.cpp') diff --git a/src/render/picking/objectpicker.cpp b/src/render/picking/objectpicker.cpp index 07a630857..00c67a846 100644 --- a/src/render/picking/objectpicker.cpp +++ b/src/render/picking/objectpicker.cpp @@ -81,13 +81,16 @@ void ObjectPicker::syncFromFrontEnd(const Qt3DCore::QNode *frontEnd, bool firstT if (!node) return; - BackendNode::syncFromFrontEnd(frontEnd, firstTime); - if (firstTime) { markDirty(AbstractRenderer::AllDirty); notifyJob(); } + if (isEnabled() != node->isEnabled()) { + markDirty(AbstractRenderer::AllDirty); + // We let QBackendNode::syncFromFrontEnd change the enabled property + } + if (node->isHoverEnabled() != m_hoverEnabled) { m_hoverEnabled = node->isHoverEnabled(); markDirty(AbstractRenderer::AllDirty); @@ -105,6 +108,8 @@ void ObjectPicker::syncFromFrontEnd(const Qt3DCore::QNode *frontEnd, bool firstT markDirty(AbstractRenderer::AllDirty); notifyJob(); } + + BackendNode::syncFromFrontEnd(frontEnd, firstTime); } void ObjectPicker::notifyJob() -- cgit v1.2.3