Skip to content

feat(mobile): long-press to recolor rated areas - #68

Merged
cafca merged 1 commit into
mainfrom
claude/sharp-keller-3bee06
Apr 25, 2026
Merged

feat(mobile): long-press to recolor rated areas#68
cafca merged 1 commit into
mainfrom
claude/sharp-keller-3bee06

Conversation

@cafca

@cafca cafca commented Apr 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replace tap-to-recolor with a 500ms long-press on iOS. Pan + tap fought in the gesture arena and tap rarely won, so existing rated areas couldn't be reliably recolored from a different brush color.
  • Long-press resolves the feature under the finger via queryRenderedFeatures and submits a recolor through the existing target_id paint path (no backend or API changes).
  • Medium haptic fires at recolor dispatch via AppHaptics.recolor() for immediate confirmation.
  • Drops the tapFeatureLookup parameter and the <2 points recolor fallback from BrushController.endStroke — short strokes are now no-ops.

Test plan

  • just test-mobile (analyze + 177 tests pass)
  • just dev-ios-sim — paint an area, switch color, long-press it ~500ms → recolors, haptic on physical device, undo enables
  • Drag within 500ms — stroke draws normally; long-press doesn't fire
  • Long-press blank map — no-op, no error
  • Quick tap on rated area — no-op (intentional change)

Tap-to-recolor competed with PanGestureRecognizer in the gesture arena
and rarely fired on iOS. Replace it with an explicit 500ms long-press
that resolves the ratings-fill feature under the finger and submits a
recolor via the existing target_id paint path. Medium haptic confirms
the action at the moment of dispatch.
@cafca
cafca merged commit 2f653aa into main Apr 25, 2026
7 checks passed
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