-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Labels
DS - x11Affects the X11 backend, or generally free Unix platformsAffects the X11 backend, or generally free Unix platforms
Milestone
Description
Xlib is the legacy strategy for interacting with the X server. It has since been replaced by libxcb, which is lighter and has fewer soundless holes. x11rb wraps around libxcb and reimplements the protocol parsing logic in safe Rust, further reducing the number of places where unsound logic can occur.
List of places in winit where Xlib still lurks:
- Event handling and IME (fixed in Use x11rb for event handling #3122)
- Cursor handling code (could use https://github.com/esposm03/xcursor-rs instead)
SelectXkbEvents(cc Revert select_xkb_events to its previous impl #3087)- Keymap querying
Discussion questions:
- I want to be able to replace
x11-dlwithtiny-xlib, is this possible? - Do we want to add a feature to remove
Xlibentirely and just use XCB? - Going further, do we want to add a feature to remove these two external libraries from our X backend altogether and just use
x11rb's pure-Rust backend?- Is this also available for Wayland?
Metadata
Metadata
Assignees
Labels
DS - x11Affects the X11 backend, or generally free Unix platformsAffects the X11 backend, or generally free Unix platforms