Centralize retained popup menu closing
This commit is contained in:
@@ -547,6 +547,9 @@ agent or engineer to remove them without reconstructing context from chat.
|
||||
- 2026-06-12: DEBT-0063 was narrowed again. Floating-panel close and drag-outline
|
||||
cleanup now use the retained close helper in `src/legacy_ui_overlay_services.*`;
|
||||
drag placeholder reparenting and dock/drop mutation remain legacy-owned.
|
||||
- 2026-06-12: DEBT-0063 was narrowed again. `NodePopupMenu` mouse-up release and
|
||||
destroy now route through the retained popup close helper in
|
||||
`src/legacy_ui_overlay_services.*`.
|
||||
- 2026-06-05: DEBT-0011 was narrowed. The Windows app package smoke target now
|
||||
passes the configure-time CMake executable into `package-smoke.ps1`, so VS
|
||||
2026 generator validation does not depend on an older `cmake` on PATH, and
|
||||
|
||||
@@ -517,6 +517,7 @@ App message-dialog cancel-button removal, layer-rename finish cleanup, and
|
||||
recording export progress cleanup also route through those helpers.
|
||||
Floating-panel close and drag-outline cleanup now use the same retained close
|
||||
helper while drag reparenting remains legacy-owned.
|
||||
`NodePopupMenu` mouse-up close/release now uses the retained popup close helper.
|
||||
Raw popup callback captures and full close/capture ownership remain part of
|
||||
`DEBT-0063`.
|
||||
`pano_cli inspect-image` exposes PNG IHDR metadata as JSON,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "pch.h"
|
||||
#include "log.h"
|
||||
#include "legacy_ui_overlay_services.h"
|
||||
#include "node_popup_menu.h"
|
||||
#include "node_button_custom.h"
|
||||
#include "app.h"
|
||||
@@ -27,11 +28,7 @@ kEventResult NodePopupMenu::handle_event(Event* e)
|
||||
case kEventType::MouseDownL:
|
||||
break;
|
||||
case kEventType::MouseUpL:
|
||||
if (!m_mouse_inside)
|
||||
{
|
||||
mouse_release();
|
||||
}
|
||||
else
|
||||
if (m_mouse_inside)
|
||||
{
|
||||
for (int i = 0; i < m_children.size(); i++)
|
||||
{
|
||||
@@ -42,9 +39,8 @@ kEventResult NodePopupMenu::handle_event(Event* e)
|
||||
break;
|
||||
}
|
||||
}
|
||||
mouse_release();
|
||||
}
|
||||
destroy();
|
||||
pp::panopainter::close_legacy_popup_overlay(*this);
|
||||
break;
|
||||
default:
|
||||
return kEventResult::Available;
|
||||
|
||||
Reference in New Issue
Block a user