55ee1dea9330704a09bac505f130f66425810cf8
Two root-cause bugs fixed: 1. Port <button> elements inside ModuleBlock had pointer-events:auto (browser default), so document.elementFromPoint() hit them instead of the RackSlot behind them whenever the cursor was over an occupied slot. Fixed by toggling body.rack-dragging during any drag, which applies a CSS rule that forces pointer-events:none !important on .module-block and all descendants. 2. onDragMove pointer-position reconstruction (activatorEvent.clientX + delta.x) was slightly off because delta is measured from the initial mousedown, not the activation point. Replaced with a native window pointermove listener (capture phase) that gives exact clientX/Y — no reconstruction needed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description
No description provided
Languages
TypeScript
98.2%
Dockerfile
0.5%
JavaScript
0.5%
CSS
0.4%
Shell
0.2%
Other
0.2%