Skip to content

feat(canvas): multi-node selection with marquee, group drag, and bulk close#366

Merged
Anton-Horn merged 1 commit into
mainfrom
feat/multi-node-selection
Jun 9, 2026
Merged

feat(canvas): multi-node selection with marquee, group drag, and bulk close#366
Anton-Horn merged 1 commit into
mainfrom
feat/multi-node-selection

Conversation

@Anton-Horn

@Anton-Horn Anton-Horn commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

What

Canvas multi-selection:

  • Marquee drag over empty canvas selects multiple nodes
  • Dragging any selected node moves the whole group together (useGroupNodeDrag)
  • A selection ring marks selected-but-not-active panes (distinct from the focus halo)
  • Canvas mini-dock context menus collapse to a bulk "Close All" while a multi-selection is active (useMultiNodeSelection)

Also in here

  • terminal: rebuild the shared WebGL glyph atlas across all live terminals on repaint, fixing scrambled glyphs in sibling terminals that share the atlas
  • editor: reload the Monaco model when the file changes on disk externally (other editor, agent, git checkout), skipping while the buffer is dirty so unsaved edits are never clobbered
  • canvas: select-tool trackpad two-finger scroll pans again (mouse wheel still zooms); freeze in-flight zoom/pan animations when anchoring a marquee so the box stays under the cursor
  • node cleanup when a tab is moved out via "Move into New Window" leaves an empty node

Bumps version to 1.3.0.

Closes #363
Closes #364
Closes #365

… close

Add canvas multi-selection: marquee drag selects multiple nodes, dragging
any selected node moves the whole group, and a selection ring marks
selected-but-not-active panes. Canvas mini-dock context menus collapse to a
bulk "Close All" while a multi-selection is active.

Also:
- terminal: rebuild the WebGL glyph atlas across all live terminals on
  repaint, fixing scrambled glyphs in sibling terminals sharing the atlas
- editor: reload the Monaco model when the file changes on disk externally
  (other editor, agent, git checkout), skipping while the buffer is dirty
- canvas: select-tool trackpad two-finger scroll pans again (mouse wheel
  still zooms), and freeze in-flight animations when anchoring a marquee
@Anton-Horn Anton-Horn merged commit 98809e8 into main Jun 9, 2026
3 checks passed
@Anton-Horn Anton-Horn deleted the feat/multi-node-selection branch June 9, 2026 17:10
@GHAFRI

GHAFRI commented Jun 9, 2026

Copy link
Copy Markdown

editor: reload the Monaco model when the file changes on disk externally (other editor, agent, git checkout), skipping while the buffer is dirty so unsaved edits are never clobbered

This issue not fixed in my use case, only solution I found to make it reload is to simply rename the file in the file explorer. Otherwise inside the canvas or opening the file in new window does not reload it. Force reload (Shift+CMD+R) does actually reload the md file but I would lose agent sessions which is not ideal

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants