feat(tui): status debounce, scroll indicator, drawer label, card grouping

Status messages now use a sequence counter so rapid actions don't
cause premature clearing. Detail pane shows scroll position and
supports pgup/pgdown/g/G. Capture drawer border includes inline
label. Cards view groups by intent (pinned/grab/read/fill) with
gutter labels matching the stream view's date grouping pattern.
This commit is contained in:
2026-05-20 11:49:11 -04:00
parent cb10d1e93d
commit c26e2d2022
5 changed files with 191 additions and 62 deletions
+10 -1
View File
@@ -103,7 +103,16 @@ func (i inputModel) updateKey(msg tea.KeyMsg) inputModel {
func (i inputModel) view(width int) string {
var b strings.Builder
b.WriteString(drawerBorderStyle.Render(strings.Repeat("─", width)))
label := "capture"
prefix := "── "
suffix := " "
dashCount := width - len(prefix) - len(label) - len(suffix)
if dashCount < 0 {
dashCount = 0
}
b.WriteString(drawerBorderStyle.Render(prefix) +
hintDescStyle.Render(label) +
drawerBorderStyle.Render(suffix+strings.Repeat("─", dashCount)))
b.WriteString("\n")
b.WriteString(i.ti.View())
b.WriteString("\n")