14 releases

0.4.2 Jun 5, 2022
0.4.1 Sep 24, 2020
0.3.2 Sep 22, 2020
0.2.2 Sep 20, 2020
0.1.4 Sep 19, 2020

#14 in #mouse-input

Download history 142/week @ 2024-06-17 104/week @ 2024-06-24 39/week @ 2024-07-01 69/week @ 2024-07-08 105/week @ 2024-07-15 196/week @ 2024-07-22 143/week @ 2024-07-29 102/week @ 2024-08-05 140/week @ 2024-08-12 104/week @ 2024-08-19 115/week @ 2024-08-26 121/week @ 2024-09-02 102/week @ 2024-09-09 107/week @ 2024-09-16 151/week @ 2024-09-23 102/week @ 2024-09-30

485 downloads per month
Used in 10 crates (8 directly)

MIT/Apache

21KB
379 lines

Rust Docs Crates.io

Mouse-rs

Mouse-rs is a rust library for controlling your mouse from a rust program, without having to go into your kernel yourself.

This project was loosely based on the python mouse library. Currently it supports macos, windows and linux (X11)! If you need any other OS added please open an issue

Installation

Add mouse-rs to your cargo.toml

[dependencies]
mouse-rs = "0.4"

Example

This is a simple example that moves your mouse to a position on screen and presses the left button.

use mouse_rs::{types::keys::Keys, Mouse};

fn move_and_press() {
    let mouse = Mouse::new();
    mouse.move_to(500, 500).expect("Unable to move mouse");
    mouse.press(&Keys::RIGHT).expect("Unable to press button");
    mouse.release(&Keys::RIGHT).expect("Unable to release button");
}

Usage

For more information please visit the docs

Linux disclaimer

If you're running into problems building on linux you need to install libxdo-dev.

Debian-based

sudo apt-get install -y libxdo-dev

Arch

sudo pacman -Sy xdotool

Fedora

sudo dnf install libX11-devel libxdo-devel

Gentoo

sudo emerge xdotool

Dependencies

~0–0.8MB
~14K SLoC