Skip to content

Navigate timeline images in the lightbox - #3489

Merged
brsbl merged 7 commits into
fix/mobile-lightboxfrom
fix/timeline-image-navigation
Sep 12, 2026
Merged

brsbl merged 7 commits into
fix/mobile-lightboxfrom
fix/timeline-image-navigation

Conversation

@brsbl

@brsbl brsbl commented Sep 11, 2026 •

Copy link
Copy Markdown
Collaborator

Human comments

What was wrong

Each inline Markdown image opened its own lightbox, preventing navigation between timeline images, including images inside tables.

What changed

  • Navigate rendered images in the loaded timeline using buttons or keyboard arrows, with wrapping and a position count.
  • Turn-detail images participate only while expanded; ordinary worker images stay excluded.
  • Duplicate URLs remain separate occurrences, in rendered order, without reparsing Markdown or fetching older history.

How you verified

Current-head remote CI passed at 8cc1d9c75 after integrating main.

  • Remote CI passed at ec3f9b05c, including all five gallery regression tests.
  • Chrome at ec3f9b05c passed inline/table navigation, loaded-page counts, lazy completed-turn expansion/collapse, image/backdrop dismissal, and desktop Escape.
  • Mobile opens the table at 2 / 3; desktop includes its already-loaded older image and opens at 3 / 4.

Before and after

These captures predate main integration. Refreshed exact-head screenshots remain pending.

Chrome for Testing 153.0.8010.36, exact branch web apps, the same synthetic timeline and table image, and light theme. Mobile: 390 × 844 CSS pixels; desktop: 1280 × 900. Every PNG is captured at 2× and inspected at full resolution.

Before: 6f1d89cfc. After: ec3f9b05c.

State Before After
Table image — mobile Before: table image on mobile After: table image on mobile
Table image — desktop Before: table image on desktop After: table image on desktop
Dismissed — mobile Before: returned to timeline After: returned to timeline
Additional verified gallery states
State Mobile Desktop
Previous arrow reaches inline image Inline image 1 of 3 Inline image 2 of 4

Expanding completed-turn details adds the nested image. In this capture, scrolling also loaded the older page: five images total. Collapsing the turn again reduced the gallery to four.

Expanded nested image 2 of 5

Live streaming updates, CSS-clipped previews, and current-image retention are follow-on work. A separate, pre-existing desktop/mobile layout remount still closes open lightboxes; it also reproduces on the follow-on branch.

BB-Thread-ID: thr_rmv43jkeac

AGENT GENERATED

@brsbl
brsbl added this pull request to stack #3490 September 11, 2026 15:55
@brsbl brsbl changed the title Navigate inline timeline images from the lightbox Navigate timeline images in the lightbox Sep 11, 2026
@brsbl
brsbl force-pushed the fix/timeline-image-navigation branch from 6608135 to ec3f9b0 Compare September 11, 2026 17:59
@brsbl
brsbl merged commit bf2404d into main Sep 12, 2026
21 of 30 checks passed
@brsbl
brsbl deleted the fix/timeline-image-navigation branch September 12, 2026 22:12
danielbachhuber added a commit to danielbachhuber/bb that referenced this pull request Sep 15, 2026
- markdown-preview.test.tsx: the only marked conflict, and it was adjacency
  in the import block. This branch added `onTestFinished` to the vitest
  import; main added `highlightMarkdownCode` on the next line. Both imports
  stay.
- markdown-preview.tsx merged cleanly and needed no follow-up. Main's
  changes there came from the incremental streaming render (get-bb#3591) and the
  timeline lightbox work (get-bb#3489, get-bb#3596); none of them touch `MarkdownAnchor`
  or `MarkdownListItem`, so the fragment-link handling and the forwarded
  `<li id>` survive as written.
- The incremental renderer does not undercut this fix. It treats
  `footnoteDefinition` and `footnoteReference` as global constructs
  (markdown-incremental-pieces.ts), so a message with footnotes is not split
  across pieces, and every piece renders inside the same
  `[data-markdown-preview]` root the destination lookup scopes to.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant