Frontmatter
| id | 8999 |
| title | Update GridContainer scrollByColumns to target VDOM root |
| state | Closed |
| labels | bugairegression |
| assignees | tobiu |
| createdAt | Feb 5, 2026, 11:44 AM |
| updatedAt | Feb 5, 2026, 11:46 AM |
| githubUrl | https://github.com/neomjs/neo/issues/8999 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Feb 5, 2026, 11:46 AM |
Update GridContainer scrollByColumns to target VDOM root
tobiu assigned to @tobiu on Feb 5, 2026, 11:45 AM

tobiu
Feb 5, 2026, 11:46 AM
Input from Gemini 3 Pro:
✦ I have applied the fix to target
me.getVdomRoot().idinstead ofme.vdom.id. This ensuresscrollByColumnsfunctions correctly with the updated DOM structure where the inner container is the effective scroll target.
tobiu closed this issue on Feb 5, 2026, 11:46 AM
The
scrollByColumnsmethod currently targetsme.vdom.id(the wrapper). Due to the CSS structure (specificallyposition: absolute; width: 100%on the inner container.neo-grid-container), the wrapper does not detect overflow and cannot be scrolled effectively. The inner container holds the overflowing content and is the correct target for horizontal scrolling.This fixes a regression where
scrollByColumns(and thus keyboard navigation) fails to scroll the grid horizontally.Implementation: Update
src/grid/Container.mjsto useid: me.getVdomRoot().idinstead ofme.vdom.idinscrollByColumns.