LearnNewsExamplesServices
Frontmatter
id9636
titleGrid Multi-Body: Simplify GridDragScroll Scrollbar Hit Detection
stateOpen
labels
enhancementaigrid
assigneestobiu
createdAtApr 3, 2026, 1:02 AM
updatedAtApr 3, 2026, 1:03 AM
githubUrlhttps://github.com/neomjs/neo/issues/9636
authortobiu
commentsCount0
parentIssue9486
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]

Grid Multi-Body: Simplify GridDragScroll Scrollbar Hit Detection

Openenhancementaigrid
tobiu
tobiu commented on Apr 3, 2026, 1:02 AM

With the reintroduction of the dedicated proxy VerticalScrollbar component, the grid.View no longer utilizes native scrollbars within its direct bounding geometry (both vertical and horizontal proxies are now absolutely positioned overlays).

The GridDragScroll Main Thread addon currently uses complex bounding box mathematics (getBoundingClientRect(), event.offsetX, clientWidth) to guess if a mousedown originated over a native scrollbar, to prevent panning the grid while dragging the scroll thumb.

We can completely remove this localized mathematical logic. Since the scrollbars are now discrete proxy DOM nodes, we can rely directly on event.target boundaries, exactly as currently implemented in the neo-testing branch.

Task: Refactor GridDragScroll.mjs scrollbar hit-detection logic to replace bounding box math with direct target node verification using the newly introduced vertical and horizontal proxy nodes.

tobiu added the enhancement label on Apr 3, 2026, 1:02 AM
tobiu added the ai label on Apr 3, 2026, 1:02 AM
tobiu added the grid label on Apr 3, 2026, 1:02 AM
tobiu added parent issue #9486 on Apr 3, 2026, 1:02 AM
tobiu assigned to @tobiu on Apr 3, 2026, 1:03 AM