Cross-platform simulation and global listening for keyboard and mouse input.
Warning
This crate is subject to extreme change. There is still great room for improvement. It is only presently published for use by NuhxBoard.
The listen
and grab
1 functions can be used to run a callback for all input events.
rdevin::listen(|e| dbg!(e))?;
The simulate
function can be used to send input events.
use rdevin::{simulate, EventType, Key};
simulate(&EventType::KeyPress(Key::KeyS))?;
Serde support is gated behind the serde
feature.
- This crate is a fork of a fork of a fork of Narsil's
rdev
crate, created to ensure continued maintenance and to make Rustdesk's many useful additions available on crates.io. - Enigo, an input simulation library, served as inspiration and reference for Narsil's original crate.
Footnotes
-
Not available on Linux ↩