Almost one year after my previous patch series (http://lists.x.org/archives/xorg-devel/2014-October/044501.html), I'm bringing up this new one to improve xf86-video-nested driver.
I've implemented a new XCB backend client, trying to pair it with latest Xephyr code, so that we can port any Xephyr optimizations to this driver. For this series, I've added all the xcb-xkb missing parts to get keymap translation from bottom-layer Xorg to nested one working properly, so this new backend can replace Xlib completely. My main motivation for this driver is making single-GPU multi-seat configuration (i.e. launching nested X servers on top of a bare X server spanning all available video outputs) more reliable, so I'm disabling integrated nested input driver if -seat option is passed to nested Xorg. However, I believe it can also be handy for testing purposes, since it allows running Xorg itself nested in a window within user session. Compared to Xephyr, this driver still lacks some graphical optimizations, GLAMOR support, etc., but it's still a much better approach for multi-seat, because Xorg itself provides better input devices handling than kdrive. I need help to port any relevant features present in Xephyr to this XCB backend. Laércio de Sousa (10): Fix compilation warnings. Add support for option "Xauthority" in xorg.conf Add preliminary support for screen options "Fullscreen" and "Output" in xorg.conf Add configure option for choosing driver backend Fix an "array index out of bounds" error in _nested_input_init_buttons(). Fix several memory leaks detected by valgrind. Don't load nested input driver if Xorg is started with option "-seat (...)" Remove expurious <default pointer> device when using nested input. Introduce a new XCB client backend, and make it the default one. Update README and TODO. README | 60 ++- TODO | 4 +- configure.ac | 25 +- src/Makefile.am | 9 +- src/client.h | 24 +- src/driver.c | 167 +++++--- src/nested_input.c | 30 +- src/xcbclient.c | 1167 +++++++++++++++++++++++++++++++++++++++++++++++++++- src/xlibclient.c | 14 +- 9 files changed, 1375 insertions(+), 125 deletions(-) -- 2.1.4 _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel