Skip to main content

xa11y_linux/
lib.rs

1//! Linux accessibility backend.
2//!
3//! - AT-SPI2 introspection over D-Bus (`atspi`) — implements the core
4//!   `Provider` trait. Requires `at-spi2-core` and toolkit accessibility.
5//! - Input simulation (`input`, `wayland_input`) — XTest on X11 sessions,
6//!   libei via `org.freedesktop.portal.RemoteDesktop` on Wayland sessions.
7//!   Routing is at runtime via `DISPLAY` / `WAYLAND_DISPLAY`.
8//! - Screen capture (`screenshot`) — `GetImage` on X11, the Screenshot
9//!   portal on Wayland.
10
11#[cfg(target_os = "linux")]
12mod atspi;
13
14#[cfg(target_os = "linux")]
15mod events;
16
17#[cfg(target_os = "linux")]
18mod input;
19
20#[cfg(target_os = "linux")]
21mod wayland_input;
22
23#[cfg(target_os = "linux")]
24mod scale;
25
26#[cfg(target_os = "linux")]
27mod screenshot;
28
29#[cfg(target_os = "linux")]
30pub use atspi::LinuxProvider;
31
32#[cfg(target_os = "linux")]
33pub use input::LinuxInputProvider;
34
35#[cfg(target_os = "linux")]
36pub use screenshot::LinuxScreenshot;
37
38#[cfg(not(target_os = "linux"))]
39mod stub;
40
41#[cfg(not(target_os = "linux"))]
42pub use stub::{LinuxInputProvider, LinuxProvider, LinuxScreenshot};