Files
tty7/docs/reference
l0ng-ai 7d586852c0 merge: main into feat/new-window-action
#778 landed `CloseWindow` first, and the two actions were written to sit
in the same slot on every surface, so git flagged the adjacency: the
`actions!` row, the `default_bindings` entry, `authored_entry`,
`make_binding`, the vocabulary assertion, `CommandKind` and its two
`match` arms, and the `on_action` chain. All of those take both sides,
each list keeping its established order — `NewWindow` before
`CloseWindow`, the way `NewTab` precedes `CloseActiveTab` above them.

Two conflicts were more than adjacency:

- `Tty7App`'s method block. `new_window` and main's
  `prepare_window_close` / `close_window` were written over each other;
  all three are kept, and `on_window_should_close` still calls
  `prepare_window_close` as #778 left it.
- The test tail. Both branches appended a module of the same shape with
  the same imports, and git spliced them into one. Rebuilt as two whole
  modules, `new_window_action_tests` then `close_window_action_tests`,
  each with its own `use` block and its own tests intact.

The palette's `application` array needed no resolution: #778 put Close
Window beside Quit rather than at the head, so New Window keeps the
first slot.

Nothing of #778's is dropped — the merge result is a pure addition over
main. `secondary-n` is still claimed by nothing else (`CloseWindow`
shipped unbound on every platform), `action_context` has no arm for
either action while `make_binding` installs both with `None`, and the
global `NewWindow` listener in `keymap::init` is still there once, with
no global registration of `CloseWindow` to collide with.
2026-09-07 22:47:15 +08:00
..