Improves header drag-and-drop event handling

Enhances drag leave logic for more precise event tracking
- Adds conditional cleanup for grid-to-header drag events
- Updates drag state management during column transitions
- Prevents premature ghost element removal
This commit is contained in:
Janus C. H. Knudsen 2025-12-12 15:48:28 +01:00
parent bc5854e09a
commit 7da88bb977
2 changed files with 24 additions and 3 deletions

View file

@ -285,10 +285,15 @@ export class HeaderDrawerRenderer {
}
/**
* Handle drag leaving header - remove preview and restore source
* Handle drag leaving header - cleanup for gridheader drag only
*/
private handleDragLeave(_payload: IDragLeaveHeaderPayload): void {
this.cleanup();
private handleDragLeave(payload: IDragLeaveHeaderPayload): void {
// Only cleanup for grid→header drag (when grid event leaves header back to grid)
// For header→grid drag, the header item stays as ghost until drop
if (payload.source === 'grid') {
this.cleanup();
}
// For header source, do nothing - ghost stays until EVENT_DRAG_END
}
/**