Go to file
Olivier Fourdan 0663a245ad dix: Add POINTER_RAWONLY flag
This add a new flag POINTER_RAWONLY for GetPointerEvents() which does
pretty much the opposite of POINTER_NORAW.

Basically, this tells GetPointerEvents() that we only want the
DeviceChanged events and any raw events for this motion but no actual
motion events.

This is preliminary work for Xwayland to be able to use relative motion
events for raw events. Xwayland would use absolute events for raw
events, but some X11 clients (wrongly) assume raw events to be always
relative.

To allow such clients to work with Xwayland, it needs to switch to
relative raw events (if those are available from the Wayland
compositor).

However, Xwayland cannot use relative motion events for actual pointer
location because that would cause a drift over time, the pointer being
actually controlled by the Wayland compositor.

So Xwayland needs to be able to send only relative raw events, hence
this API.

Bump the ABI_XINPUT_VERSION minor version to reflect that API addition.

v2: Actually avoid sending motion events (Peter)
v3: Keep sending raw emulated events with RAWONLY (Peter)

Suggested-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Related: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1130
(cherry picked from commit b5e1f13681)
2021-02-17 10:16:43 +01:00
.gitlab-ci ci: Test ninja dist in meson jobs 2021-01-22 17:03:16 +00:00
composite Drop Xorg DDX 2021-02-03 18:10:48 +01:00
damageext Drop autotools build system 2021-02-03 17:59:31 +01:00
dbe Drop Xorg DDX 2021-02-03 18:10:48 +01:00
dix dix: Add POINTER_RAWONLY flag 2021-02-17 10:16:43 +01:00
doc Drop autotools build system 2021-02-03 17:59:31 +01:00
dri3 Drop Xorg DDX 2021-02-03 18:10:48 +01:00
fb Drop Xorg DDX 2021-02-03 18:10:48 +01:00
glamor Drop Xorg DDX 2021-02-03 18:10:48 +01:00
glx Drop Xorg DDX 2021-02-03 18:10:48 +01:00
hw Don't install Xvfb 2021-02-03 18:22:18 +01:00
include dix: Add POINTER_RAWONLY flag 2021-02-17 10:16:43 +01:00
man Drop autotools build system 2021-02-03 17:59:31 +01:00
mi Drop Xorg DDX 2021-02-03 18:10:48 +01:00
miext Drop miext/shadow directory 2021-02-03 18:17:09 +01:00
os Drop autotools build system 2021-02-03 17:59:31 +01:00
present Drop Xorg DDX 2021-02-03 18:10:48 +01:00
randr Drop Xorg DDX 2021-02-03 18:10:48 +01:00
record Drop autotools build system 2021-02-03 17:59:31 +01:00
render Drop Xorg DDX 2021-02-03 18:10:48 +01:00
test Drop Xephyr / kdrive DDX 2021-02-03 18:13:15 +01:00
Xext Drop Xorg DDX 2021-02-03 18:10:48 +01:00
xfixes Drop autotools build system 2021-02-03 17:59:31 +01:00
Xi Drop autotools build system 2021-02-03 17:59:31 +01:00
xkb Drop autotools build system 2021-02-03 17:59:31 +01:00
.appveyor.yml Drop config directory 2021-02-03 18:15:10 +01:00
.dir-locals.el .dir-locals.el: Add missing final newline 2019-10-01 17:05:28 +00:00
.gitignore .gitignore: Add new autotools file 'test-driver' 2014-04-21 13:41:42 -07:00
.gitlab-ci.yml Don't install Xvfb 2021-02-03 18:22:18 +01:00
COPYING modesetting: Merge modesetting's COPYING into the xserver's. 2014-09-15 12:46:02 -07:00
devbook.am doc: Create a script to filter xmlto output 2015-01-05 14:24:06 -08:00
docbook.am docbook.am: embed css styles inside the HTML HEAD element 2011-09-21 14:07:49 -07:00
manpages.am man: Fix automake seddery 2018-05-08 12:15:30 -04:00
meson_options.txt meson: Build Xwayland unconditionally 2021-02-03 18:21:08 +01:00
meson.build Bump version to 21.0.99.1 2021-02-03 18:26:42 +01:00
README.md Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
xserver.ent.in doc: relocate xserver.ent in the package root directory 2011-05-14 11:22:26 -07:00

X Server

The X server accepts requests from client applications to create windows, which are (normally rectangular) "virtual screens" that the client program can draw into.

Windows are then composed on the actual screen by the X server (or by a separate composite manager) as directed by the window manager, which usually communicates with the user via graphical controls such as buttons and draggable titlebars and borders.

For a comprehensive overview of X Server and X Window System, consult the following article: https://en.wikipedia.org/wiki/X_server

All questions regarding this software should be directed at the Xorg mailing list:

https://lists.freedesktop.org/mailman/listinfo/xorg

The primary development code repository can be found at:

https://gitlab.freedesktop.org/xorg/xserver

For patch submission instructions, see:

https://www.x.org/wiki/Development/Documentation/SubmittingPatches

As with other projects hosted on freedesktop.org, X.Org follows its Code of Conduct, based on the Contributor Covenant. Please conduct yourself in a respectful and civilized manner when using the above mailing lists, bug trackers, etc:

https://www.freedesktop.org/wiki/CodeOfConduct