feat(tiles): the Tiles button opens the grid at once; the picker is on right-click

Owner decision 8 ("when I hit the tiles button, open the tiles already!").
A click with the grid closed now opens it straight away, and Ctrl+Shift+G
runs the same function (toggleTileGrid), so the two cannot drift. What
opens comes from one pure helper, tileGridOpenSet (constants.js):
  a. the grid this tab last had, if any of its sessions survive, opened
     exactly (an open split closes and its sessions do not join);
  b. else an open split's two sessions, Pane A focused;
  c. else the open sessions in tab order (the picker's list: no detached
     ones), up to what the grid takes here (the cap of 6, fewer when the
     window fits fewer), the active session always among them and focused.
A click with the grid open still closes it.

The picker moved to right-click (oncontextmenu, browser menu suppressed).
With the grid open it is preselected with the current tiles, and Open
replaces them. Ctrl/Cmd+click on a tab with the grid closed opens the
toggle's set plus that session. The button's title, the Help modal and
the wiki say right-click chooses which sessions.

Docs: decision 8 and an as-built entry in the spec (Entry points too),
CLAUDE.md, the invariants (#tile-grid, Opening), the wiki's Tile Grid and
Keyboard Shortcuts pages.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Codeman maintainer
2026-10-06 23:23:55 +02:00
parent d2e72143e8
commit b7fafb1c16
14 changed files with 322 additions and 45 deletions
+1
View File
@@ -47,6 +47,7 @@ Anything you copy is cleaned on the way to the clipboard: each line loses the pa
| `Alt+Shift+Arrows` | Focus the tile to the left, right, above or below. |
| `Alt+Shift+Enter` | Zoom the focused tile, or restore the grid. |
| `Ctrl`+click / `Cmd`+click a tab | Add that session to the grid. |
| Right-click the Tiles button | Choose which sessions to show as tiles. |
While the grid is open, `Ctrl+Tab` and `Alt+[` / `Alt+]` cycle through the tiles, and the
terminal shortcuts above act on the focused tile. **Remove Focused Tile** has no key by
+8 -6
View File
@@ -15,12 +15,14 @@ button in the header, beside Split, and enables `Ctrl+Shift+G`.
## Opening a grid
- **Tiles button**: with the grid closed it opens a picker, a checkbox per open session in
tab order. It starts with the grid you last had (or the session you are on), says how many
tiles this window fits, and greys out the rest. **Open tiles** shows them. With the grid
open, the same button closes it.
- **`Ctrl+Shift+G`**: toggles the grid. Opening brings back the grid you last had, else an
open split as two tiles, else the session you are on.
- **Tiles button**: one click shows the tiles straight away. You get the grid you last
had; if there is none, an open split as two tiles; otherwise your open sessions in tab
order, up to six (fewer if the window is too small), with the session you are on
focused. With the grid open, the same button closes it.
- **Right-click the Tiles button** to choose which sessions: a checkbox per open session in
tab order, starting with the tiles you have (or had), greying out the rest once the grid
is full. **Open tiles** shows them, replacing what the grid showed.
- **`Ctrl+Shift+G`**: exactly what a click on the Tiles button does.
- **`Ctrl`+click (or `Cmd`+click) a tab**: adds that session to the grid and focuses it,
opening the grid if it was closed. On macOS use `Cmd`: `Ctrl`+click there opens the tab's
rename instead.