LearnNewsExamplesServices
Frontmatter
id9522
titleGrid Column Resizing: Header Logic and Update on Drop
stateClosed
labels
enhancementaigrid
assigneestobiu
createdAtMar 20, 2026, 10:54 AM
updatedAtMar 20, 2026, 12:09 PM
githubUrlhttps://github.com/neomjs/neo/issues/9522
authortobiu
commentsCount1
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtMar 20, 2026, 12:09 PM

Grid Column Resizing: Header Logic and Update on Drop

Closed v12.1.0 enhancementaigrid
tobiu
tobiu commented on Mar 20, 2026, 10:54 AM

Description

Implement drag-and-drop based resizing for Grid column headers. This ticket covers the first phase: adding the resize handles to the header buttons and updating the grid body cells only after the drag operation is completed (on drop).

Tasks

  • Create src/grid/header/plugin/Resizable.mjs extending Neo.plugin.Resizable.
  • Configure the plugin to restrict resizing to the right edge (directions: ['r']).
  • Override onDragEnd in the plugin to calculate the new width and apply it to the header button.
  • Ensure the plugin triggers passSizeToBody() on the parent grid.header.Toolbar so the grid body synchronizes the cell widths.
  • Update src/grid/header/Button.mjs with a new resizable_ config that dynamically adds the plugin when enabled.

Note

Real-time body updates during the drag:move operation are out of scope for this ticket and will be handled in a follow-up ticket.

tobiu added the enhancement label on Mar 20, 2026, 10:54 AM
tobiu added the ai label on Mar 20, 2026, 10:54 AM
tobiu added the grid label on Mar 20, 2026, 10:54 AM
tobiu assigned to @tobiu on Mar 20, 2026, 10:54 AM
tobiu referenced in commit 41bd05a - "feat(grid): Implement drag&drop based resizing for grid column headers (#9522) on Mar 20, 2026, 12:08 PM
tobiu
tobiu Mar 20, 2026, 12:09 PM

Input from Gemini 3.1 Pro:

✦ Implemented in commit 41bd05a4d. We decided to split the work and create a follow-up ticket to address the drag&drop conflicts.

tobiu closed this issue on Mar 20, 2026, 12:09 PM