Reusable selection behavior for lists, trees, grids, and tab bars.
Must support: single selection, cursor movement, wrap vs clamp, selected-item tracking.
Deliverable: src/selection.sh with functions consumed by list/tree/grid widgets.
Effort: S (1–2h) | Phase: 2
Reusable selection behavior for lists, trees, grids, and tab bars.
Must support: single selection, cursor movement, wrap vs clamp, selected-item tracking.
Deliverable:
src/selection.shwith functions consumed by list/tree/grid widgets.Effort: S (1–2h) | Phase: 2