davidortinau/maui-skills/maui-gestures
Claude Code and agent skill by davidortinau/maui-skills
- community
Checking that the SKILL.md file is still in the repository.
Guidance for implementing tap, swipe, pan, pinch, drag-and-drop, and pointer gesture recognizers in .NET MAUI applications. Covers XAML and C# usage, combining gestures, and platform differences. USE FOR: "tap gesture", "swipe gesture", "pan gesture", "pinch gesture", "drag and drop", "pointer gesture", "gesture recognizer", "TapGestureRecognizer", "SwipeGestureRecognizer", "PanGestureRecognizer", "combine gestures". DO NOT USE FOR: animations triggered by gestures (use maui-animations), Collec…
Install
npx vskill@latest install davidortinau/maui-skills/maui-gesturesSKILL.md
.NET MAUI Gesture Recognizers
Deprecated API Warning
⚠️ In .NET 10,ClickGestureRecognizeris deprecated. UseTapGestureRecognizer(touch/stylus) andPointerGestureRecognizer(mouse hover/press) instead.
Common Mistakes
One SwipeGestureRecognizer per direction
A single recognizer handles only one direction. Adding multiple directions to one recognizer silently fails on most platforms.
AllowDrop defaults to false
Drop targets silently ignore drops if you forget this property.
Using TapGestureRecognizer for hover effects
Tap recognizers don't track pointer movement. Use PointerGestureRecognizer for hover effects — it also enables the PointerOver visual state.
Platform Differences That Bite
Pan delta coordinates differ by platform
| Platform | TotalX / TotalY relative to | |
|---|---|---|
| iOS / Mac Catalyst | Start of gesture | |
| Android | Previous event (not start!) | |
| Windows | Start of gesture |
If sub-pixel accuracy matters, normalize Android deltas by accumulating them manually rather than using TotalX/TotalY directly.
Pointer hover is mouse/trackpad only
On touch devices, PointerGestureRecognizer events fire on press/release but hover is not tracked between touches. Don't rely on PointerMoved for touch-based UI.
Cross-app drag-and-drop
| Platform | Supported | |
|---|---|---|
| iPadOS / Mac Catalyst | ✅ Yes | |
| Windows | ✅ Yes | |
| Android | ❌ No |
Secondary button (right-click)
| Platform | Behaviour | |
|---|---|---|
| iOS / Mac Catalyst | Buttons = ButtonsMask.Secondary works | |
| Windows | Buttons = ButtonsMask.Secondary works | |
| Android | Falls back to long-press — no true right-click |
Gesture Combination Conflicts
Combining pan + swipe on the same view conflicts on Android — the swipe may consume the gesture before pan starts. Test on all platforms, or use only one at a time.
Combining tap + pan works well — tap fires on quick taps, pan fires on sustained drags.
MVVM Best Practice
Prefer commands over events for testable view models. Both work identically at runtime, but commands are easier to mock and test.
Quick Rules
- One
SwipeGestureRecognizerper direction PointerGestureRecognizerfor hover, notTapGestureRecognizerAllowDrop="True"on drop targets — it defaults tofalse- Normalize pan deltas on Android (relative to previous event, not start)
- Prefer commands over events for MVVM
- Use
TapGestureRecognizerinstead of deprecatedClickGestureRecognizer(.NET 10) - Don't rely on
PointerMovedfor touch-based UI — hover doesn't track
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingplugins/maui-skills/skills/maui-gestures/SKILL.md
Popularity
- Repository stars
- 118
- Repository forks
- 16
- 7-day trend score
- 24
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 16 Apr 2026, 6 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/davidortinau/maui-skills/maui-gestures)