notepat: '0' reset button per FX row + extended spacebar scrollback
Two UX fixes from live-test feedback:
1. Reset buttons on every FX row
Each slider row (fx / echo / pitch / crush / volume / drive / wobble)
now has three boxes to the right of the bar instead of two:
[X] [Y] [0]
The "0" box zeroes the effect when tapped:
fx → 1.0 (full wet = natural unity/passthrough state)
echo → 0
pitch → 0 semitones (center)
crush → 0
volume → 0.5 (unity tick — not 0, which would be silence)
drive → 0
wobble → 0
Short 880 Hz sine blip confirms the reset gesture. axisAreaW
widened from 2 boxes to 3 so sliders stay the same visual width
minus a few px for the new button.
2. Spacebar hold no longer freezes the wave at 2 s
WAVE_VIEW_MAX_OFFSET_SEC bumped 2.0 → 12.0 to match the reverse-
playback REVERSE_MAX_AGE_MS (12 s). The view cursor was stopping
at 2 s of retreat even though the capture buffer has 12 s of
history; now the cursor keeps sliding back through the full
buffer while you hold space, and the wave visibly keeps scrolling
until you run out of pre-press audio. The C-side drawStrip
already clamps samples_want against available, so passing a 12 s
offset with a 3 s pre-press buffer just paints whatever's there.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>