I am working on a small acceptance test for my OpenGL application written in C. So far, I'm only able to take screenshots and haven't found a way of simulating mouse and keyboard input on both Wayland and X11.
Any suggestions on how to manipulate the event stream of a specific window in Wayland/X11?
For simulating X11
mouse events you have several options:
X server
supports XTEST
extension (usually it does), then use XTEST Extension Library
with functions XTestFakeKeyEvent
,XTestFakeMotionEvent
, etc. An example
XLib
functions like XSendEvent
, XWarpPointer
, etc. An example
Linux
and your tests have access to command shell then you can use command line tool xdotool
(which internally uses XTEST extension
. An example For Wayland
you can use uinput
kernel module. Documentation and examples are here
keyboard is a Python library designed to emulate keyboard and mouse on both Linux (X11 only) and Windows. There may be a similar project that uses C, but I don't know of it yet.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With