From f1ee6113784ad90082d7307d693aa09472a55473 Mon Sep 17 00:00:00 2001 From: SirLynix Date: Sat, 28 Jan 2023 11:13:32 +0100 Subject: [PATCH] Widgets/SimpleWidgetStyles: Fix hovered sprite not being detached on click --- src/Nazara/Widgets/SimpleWidgetStyles.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/Nazara/Widgets/SimpleWidgetStyles.cpp b/src/Nazara/Widgets/SimpleWidgetStyles.cpp index a6d005ff7..a9dc0b166 100644 --- a/src/Nazara/Widgets/SimpleWidgetStyles.cpp +++ b/src/Nazara/Widgets/SimpleWidgetStyles.cpp @@ -316,8 +316,11 @@ namespace Nz if (!pressed) m_sprite->SetMaterial(owner->GetMaterial()); - GraphicsComponent& gfxComponent = GetRegistry().get(m_entity); - gfxComponent.AttachRenderable(m_hoveredSprite, GetRenderMask()); + if (!m_isHovered) + { + GraphicsComponent& gfxComponent = GetRegistry().get(m_entity); + gfxComponent.AttachRenderable(m_hoveredSprite, GetRenderMask()); + } } } else @@ -325,8 +328,11 @@ namespace Nz if (!pressed) m_sprite->SetMaterial(owner->GetMaterial()); - GraphicsComponent& gfxComponent = GetRegistry().get(m_entity); - gfxComponent.DetachRenderable(m_hoveredSprite); + if (m_isHovered) + { + GraphicsComponent& gfxComponent = GetRegistry().get(m_entity); + gfxComponent.DetachRenderable(m_hoveredSprite); + } } }