The per-step paint toggled the row you arrived at, so going down then back up toggled off the rows re-entered but never the furthest row you turned around on — it stayed marked. Anchor the selection instead: on entering visual mode record the anchor row, and on each move reconcile marks to the contiguous range [anchor, cursor], toggling only the rows whose membership changed. Moving back now cleanly reverses; jumps reconcile the whole span. visual state becomes Option<usize> (the anchor). Adds a regression test (down then fully up leaves only the anchor); 90 cbd-tui tests green, clippy/fmt clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.lock | ||
| Cargo.toml | ||
| build.rs | ||
| schema.graphql | ||