Drag cards out into columns, and columns among and into columns

The user wants to drag a card out between columns to make a new column,
and to drag columns to reorder them or put them inside other columns.

Their pick for where: the row of titles, the gaps between columns and
the space past the last one are among the columns. Something dragged
there becomes a column, before the column under the mouse on its left
half and after it on its right half, after the one to the left in a gap.
Anywhere else it goes into the column under the mouse by the card rules,
so a column dragged down into another one becomes a card, its own cards
its block. A column's title no longer means "its first card"; the top
half of its first card does that. The root's column stays first and
can't be dragged (the user's pick): it says so.

The board holds still around a drag. Besides the kept widths, the room a
dragged column took stays empty while it isn't a column (Drag.room):
without it, the columns to its right slid left under the mouse each
time it stopped being one, and the card landed a column too far.
Dropping it back in that room makes it that column again.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
skkeyeandClaude Opus 5.5 committed 2026-10-02 14:17:04 -04:00
1 parent 38eca3c8c3
commit 09f8b048d6
4 files changed
+210 -34

No files matched your search

+20 -9
View File
@@ -362,13 +362,22 @@ lines.
at its end; a column's own node trades places with the column beside
(the root's stays first). Enter is done, one undo step. Every move goes
through the tree.
- A drag moves the card live, as the canvas does (the user's pick): it goes
through the board as the mouse goes, by the row the mouse is on in the
column under it. On a card's top half it goes before that card; on its
- A drag moves a card, or a column by its title, live, as the canvas does
(the user's pick); the whole drag is one undo step. The row of titles,
the gaps between columns and the space past the last one are among the
columns (the user's pick): there it becomes a column, before the column
under the mouse on its left half, after it on its right half, after the
one to the left in a gap. Anywhere else it goes into the column under
the mouse, as a card, by the row: on a card's top half before it; on its
bottom half after it, or into its block as the first card; on a block's
foot, after the block; on a column's title, first; below the cards,
last. The whole drag is one undo step. The columns keep their widths
while a card is dragged, so the one under the mouse stays put.
foot, after the block; below the cards, last. So a card dragged out
becomes a column, and a column dragged into another one becomes a card,
its cards its block. The root's column stays first and can't be dragged
(the user's pick: it's the document's root).
- The board holds still around a drag: the columns keep the widths they
had, and the room a dragged column took stays empty while it isn't one
(dropping it there makes it that column again). Otherwise the columns
beside would slide under the mouse, and the card would chase them.
- In visual mode the board selects in reading order, as the outline does.
**Views, panes and popups** (settled in stage 7)
@@ -568,9 +577,11 @@ pans up and down, and sideways with a wheel that tilts, a touchpad, or the
wheel with Shift or Alt held (Alt for terminals that keep Shift for selecting
text), Ctrl+drag selects a rectangle, Ctrl+click adds or removes one node,
right-click opens a menu built from the same actions as the keys. Zoom is on
the `+` and `-` keys. On the board, dragging a card moves it through the
tree as the mouse goes: before or after the card under it (by which half),
into a block, out at its foot, or to a column's top or end.
the `+` and `-` keys. On the board, dragging a card, or a column by its
title, moves it through the tree as the mouse goes: before or after the
card under it (by which half), into a block, out at its foot, to a
column's end, or among the columns (on the titles' row or in a gap) as a
column of its own.
## Modes and keys