XGrabKeyboard returns success but never delivers events to a windowless client on modern X11. XRecord is the standard way to capture keyboard events globally — used by xdotool, xbindkeys, and input methods. Architecture: - XRecord: captures all keyboard events (no grab needed) - XGrabKeyboard: still used to block original events from reaching apps - XTest: injects modified events Dynamically loads libXtst.so.6 for XRecord functions. Events flow: XRecord callback → thread-safe queue → daemon event loop. |
||
|---|---|---|
| .. | ||
| src | ||
| build.rs | ||
| Cargo.toml | ||