#input #mouse #keyboard

device_query

A basic library for querying keyboard and mouse state on-demand without a window

13 releases

Uses old Rust 2015

0.2.8 Mar 5, 2021
0.2.7 Dec 14, 2020
0.2.6 Nov 2, 2020
0.2.4 Apr 10, 2020
0.1.0 Apr 3, 2018

#23 in Hardware support

Download history 119/week @ 2021-01-11 106/week @ 2021-01-18 118/week @ 2021-01-25 87/week @ 2021-02-01 83/week @ 2021-02-08 149/week @ 2021-02-15 103/week @ 2021-02-22 107/week @ 2021-03-01 124/week @ 2021-03-08 92/week @ 2021-03-15 177/week @ 2021-03-22 223/week @ 2021-03-29 184/week @ 2021-04-05 154/week @ 2021-04-12 189/week @ 2021-04-19 187/week @ 2021-04-26

529 downloads per month
Used in less than 8 crates

MIT and maybe GPL-2.0-only

32KB
762 lines

device_query

Build Status

A simple library to query mouse and keyboard inputs on demand without a window. Will work in Windows, Linux on X11, and macOS.

use device_query::{DeviceQuery, DeviceState, MouseState, Keycode};

let device_state = DeviceState::new();
let mouse: MouseState = device_state.get_mouse();
println!("Current Mouse Coordinates: {:?}", mouse.coords);
let keys: Vec<Keycode> = device_state.get_keys();
println!("Is A pressed? {}", keys.contains(Keycode::A));

Dependencies

Windows and macOS shouldn't require any special software to be installed for device_query to work properly. On Linux, the X11 development libraries are required for device_query to query state from the OS.

On Ubuntu/Debian:

sudo apt install libx11-dev

On Fedora/RHEL/CentOS:

sudo dnf install xorg-x11-server-devel

lib.rs:

A simple library for querying mouse and keyboard state without requiring an active window. Currently works in Windows, Linux, and macOS.

use device_query::{DeviceQuery, DeviceState, MouseState, Keycode};

let device_state = DeviceState::new();
let mouse: MouseState = device_state.get_mouse();
println!("Current Mouse Coordinates: {:?}", mouse.coords);
let keys: Vec<Keycode> = device_state.get_keys();
println!("Is A pressed? {}", keys.contains(&Keycode::A));

Dependencies

~135KB