Use your PC's mouse and keyboard to control your Android phone or tablet over Wi-Fi/LAN. Input Leaf is a free, open-source Android client for Input Leap and compatible Deskflow setups — no USB cables and no root required.
Download APK · Website · Quick Start · Input Leap Guide · Deskflow Guide · Troubleshooting · Issues
PC mouse + keyboard -> Local Network (Wi-Fi/LAN) -> Android phone / tablet
Move your desktop cursor off the edge of your monitor to smoothly glide onto your Android screen.
Input Leaf is an open-source Android client designed for software KVM switches. It connects seamlessly to Input Leap and compatible Deskflow servers running on your desktop or laptop (Windows, macOS, or Linux).
Instead of switching hands between your physical keyboard and phone touch screen, or constantly pairing Bluetooth devices, Input Leaf turns your phone or tablet into an additional screen in your desktop setup.
- No root required — Works out-of-the-box using Shizuku or Android Accessibility APIs.
- Ultra-low latency — Shizuku engine injects native system-level input events directly for zero perceptible lag.
- Full mouse and keyboard sharing — Smooth cursor control, left/right/middle click, wheel scrolling, and hardware modifier keys (
Ctrl,Alt,Shift,Meta). - Compatible with Input Leap & Deskflow — Speaks the standard open-source KVM protocol over TCP.
- 100% local and private — All communication stays on your local area network (LAN); no cloud relays or external servers.
- mDNS server auto-discovery — Finds compatible servers on your local Wi-Fi automatically.
- Encrypted TLS connections — Supports TLS encryption with Trust-On-First-Use (TOFU) certificate pinning.
- Battery efficient and resilient — Automatic exponential-backoff reconnects when network interruptions occur.
Input Leaf acts as the client on your Android device. You will need a compatible server application running on your PC:
| Software | Role | Official Links | Description |
|---|---|---|---|
| Input Leap | Desktop Server | • Official GitHub Repository • Download Releases • Input Leap Wiki |
Free, open-source software KVM sharing mouse and keyboard between computers. Successor to Barrier. |
| Deskflow | Desktop Server | • Official Website • Official GitHub Repository • Download Releases |
Modern cross-platform keyboard and mouse sharing software. |
| Barrier | Predecessor | • Official GitHub Repository | The upstream predecessor of Input Leap. Compatible with legacy setups. |
| Shizuku | Android Tool | • Official Website • GitHub Repository |
Grants system-level API access to Input Leaf without root permissions. |
┌──────────────────────────────────────────┐
│ Desktop / Laptop │
│ (Windows / macOS / Linux) │
│ │
│ Input Leap Server / Deskflow Server │
└────────────────────┬─────────────────────┘
│
│ TCP Port 24800 (Wi-Fi / Ethernet LAN)
│ Optional TLS / mTLS Encryption
▼
┌──────────────────────────────────────────┐
│ Android Phone / Tablet │
│ │
│ Input Leaf App │
│ │ │
│ ┌──────────┴──────────┐ │
│ ▼ ▼ │
│ Shizuku Engine Accessibility │
│ (System Injection) (Stock Fallback) │
│ • Lowest latency • Zero extra apps │
│ • Full shortcuts • Touch emulation │
└──────────────────────────────────────────┘
When your mouse crosses the configured border of your desktop monitor, the server sends coordinates and keystrokes over your local network to Input Leaf, which translates and injects them into Android in real time.
Download and install either:
- Input Leap Releases (Windows, macOS, Linux), or
- Deskflow Releases (Windows, macOS, Linux).
- In the server application, choose Server (share this computer's mouse and keyboard).
- Click Configure Server... to open the screen grid layout.
- Drag a new screen from the top right into the grid and place it adjacent to your desktop screen (for example, to the right or below).
- Double-click the new screen and set the Screen name to match your Android device's Screen Name (view or customize it in Input Leaf under Settings -> Screen name; it defaults to your sanitized device model, such as
pixel-8orandroid-phone). - Click OK and press Start.
Detailed Guides:
- Download the latest
input-leaf_<version>_universal.apkfrom GitHub Releases. - Open the APK on your Android device and tap Install.
Open Input Leaf and complete the quick onboarding wizard:
- Shizuku (Recommended): Open the Shizuku app, start it via Wireless Debugging, and allow Input Leaf when prompted.
- Accessibility Service (Fallback): Enable the Input Leaf Accessibility Service and Keyboard in Android Settings -> Accessibility.
- Input Leaf will automatically discover the server on your local Wi-Fi. You can also tap + to enter the PC's IP address manually.
- Tap Connect.
- Push your PC mouse cursor across the configured monitor edge — your cursor will appear on your Android screen.
Input Leaf offers two distinct input engines to match your device and preferences:
| Feature / Capability | Shizuku (Recommended) | Accessibility (No Extra App) |
|---|---|---|
| Root Required | No | No |
| External Setup | One-time Shizuku setup (Wireless Debugging) | None (Enable in Android Settings) |
| Input Latency | Ultra-Low (< 5ms) | Low (~15–25ms) |
| Mouse Precision | Native Absolute Cursor Mapping | Gesture / Pointer Emulation |
| Mouse Buttons | Left, Right, Middle Click | Left Click, Context Menus |
| Scroll Wheel | Smooth, continuous scrolling | Step scrolling |
| Modifier Keys | Ctrl, Alt, Shift, Meta (Super/Win) |
Standard typing + Basic Modifiers |
| System Shortcuts | Full (Alt+Tab, Meta+Enter, Home, Back) |
Limited by Android Accessibility APIs |
| Best For | Power users, daily workstation setups | Quick setups, restricted devices |
When using Shizuku Mode, Input Leaf passes through hardware-level keyboard shortcuts directly to Android:
| Desktop Key / Shortcut | Android Action |
|---|---|
| Super / Windows / Cmd | Home Screen |
| Esc or Alt + ← | Back Button |
| Alt + Tab | Recent Apps / App Switcher |
| Ctrl + C / Ctrl + V | Copy & Paste |
| Ctrl + A | Select All |
| Ctrl + Z | Undo |
| Print Screen | Take Screenshot |
| Volume Up / Down / Mute | Media Volume Controls |
| Media Play / Pause / Next | Media Playback Controls |
|
Splash Screen |
Guided Onboarding |
Shizuku Permission |
|
System Overlay |
Connected & Ready |
Custom Settings |
1. Input Leaf cannot find or connect to my PC server
- Network Isolation: Verify that both devices are on the same Wi-Fi network and that your router does not have "AP Isolation" or "Client Isolation" enabled.
- Firewall Rules: Ensure that the desktop server application has permission to accept inbound connections on TCP Port 24800 in Windows Defender Firewall or
ufw/iptableson Linux. - Screen Name Mismatch: Double check that the Screen Name configured in your desktop server's grid matches the client name set in Input Leaf Settings (case-sensitive).
- Direct IP Entry: If mDNS auto-discovery fails, find your PC's local IP address (
ipconfigon Windows orip aon Linux) and add it manually in Input Leaf.
2. Keyboard works, but system shortcuts (Alt+Tab, Home) do nothing
- Android Accessibility Service mode does not have system-level permissions to trigger navigation hotkeys.
- Switch to Shizuku Mode for full hardware keyboard emulation and system shortcut support.
3. Cursor does not appear over notifications or Quick Settings panel
- Android's security architecture restricts standard overlay windows (
TYPE_APPLICATION_OVERLAY) from rendering over system panels like Quick Settings, the notification shade, and the lockscreen. - If you need pointer interactions in the notification shade, enable Input Leaf's Accessibility Service, which provides accessibility-level overlay coverage.
4. Connection drops when the screen locks or app is in the background
- Android OEMs often enforce aggressive battery-saving policies.
- In Android Settings -> Apps -> Input Leaf -> Battery, set battery usage to Unrestricted and allow background activity.
5. Shizuku says "Not Running" after restarting the phone
- On non-rooted devices, Android disables the Shizuku wireless debugging process upon reboot.
- Open the Shizuku app, tap Pairing or Start under Wireless Debugging to re-enable it.
Is Input Leaf completely free and open source?
Yes. Input Leaf is 100% free, ad-free, and licensed under the permissive Apache License 2.0.Does Input Leaf send any data to external servers?
No. All mouse, keyboard, and handshake packets travel strictly between your PC and Android device across your local Wi-Fi or Ethernet network.Can I connect multiple Android devices to the same PC?
Yes. You can add multiple screens in the Input Leap / Deskflow server grid (for example, one phone on the left, one tablet on the right) and connect each device running Input Leaf.Which Android architectures are supported?
Releases provide universal APKs as well as targeted builds for `arm64-v8a`, `armeabi-v7a`, and `x86_64`. Universal works on all supported Android 8.0+ devices.Contributions, feature suggestions, and bug reports are welcome:
- Fork the repository on GitHub.
- Create a feature branch (
git checkout -b feat/my-new-feature). - Commit your changes with descriptive messages (
git commit -m "feat: add support for custom hotkey mapping"). - Push to your branch (
git push origin feat/my-new-feature). - Open a Pull Request.
Check out our Issue Tracker or start a discussion on the Community Forum.
- Author: Anas Vhora (@anasvhora284)
- Thanks to all Input Leaf contributors for their valuable support and code contributions.
- Thanks to the upstream developers and contributors of Input Leap, Deskflow, Barrier, and Shizuku.
Input Leaf is licensed under the Apache License 2.0. See the LICENSE file for details.