ShizuStore

Input Leaf

anasvhora284

1.4.2 · GitHub

Download APK
Productivity Android 8.0+ 2 weeks ago Apache-2.0
12 ShizuStore
1.6k GitHub
49 Stars
14 MB Size

More about this app

Android client for Input Leap/Deskflow: control your phone with your PC mouse and keyboard over LAN using Shizuku input injection, no root.

Input Leaf ๐Ÿƒ

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.

Latest Release GitHub Stars CI Status Platform Root Status License

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.


Overview

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.

Why Input Leaf?

  • 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.

Official Software & Lineage

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.

How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚             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.


Quick Start

1. Install Server on your PC

Download and install either:

2. Configure the Server Grid

  1. In the server application, choose Server (share this computer's mouse and keyboard).
  2. Click Configure Server... to open the screen grid layout.
  3. 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).
  4. 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-8 or android-phone).
  5. Click OK and press Start.

Detailed Guides:

3. Install Input Leaf on Android

  1. Download the latest input-leaf_<version>_universal.apk from GitHub Releases.
  2. Open the APK on your Android device and tap Install.

4. Choose an Input Injection Engine

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.

5. Connect

  1. Input Leaf will automatically discover the server on your local Wi-Fi. You can also tap + to enter the PC's IP address manually.
  2. Tap Connect.
  3. Push your PC mouse cursor across the configured monitor edge โ€” your cursor will appear on your Android screen.

Shizuku vs. Accessibility Mode

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

Supported Android Shortcuts & Hotkeys

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

Screenshots

Input Leaf Splash Screen
Splash Screen
Guided Setup Flow
Guided Onboarding
Shizuku Authorization
Shizuku Permission
Overlay Permission
System Overlay
Main Connection Screen
Connected & Ready
Settings Screen
Custom Settings

Troubleshooting

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/iptables on 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 (ipconfig on Windows or ip a on 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.

Frequently Asked Questions (FAQ)

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.

Contributing

Contributions, feature suggestions, and bug reports are welcome:

  1. Fork the repository on GitHub.
  2. Create a feature branch (git checkout -b feat/my-new-feature).
  3. Commit your changes with descriptive messages (git commit -m "feat: add support for custom hotkey mapping").
  4. Push to your branch (git push origin feat/my-new-feature).
  5. Open a Pull Request.

Check out our Issue Tracker or start a discussion on the Community Forum.


Author & Acknowledgments


License

Input Leaf is licensed under the Apache License 2.0. See the LICENSE file for details.

Close

How Shizuku is used

Can control the phone with a PC mouse and keyboard over LAN via `Shizuku user service` and virtual HID devices.

This is an AI-assisted analysis of Shizuku-related usages in the app's public source code. It is best effort, so it may not catch every single usage.

How this app uses Shizuku

Shizuku runs a privileged input service so a connected Input Leap or Deskflow PC can drive this phone as if it were a local screen.

  • Move phone cursor: PC mouse motion moves the phone pointer, using system input injection with fallback to virtual HID mouse reports.
  • Click phone buttons: PC left, middle and right clicks press and release phone mouse buttons through the same injection path.
  • Scroll phone content: PC wheel input scrolls at the current pointer position via system scroll injection or HID wheel reports.
  • Press PC keys: PC key presses, releases and repeats are typed on the phone, including modifiers and special keys, via system key injection or HID keyboard reports.
  • Type text: characters without a physical key mapping are entered as Unicode text through system text injection.

Android APIs or commands used

  • InputManager.injectInputEvent
  • InputManager.injectInputEventToTarget
  • android.hardware.input.IInputManager
  • android.view.MotionEvent.obtain
  • android.view.KeyEvent
  • /dev/uhid

Notable details

The app can also work without Shizuku through an accessibility input mode, so Shizuku is the higher fidelity path rather than the only path.

Close

Changelog

What's new for version 1.4.2

๐Ÿƒ Input Leaf v1.4.2

Accessibility overlay cursor stays visible without a SYSTEM_ALERT_WINDOW-only gate, and Shizuku now presents a real UHID keyboard and mouse while the cursor is on the phone.

Highlights & Improvements

Accessibility Overlay Cursor

  • Always-Visible Overlay: The overlay cursor stays visible without relying on overlay permission alone.
  • Native Pointer Feel: Native Android pointer with compensation, edge anchoring, and re-entry at the latest Enter coordinates.

UHID Keyboard & Mouse

  • HID While Cursor is On Phone: UHID keyboard and mouse attach while the cursor is on the phone, and disconnect on Leave.

Live Screen Size (DINF)

  • Mid-Session Updates: Live screen size, including rotation, is sent mid-session via DINF.

Stability & Connection UI

  • Connecting-State UI: Server cards show a connecting state while a session is being established.
  • First-Enter Freeze Fixes: Improvements to first-enter freeze and Shizuku bind.

Installation

  1. Download the APK matching your device architecture (or universal.apk).
  2. Install the APK on your Android device.
  3. If using Shizuku (Recommended), ensure Shizuku is running before connecting.
Close

Permissions

10 permissions requested

  • android.permission.INTERNET
  • android.permission.FOREGROUND_SERVICE
  • android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE
  • android.permission.ACCESS_WIFI_STATE
  • android.permission.CHANGE_NETWORK_STATE
  • android.permission.POST_NOTIFICATIONS
  • android.permission.SYSTEM_ALERT_WINDOW
  • android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
  • com.inputleaf.android.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
  • moe.shizuku.manager.permission.API_V23
Close

Sources

5 sources

1.4.2 Universal GitHub ยท com.inputleaf.android
Selected Download
1.4.2 arm64-v8a GitHub ยท com.inputleaf.android
Download
1.4.2 armeabi-v7a GitHub ยท com.inputleaf.android
Download
1.4.2 x86 GitHub ยท com.inputleaf.android
Download
1.4.2 x86_64 GitHub ยท com.inputleaf.android
Download