简体   繁体   中英

Simulating mouse and keyboard input on Wayland and X11

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:

  1. If your X server supports XTEST extension (usually it does), then use XTEST Extension Library with functions XTestFakeKeyEvent , XTestFakeMotionEvent , etc. An example
  2. You can use XLib functions like XSendEvent , XWarpPointer , etc. An example
  3. If you are under Linux and your tests have access to command shell then you can use command line tool xdotool (which internally uses XTEST extension . Anexample

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.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM