From a032579e986b45aaaea6a9c96e70fa080809c9e3 Mon Sep 17 00:00:00 2001 From: Valdemar Lorenzen Date: Mon, 19 Oct 2026 14:41:36 +0200 Subject: [PATCH] docs: detail vamp-style bars and modal input tasks --- TODO.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/TODO.md b/TODO.md index 1b8c858..bd32ffb 100644 --- a/TODO.md +++ b/TODO.md @@ -1,7 +1,17 @@ +- [ ] adopt vamp-style top and bottom bars with a fixed layout, not vamp's configurable segment/tab system. + - [ ] render full-width bars in the outer shell (`src/connection.rs`) before splitting explorer/content; remove the old content-only header (`src/app.rs`, see above). + - [ ] top: `dbdash` badge with vamp-style `▓░` trailing edge; retain provider and READ ONLY information without tab numbering. + - [ ] bottom-left: current mode badge with `▓░` trailing edge, followed by the connected database name; bottom-right: focused input's one-based `line:column` with `░▓` leading edge. + - [ ] capture a safe database display name on successful saved-profile and CLI connections, including SQLite; use the connected database, not explorer selection or `Database::name()` (which returns the provider). Never expose raw connection strings/passwords; show a clear disconnected state and retain the previous identity after a failed switch. + - [ ] add Normal/Insert query editing with mode-aware key routing; define entry/navigation keys and make Esc leave Insert before returning to the explorer. Preserve query execution, multiline editing, paste, and focus cycling. + - [ ] keep connection/password forms direct-entry for now; make the mode indicator reflect the focused surface rather than a stale query mode. + - [ ] expose position from the existing `Input` cursor instead of duplicating state; follow the focused query/form field, hide position outside inputs, and define Unicode column semantics consistently. + - [ ] keep relation/page/column status in pane borders and accommodate the separate help pane; do not add tabs, title templates, custom segments, or editor-specific status. + - [ ] handle narrow/short terminals without overlapping content: truncate the database label before mode/position, and let bars yield to content when height is insufficient. + - [ ] verify mode transitions/key precedence, focused-input Unicode positions, connection identity on successful/failed switches, and constrained layouts; smoke-run the TUI and ask for a visual check. - [ ] pressing `i` on a configured database connection should bring up a floating window with details/info on that connection. - [ ] show a `*` to the right of the connected db in the sidebar. - [ ] use the proper ending character in the family of `├` instead of that character all the way down. - [ ] remove this top-most line above the panels on the right-hand side: `dbdash │ SQLite │ READ ONLY`. - [ ] highlight the current cell isntead of just the current row in the results pane. -- [ ] put the help text inside it's own pane so it fits the design more cleanly. -- [ ] adopt the vamp top and bottom bars for modal and other info display. \ No newline at end of file +- [ ] put the help text inside it's own pane so it fits the design more cleanly. \ No newline at end of file