-
Notifications
You must be signed in to change notification settings - Fork 40
Closed
Description
Parent
Sub-issue of #885 (Video Playback Architecture Refactor)
Goal
Add video playback controls to the presenter for interactive frame selection.
Update Presenter
src/caliscope/gui/presenters/intrinsic_calibration_presenter.py
Add methods:
seek_to(frame_index: int) -> None— for slider scrubbingpause() -> Noneunpause() -> None
Add properties:
frame_count: intcurrent_frame_index: int
Update View
src/caliscope/gui/views/intrinsic_calibration_dev_view.py
- Add slider widget
- Wire slider signals to presenter methods
- Disable controls during COLLECTING/CALIBRATING states
Fix
Legacy slider freeze bug — button disabled at end frame and doesn't recover when seeking backward.
Behaviors
Paused state:
- Slider drag →
seek_to()shows tracked frame at position - Slider release → stays paused at new position
Playing state:
- Slider tracks current frame position
- Slider drag → pause, show tracked frame
- Slider release → resume from new position
During calibration (COLLECTING/CALIBRATING):
- Playback controls disabled
- Cannot interrupt mid-calibration except via Stop button
Verification
Manual testing of slider behavior in all states
Branch Order
5 of 7 in #885
Metadata
Metadata
Assignees
Labels
No labels