Skip to content

Make blink mode's speed adjustable and add an optional crossfade#55

Merged
jeremyfelt merged 2 commits into
trunkfrom
feat/blink-controls
Jun 26, 2026
Merged

Make blink mode's speed adjustable and add an optional crossfade#55
jeremyfelt merged 2 commits into
trunkfrom
feat/blink-controls

Conversation

@jeremyfelt

Copy link
Copy Markdown
Member

What this does

Blink mode alternated the baseline and current capture on a fixed 650ms hard cut, with no way to change it. This adds live controls:

  • Adjustable dwell — a speed slider (100–3000ms) or [ / ] to slow down / speed up, with a live ms readout.
  • Optional crossfadef or a Fade button eases between the two images instead of swapping instantly, which can make a small shift easier to catch than an abrupt cut. The fade duration auto-scales to half the dwell (capped at 400ms) so each image still fully resolves before the next swap.
  • Both the dwell time and the fade preference persist across pages and reloads.

The keyboard-shortcuts overlay and the in-view hint bar document the new keys (space play/pause, [/] speed, f fade).

Implementation notes

The layer toggle moved from visibility to opacity so the crossfade has something to animate; the transition is set inline (tied to the dwell) with .blink-layer just establishing opacity as the animated property.

Test plan

  • npm run lint — clean
  • npm test — 111 pass (no behavior here is unit-testable; it's report UI)
  • Verified in a real browser: slider and Fade button render, ] steps the dwell (650 → 700ms), f toggles the crossfade, preferences persist, and there are no console errors.

🤖 Generated with Claude Code

jeremyfelt and others added 2 commits June 26, 2026 11:42
Blink mode alternated the baseline and current capture on a fixed 650ms
hard cut. This makes the dwell time adjustable — a speed slider, or
`[` / `]` to slow down / speed up — and adds an optional crossfade
(`f`, or the Fade button) that eases between the two images instead of
swapping instantly, which can make a small shift easier to catch. The
dwell time and fade preference both persist across slugs and reloads.

The keyboard-shortcuts overlay and the in-view hint bar document the new
keys.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
@jeremyfelt jeremyfelt merged commit 8edfdf5 into trunk Jun 26, 2026
2 checks passed
@jeremyfelt jeremyfelt deleted the feat/blink-controls branch June 26, 2026 20:41
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