Skip to content

v0.9.1 — the keyboard actually works now

Choose a tag to compare

@roypadina roypadina released this 30 Aug 19:55
· 13 commits to main since this release

0.9.0 shipped a keyboard layer that never ran. This fixes it, makes hide and delete findable, and adds multi-select.

The shortcuts were dead

Not just some of them — every one. The view reported its hosting window from updateNSView, whose first call runs before the view is in a window, so it could only ever report nil; the render-loop guard added on top then latched after that nil and never reported again. handleShortcut opens by requiring that window, so every key returned false. It now reports from viewDidMoveToWindow, and a missing window falls back to the key window instead of silently dropping the key.

Hide and delete are findable

They live in the shelf control at the right of the action row, which labelled itself with where the session currently sits — "Listed". That meant nothing to someone looking for a way to hide something. It now reads Hide or delete until the session is actually on another shelf, its menu has a Move to header, and the items carry their shortcuts.

Multi-select

⌘M marks the highlighted session and moves down, ⇧⌘M or esc clears, and ⌘D, ⇧⌘H and ⌘⌫ act on every marked session when any are marked — the same rule space follows in the terminal menu. Marks render as a green ✓ on the row and the footer counts them. They are stored as session ids rather than list positions, so re-filtering the list cannot slide them onto other rows.