openpencil/crates/op-editor-core
Fini b22c3c43e9 feat(editor): make the slides rail the deck's only navigator
The bottom filmstrip duplicated the rail's slides tab, so it is deleted
outright; its board-listing model survives as deck_boards, which both the
rail and the presenter keep using. The slides tab itself goes permanent —
any page with boards lists them, not just tagged deck documents — and rows
get a fixed-height box that letterboxes each board on its own aspect, so
phone screens and dashboards line up instead of stretching the column.

The tab row measures its labels and drops to icons (active tab keeps its
label) when the text genuinely cannot fit, sized by real overflow rather
than a width threshold so a third tab enables it everywhere for free.

Making the tab permanent would also have detonated a latent resize bug:
the rail's hover tier claimed every in-rail cursor move with no exemption
for a live drag, so a resize could widen the rail but never narrow it.
Panel-resize now runs ahead of the hover tiers as pointer capture, and the
web ladder learns native's z-order for an open model picker over the rail.

Claude-Session: https://claude.ai/code/session_01FqKQqNj8exYwopGDpYUU7x
2026-08-07 02:00:22 +08:00
..
assets feat(editor): grow the asset center into a full-window gallery with dual-action templates 2026-08-07 02:00:22 +08:00
src feat(editor): make the slides rail the deck's only navigator 2026-08-07 02:00:22 +08:00
tests test: decouple document fixtures from product releases 2026-07-15 21:17:20 +08:00
Cargo.toml refactor: dedupe cross-crate code and converge hardcoded literals 2026-07-26 11:24:22 +08:00