Skip to content

fix(desktop): draw bookmark markers on the playback timeline (#616) - #618

Open
badbread wants to merge 1 commit into
mainfrom
fix/desktop-timeline-bookmark-markers
Open

fix(desktop): draw bookmark markers on the playback timeline (#616)#618
badbread wants to merge 1 commit into
mainfrom
fix/desktop-timeline-bookmark-markers

Conversation

@badbread

@badbread badbread commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Fixes #616.

Bug: a bookmark (e.g. added on Android) shows in the desktop Bookmarks screen but has no indicator on the playback timeline.

Cause: parity gap, not a sync issue. Android (CenteredTimeline 2c) and iOS (CenteredTimelineView 2c) draw saved bookmarks as gold downward triangles at the top of the band; the desktop motion timeline fetched intensity + detections only and had no bookmark glyph, so no bookmark ever appeared there, whichever client created it.

Fix:

  • controller: fetch the caller's bookmarks with the window data and keep the loaded cameras' entries; guarded on its own so a bookmarks failure (platform toggle off) never blanks the intensity/detections that just loaded
  • painter: gold marker (Android's TimelineColors.bookmark) with a dark halo at the band top; solo-mode visibility and selected-camera prominence match the detection glyphs; drawn last so it stays on top
  • hover: bookmark chip (note or "Bookmark", camera, time) wins the hit-test over detections
  • playback: refresh the timeline right after a successful add so the marker shows immediately

Verify: flutter build windows --debug green on winbuild. The marker itself is desktop UI, so the visual check is running the app with a bookmarked camera.

Bookmarks never appeared on the desktop timeline, regardless of which client
created them: the motion-timeline controller fetched intensity + detections
only, and the painter had no bookmark glyph. Android and iOS both draw saved
bookmarks as gold downward triangles at the top of the band, so a bookmark
added on the phone was listed in the desktop Bookmarks screen but invisible on
the strip.

- controller: fetch the caller's bookmarks alongside the window data, keep the
  loaded cameras' entries, guarded so a bookmarks failure (toggle off) never
  blanks the intensity/detections that just loaded
- painter: gold marker (Android's TimelineColors.bookmark) with a dark halo at
  the band top, solo-mode visibility and selected-camera prominence matching
  the detection glyphs; drawn last so it stays on top
- hover: a bookmark chip (note or 'Bookmark', camera, time) wins the hit-test
  over detections
- playback: refresh the timeline right after a successful add so the new
  marker shows immediately

Fixes #616

Signed-off-by: badbread <badbread@users.noreply.github.com>
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.

Desktop: playback timeline does not render bookmark markers (Android and iOS do)

1 participant