Files
dbdash/TODO.md
T
2026-10-19 16:20:45 +02:00

24 lines
3.4 KiB
Markdown

- [x] adopt vamp-style top and bottom bars with a fixed layout, not vamp's configurable segment/tab system.
- [x] 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).
- [x] top: `dbdash` badge with vamp-style `▓░` trailing edge; retain READ ONLY information without tab numbering.
- [x] bottom-left: current mode badge with `▓░` trailing edge, followed by the connected database name; bottom-right: database provider followed by the focused input's one-based `line:column` (or N/A) with `░▓` leading edge.
- [x] 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.
- [x] 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.
- [x] keep connection/password forms direct-entry for now; make the mode indicator reflect the focused surface rather than a stale query mode.
- [x] expose position from the existing `Input` cursor instead of duplicating state; follow the focused query/form field, show N/A outside inputs, and define Unicode column semantics consistently.
- [x] 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.
- [x] handle narrow/short terminals without overlapping content: truncate the database label before mode/position, and let bars yield to content when height is insufficient.
- [x] 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.
- [x] pressing `i` on a configured database connection should bring up a floating window with details/info on that connection.
- [x] show a `*` to the right of the connected db in the sidebar.
- [x] use the proper ending character in the family of `├` instead of that character all the way down.
- [x] remove this top-most line above the panels on the right-hand side: `dbdash │ SQLite │ READ ONLY`.
- [x] highlight the current cell isntead of just the current row in the results pane.
- [x] put the help text inside it's own pane so it fits the design more cleanly.
- [x] move the table name in the results pane from the bottom-left border title to top-right border title instead
- [x] remove the bottom navigation help panel and have a keybinding overview appear in a floating window when pressing `?` in normal mode
- [x] remove the path from the database entry in the sidebar (can be viewed in the info panel)
- [x] info panel should also pop up when pressing `i` on a child entry of that database entry in the sidebar (instead of only when the parent/database connection is hovered)
- [x] `line:col` indicator in the bottom-right status bar should never disappear but instead display "N/A" in that case.
- [x] database type indicator should be moved down just left of the "line:col" indicator like in the attached image
- [ ] introduce vim navigation inside the query input field.