Skip to content

Touchscreen v2#1851

Merged
simo6529 merged 3 commits intomainfrom
touchscreen-v2
Jan 28, 2026
Merged

Touchscreen v2#1851
simo6529 merged 3 commits intomainfrom
touchscreen-v2

Conversation

@simo6529
Copy link
Copy Markdown
Collaborator

@simo6529 simo6529 commented Jan 28, 2026

Summary by CodeRabbit

  • Bug Fixes
    • Touch interactions now intelligently adapt to screen size, with long press and touch-based features only available on smaller screens where they're most useful, preventing unintended interactions on larger devices.

✏️ Tip: You can customize this high-level summary in your review settings.

Signed-off-by: Simo <simo@6529.io>
Signed-off-by: Simo <simo@6529.io>
Signed-off-by: Simo <simo@6529.io>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jan 28, 2026

📝 Walkthrough

Walkthrough

The PR introduces responsive breakpoint-aware touch interaction gating in WaveDrop component. Touch-driven long-press behavior is now restricted to non-MD screens by combining hasTouch with a breakpoint check, replacing direct hasTouch guards throughout interaction handlers.

Changes

Cohort / File(s) Summary
Touch interaction responsive gating
components/waves/drops/WaveDrop.tsx
Added createBreakpoint hook with MD (768px) breakpoint; computed isMdUp flag; introduced allowLongPress = hasTouch && !isMdUp to conditionally gate long-press behavior; replaced hasTouch guards in handleLongPress, handleTouchStart, handleTouchMove and dependency arrays; updated WaveDropContent prop passing to use allowLongPress instead of direct hasTouch.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • fix text selecting #1715: Removes double-tap/boost and related touch handlers in the same WaveDrop.tsx file, modifying overlapping touch interaction code paths.
  • ipad long press fix #1766: Introduces hasTouch flag for touch gating logic in WaveDrop.tsx; this PR refines that gating by combining it with responsive breakpoint logic.

Suggested reviewers

  • ragnep

Poem

🐰 A touch of size, a breakpoint's grace,
Long presses now know their rightful place,
On smaller screens they dance and spring,
While larger views ignore the fling! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'Touchscreen v2' is vague and generic, failing to clearly describe the specific changes made in the pull request. Use a more descriptive title that explains the actual change, such as 'Add breakpoint-based touch interaction gating for medium breakpoints' or 'Gate touch interactions based on device breakpoints'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link
Copy Markdown

@simo6529 simo6529 merged commit e991bbd into main Jan 28, 2026
7 checks passed
@simo6529 simo6529 deleted the touchscreen-v2 branch January 28, 2026 13:08
@coderabbitai coderabbitai Bot mentioned this pull request Apr 7, 2026
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.

2 participants