Centralize retained control capture release

This commit is contained in:
2026-06-12 16:34:48 +02:00
parent bfaea5398e
commit 84373f26e7
8 changed files with 24 additions and 12 deletions

View File

@@ -1,5 +1,6 @@
#include "pch.h"
#include "log.h"
#include "legacy_ui_overlay_services.h"
#include "node_button_custom.h"
Node* NodeButtonCustom::clone_instantiate() const
@@ -69,13 +70,13 @@ kEventResult NodeButtonCustom::handle_event(Event* e)
m_color = m_active ? color_active : (m_mouse_inside ? color_hover : color_normal);
else
m_color = m_active ? color_active : color_normal;
mouse_release();
pp::panopainter::release_legacy_mouse_capture(*this);
if (m_mouse_inside && on_click != nullptr)
on_click(this);
break;
case kEventType::MouseCancel:
m_color = m_active ? color_active : color_normal;
mouse_release();
pp::panopainter::release_legacy_mouse_capture(*this);
break;
default:
return kEventResult::Available;