[package] name = "input-capture" description = "cross-platform input-capture library used by lan-mouse" version = "0.3.0" edition = "2021" license = "GPL-3.0-or-later" repository = "https://github.com/feschber/lan-mouse" [dependencies] futures = "0.3.28" futures-core = "0.3.30" log = "0.4.22" input-event = { path = "../input-event", version = "0.3.0" } memmap = "0.7" tempfile = "3.8" thiserror = "2.0.0" tokio = { version = "1.32.0", features = [ "io-util", "io-std", "macros", "net", "process", "rt", "sync", "signal", ] } once_cell = "1.19.0" async-trait = "0.1.81" tokio-util = "0.7.11" [target.'cfg(all(unix, not(target_os="macos")))'.dependencies] wayland-client = { version = "0.31.1", optional = true } wayland-protocols = { version = "0.32.1", features = [ "client", "staging", "unstable", ], optional = true } wayland-protocols-wlr = { version = "0.3.1", features = [ "client", ], optional = true } x11 = { version = "2.21.0", features = ["xlib", "xtest"], optional = true } ashpd = { version = "0.10", default-features = false, features = [ "tokio", ], optional = true } reis = { version = "0.4", features = ["tokio"], optional = true } [target.'cfg(target_os="macos")'.dependencies] core-graphics = { version = "0.24.0", features = ["highsierra"] } core-foundation = "0.10.0" core-foundation-sys = "0.8.6" libc = "0.2.155" keycode = "0.4.0" bitflags = "2.6.0" [target.'cfg(windows)'.dependencies] windows = { version = "0.58.0", features = [ "Win32_System_LibraryLoader", "Win32_System_Threading", "Win32_Foundation", "Win32_Graphics", "Win32_Graphics_Gdi", "Win32_UI_Input_KeyboardAndMouse", "Win32_UI_WindowsAndMessaging", ] } [features] default = ["layer_shell", "x11", "libei"] layer_shell = [ "dep:wayland-client", "dep:wayland-protocols", "dep:wayland-protocols-wlr", ] x11 = ["dep:x11"] libei = ["dep:reis", "dep:ashpd"]