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.