Frontmatter
| id | 8114 |
| title | Fix Drag-to-Popup Event Routing and Re-integration Logic |
| state | Closed |
| labels | bugai |
| assignees | tobiu |
| createdAt | Dec 15, 2025, 1:57 PM |
| updatedAt | Dec 15, 2025, 1:59 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8114 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Dec 15, 2025, 1:59 PM |
Fix Drag-to-Popup Event Routing and Re-integration Logic
tobiu assigned to @tobiu on Dec 15, 2025, 1:57 PM

tobiu
Dec 15, 2025, 1:58 PM
Input from Neo Agent:
◆ I have verified that all changes are implemented:
DragDrop.mjssendsdragZoneId.DomEvent.mjsroutesdrag:events to the zone directly.StrategyPanelController.mjshandles silent re-integration and window connect correctly.SortZone.mjspauses sorting during window drag.The functionality is fully restored and enhanced.
tobiu closed this issue on Dec 15, 2025, 1:59 PM
This ticket covers the fixes required to support seamless drag-to-popup and re-integration (drag-back) workflows, specifically when using
DragProxyContainer.Issues Addressed:
Changes:
src/main/addon/DragDrop.mjs: UpdatedonDragMoveto includedragZoneIdin the message payload.src/manager/DomEvent.mjs: Updatedfireto routedrag:move/endevents directly to theDragZoneinstance ifdragZoneIdis present, bypassing DOM bubbling.apps/agentos/view/StrategyPanelController.mjs:onWindowConnectto useremoveFromPreviousParent=false(viamainView.add).onDragBoundaryEntryto usesortZone.dragProxy.add(widget, true)(silent add) to restore state without VDOM duplication.onWindowDisconnect.src/draggable/container/SortZone.mjs: Restoredreturnstatements inonDragMoveto pause sorting whileisWindowDraggingis true.