smithay/anvil
Uli Schlachter 6004ecdc14 Anvil: Move X11 event reading to a thread
x11rb caches X11 events internally. This cache is used when waiting for
the reply of a request and an event is received first.  This cache is
however also used when sending a request, because the X11 client may
never block and stop reading while writing a request. Doing so could
cause a deadlock with the X11 server.

Thus, this commit changes X11Source to spawn a thread internally. This
thread calls wait_for_event() in a loop and uses a calloop channel to
forward these events to the main loop. x11rb's RustConnection internally
uses a ConditionVariable to make sure this thread will wake up when
needed.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2021-08-14 17:25:51 +02:00
..
resources anvil: Introduce debug feature and draw fps 2021-07-13 23:37:28 +02:00
src Anvil: Move X11 event reading to a thread 2021-08-14 17:25:51 +02:00
Cargo.toml anvil: make into a library+bin crate 2021-07-25 09:39:49 +02:00
build.rs libseat support (#292) 2021-06-15 23:35:16 +02:00