Skip to content

fix: wheel picker touch, smoothness, and scroll containment#102

Merged
starc007 merged 2 commits into
mainfrom
fix/wheel-picker-mobile
Jul 9, 2026
Merged

fix: wheel picker touch, smoothness, and scroll containment#102
starc007 merged 2 commits into
mainfrom
fix/wheel-picker-mobile

Conversation

@starc007

@starc007 starc007 commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Follow-ups to the wheel picker after real-device testing.

  • Touch: bind native non-passive touchstart/move/end listeners so finger-drag drives the drum (React's synthetic touch events are passive and can't preventDefault, so it did nothing on mobile). Pointer events keep handling mouse/pen.
  • Drag smoothness: coalesce moves to one rAF-aligned paint per frame; only write row visibility on change; will-change: transform on both drums.
  • Wheel: native non-passive wheel listener so it can't scroll the page behind the picker, and it now drives scroll continuously with a snap-on-idle instead of overlapping per-tick animations (fixes the laggy feel).
  • Preview: visibleCount={7} so more rows show.

bun run check passes.

@starc007 starc007 merged commit 812f2b5 into main Jul 9, 2026
2 checks passed
@starc007 starc007 deleted the fix/wheel-picker-mobile branch July 9, 2026 11:51
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