Skip to content

Keyboard & Mouse Controls ​

Specchio translates your Mac's keyboard and mouse input into touch events on your iPhone, making control feel natural and intuitive.

Table of Contents ​

  1. Mouse Controls
  2. Keyboard Controls
  3. Gestures
  4. Special Keys
  5. Customization

Mouse Controls ​

Basic Interactions ​

Mac ActioniPhone EquivalentNotes
Left ClickTapTriggers a tap at the cursor location
Click & DragTouch & DragHold and move to drag elements
ScrollSwipeTwo-finger swipe on trackpad scrolls
Right ClickLong PressOpens context menus (iOS long press)

Coordinate Mapping ​

Specchio automatically maps your Mac's mouse position to the correct location on your iPhone screen:

  1. Mac window coordinates are normalized (0-1)
  2. Scaled to iPhone resolution
  3. Sent to WDA as touch coordinates
  4. Touch event triggered on device

Click Types ​

Click TypeHow to TriggerUse Case
Single TapLeft clickOpen apps, tap buttons, type in text fields
Double TapTwo quick clicksZoom in photos/maps, some app-specific actions
Long PressRight click or holdContext menus, edit mode, icon rearrangement

Scrolling ​

Input MethodAction
Mouse WheelVertical scrolling
Trackpad ScrollTwo-finger swipe (any direction)
Trackpad GestureTwo-finger drag

Keyboard Controls ​

Typing ​

Typing on your Mac's keyboard automatically sends keystrokes to your iPhone:

  1. Click any text field on your iPhone (via Specchio)
  2. Start typing on your Mac keyboard
  3. Text appears on your iPhone in real-time

Note: The iOS keyboard doesn't appear when you type via Specchio.

Key Mappings ​

Mac KeyiOS Equivalent
ReturnEnter/Go (depends on context)
TabNext field (if supported by app)
DeleteBackspace
Arrow KeysUnsupported (use gestures instead)
EscHome button/Cancel

Keyboard Shortcuts ​

Most iOS keyboard shortcuts work through Specchio:

ShortcutAction
⌘ + CCopy
⌘ + VPaste
⌘ + XCut
⌘ + ZUndo
⌘ + Shift + ZRedo
⌘ + ASelect All

Gestures ​

Specchio supports complex iOS gestures through your mouse and keyboard.

Pinch to Zoom ​

ActionHow to Perform
Zoom InHold ⌘ + Scroll Up (or drag)
Zoom OutHold ⌘ + Scroll Down (or drag)

For trackpad users: Two-finger pinch gesture

Rotation ​

ActionHow to Perform
RotateHold ⌥ (Option) + Click & Drag

Swipe Gestures ​

GestureHow to Perform
Swipe LeftHold Shift + Scroll Left / Drag
Swipe RightHold Shift + Scroll Right / Drag
Swipe UpHold Shift + Scroll Up / Drag
Swipe DownHold Shift + Scroll Down / Drag

Multi-Touch Simulation ​

Specchio can simulate multi-touch gestures:

GestureModifier + Action
Two-finger tap⌃ (Ctrl) + Click
Three-finger tap⌃ + ⌥ + Click
Two-finger swipe⌃ + Scroll

Special Keys ​

Home Button ​

Even without a physical home button, you can trigger the home action:

MethodAction
⌘ + Shift + HHome button press
EscHome button (alternative)

Lock/Power ​

MethodAction
⌘ + Shift + LLock device
⌘ + Shift + PPower button (toggle)

Volume ​

MethodAction
⌘ + Shift + UpVolume Up
⌘ + Shift + DownVolume Down
⌘ + Shift + MMute

Siri ​

MethodAction
⌘ + Shift + SActivate Siri (long press)

Screenshot ​

MethodAction
⌘ + Shift + 4iPhone screenshot
⌘ + Shift + 5iPhone screenshot (alternative)

Screenshots are saved to your iPhone's Photos app.


Clipboard Sync ​

Specchio can synchronize clipboard between Mac and iPhone (Premium feature).

How It Works ​

  1. Copy something on your Mac (⌘ + C)
  2. It automatically appears on your iPhone's clipboard
  3. Paste anywhere on your iPhone

Enabling Clipboard Sync ​

  1. In Specchio, go to Settings
  2. Find Clipboard Sync
  3. Toggle Enable
  4. Grant accessibility permission if prompted

Customization ​

Input Settings ​

Access via Specchio → Settings → Input:

SettingDescription
Tap DurationHow long a tap is held before becoming a long press
Scroll SensitivityHow much scrolling occurs per scroll event
Gesture ThresholdMinimum distance for swipe gestures
Modifier KeysRemap modifier keys for gestures

Creating Custom Shortcuts ​

In Settings → Input → Custom Shortcuts:

  1. Click + to add a new shortcut
  2. Choose a key combination
  3. Assign an action (Home, Lock, Screenshot, etc.)
  4. Save

Keyboard Layouts ​

Specchio supports international keyboard layouts:

  1. Go to Settings → Input → Keyboard Layout
  2. Select your preferred layout
  3. Special character mapping updates automatically

Best Practices ​

For Typing ​

  • ✅ Click directly into text fields before typing
  • ✅ Use keyboard shortcuts (⌘+C/V) for copy/paste
  • ✅ Enable clipboard sync for seamless workflow

For Navigation ​

  • ✅ Use scroll gestures for natural scrolling
  • ✅ Use swipe gestures for page navigation
  • ✅ Long-press (right-click) for context menus

For Gaming ​

  • ⚠️ Specchio is not optimized for gaming
  • ⚠️ Touch latency may be noticeable in fast-paced games
  • ✅ USB connection provides lowest latency
  • ✅ Disable display smoothing for fastest response

Troubleshooting Input Issues ​

Clicks Not Registering ​

Problem: Clicking doesn't trigger taps on iPhone.

Solutions:

  • Make sure Specchio window is focused
  • Check that your iPhone is not locked
  • Try restarting the connection
  • Verify coordinates are mapping correctly

Typing Not Working ​

Problem: Keyboard input doesn't appear on iPhone.

Diagnostic commands:

bash
# Test WDA input endpoint
curl -X POST http://localhost:8100/wda/keys \
  -H "Content-Type: application/json" \
  -d '{"value": ["Hello"]}'

# Should send "Hello" to device

Solutions:

  • Click into a text field first
  • Check that iOS keyboard is dismissed
  • Try restarting the connection
  • Verify WDA input session is active

Gestures Not Working ​

Problem: Pinch, swipe, or other gestures don't work.

Solutions:

  • Make sure you're holding the correct modifier keys
  • Check gesture settings in Specchio preferences
  • Try increasing gesture threshold
  • Some apps don't support certain gestures

For more help, see Troubleshooting.

Released under the MIT License.