multi-view: per-device layout persistence #34

Closed
opened 2026-06-21 21:41:51 +01:00 by naps62-yolo · 0 comments
Collaborator

Part of the multi-view web epic #37.

Description

Persist the full Layout (tabs + trees + focus) to localStorage and restore on load, handling sessions that no longer exist. Per-device (no cross-device sync — explicit non-goal).

Acceptance criteria

  • Reload restores the exact tabs/splits/focus on the same device.
  • A restored leaf whose session exited shows a placeholder with a close action (no crash, no silent drop).
  • Writes debounced; corrupt/absent storage falls back to a single empty tab.

Technical notes

  • Follow the localStorage pattern used for --sidebar-w (catalog.ts:327-360). Version the stored schema.
  • Dead-session handling is PRD open Q1 — implement "placeholder + close" unless decided otherwise.
Part of the multi-view web epic #37. ### Description Persist the full `Layout` (tabs + trees + focus) to localStorage and restore on load, handling sessions that no longer exist. Per-device (no cross-device sync — explicit non-goal). ### Acceptance criteria - [ ] Reload restores the exact tabs/splits/focus on the same device. - [ ] A restored leaf whose session exited shows a placeholder with a close action (no crash, no silent drop). - [ ] Writes debounced; corrupt/absent storage falls back to a single empty tab. ### Technical notes - Follow the `localStorage` pattern used for `--sidebar-w` (`catalog.ts:327-360`). Version the stored schema. - Dead-session handling is PRD open Q1 — implement "placeholder + close" unless decided otherwise.
naps62-yolo added a new dependency 2026-06-21 21:42:56 +01:00
naps62-yolo added a new dependency 2026-06-21 21:42:56 +01:00
naps62-yolo self-assigned this 2026-06-22 10:22:05 +01:00
This repo is archived. You cannot comment on issues.
1 Participants
Due Date
No due date set.
Reference: naps62/maestro#34