aboutsummaryrefslogtreecommitdiffstats
path: root/TODO.md
blob: dc092e4520b20afe378a8c7895a341d85695e314 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# TODO

## Per-id history removal

The notification spec (quickshell repo,
`docs/superpowers/specs/2026-09-15-notification-daemon-design.md`) says a
history row is closable individually. The daemon has no per-id history delete:
`notifyctl` ships `clear-history` (all) only, so the renderer's history page
ships inert rows and a clear all.

To close this:

- `Store.RemoveHistory(id uint32)` in `internal/notify/store.go`, dropping one
  entry from the ring and publishing.
- `control.RemoveHistory(id)` in `internal/notify/control.go`.
- `notifyctl history-remove <id>` in `cmd/notifyctl/main.go`.
- A `store_test.go` case that removes one entry and leaves the rest of the ring.
- Renderer: `shared/Notify.qml` gains `historyRemove(id)` running
  `notifyctl history-remove`, and `desktop/NotificationRow.qml` calls it for a
  non-live (history) row instead of ignoring the click.

Until then, the history page clears all or nothing.