tui: Gallery screen — folders, favorites, multi-select #29

Closed
opened 2026-04-11 13:04:23 +00:00 by charles · 0 comments
Owner

User story

As a user organising a growing gallery, I want folders, favourites, and multi-select actions, so that I can curate my library efficiently.

Acceptance criteria

Folders (sidebar panel)

  • Folder list rendered in a gallery-local left sub-panel (hideable with Ctrl+Shift+B)
  • a create folder (name prompt overlay); r rename; d delete with confirmation
  • Selecting a folder filters the main view to that folder
  • m opens a folder picker overlay to move the focused image into the chosen folder

Favorites

  • * toggles favourite on the focused image; persisted in loom-core
  • Favourite status shown as a glyph (★) on the cell / row
  • Favourites-only filter integrates with the filter panel ticket

Multi-select

  • Space toggles selection on the focused item (normal movement still works)
  • A selects all items in the current filtered view; Esc clears selection
  • D deletes all selected (confirmation prompt, default N)
  • M moves all selected to a folder (picker overlay)
  • Selection count shown in the gallery header

Tests

  • Unit test: creating then deleting a folder leaves gallery state unchanged
  • Unit test: multi-select D invokes loom-core delete for each selected id and clears the set
  • Unit test: toggling * emits the expected persistence call

Out of scope

  • Detail view, zoom/pan, image info overlay (separate ticket)
  • Sharing (separate ticket)

References

  • Spec §4.2.2 "Folders", "Favorites", "Multi-select"
## User story As a user organising a growing gallery, I want folders, favourites, and multi-select actions, so that I can curate my library efficiently. ## Acceptance criteria ### Folders (sidebar panel) - [ ] Folder list rendered in a gallery-local left sub-panel (hideable with `Ctrl+Shift+B`) - [ ] `a` create folder (name prompt overlay); `r` rename; `d` delete with confirmation - [ ] Selecting a folder filters the main view to that folder - [ ] `m` opens a folder picker overlay to move the focused image into the chosen folder ### Favorites - [ ] `*` toggles favourite on the focused image; persisted in `loom-core` - [ ] Favourite status shown as a glyph (★) on the cell / row - [ ] Favourites-only filter integrates with the filter panel ticket ### Multi-select - [ ] `Space` toggles selection on the focused item (normal movement still works) - [ ] `A` selects all items in the current filtered view; `Esc` clears selection - [ ] `D` deletes all selected (confirmation prompt, default N) - [ ] `M` moves all selected to a folder (picker overlay) - [ ] Selection count shown in the gallery header ### Tests - [ ] Unit test: creating then deleting a folder leaves gallery state unchanged - [ ] Unit test: multi-select `D` invokes `loom-core` delete for each selected id and clears the set - [ ] Unit test: toggling `*` emits the expected persistence call ## Out of scope - Detail view, zoom/pan, image info overlay (separate ticket) - Sharing (separate ticket) ## References - Spec §4.2.2 "Folders", "Favorites", "Multi-select"
charles added this to the loom-tui v0.1.0 milestone 2026-04-11 13:04:23 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/loom#29
No description provided.