xserver/include
Julian Orth 45c1d22ff6 xwayland: Don't run key behaviors and actions
Consider the following keymap:

```xkb
xkb_keymap {
    xkb_keycodes {
        <compose> = 135;
    };
    xkb_symbols {
        key <compose> {
            [ SetGroup(group = +1) ]
        };
    };
};
```

When the user presses the compose key, the following happens:

1. The compositor forwards the key to Xwayland.
2. Xwayland executes the SetGroup action and sets the base_group to 1
   and the effective group to 1.
3. The compositor updates its own state and sends the effective group,
   1, to Xwayland.
4. Xwayland sets the locked group to 1 and the effective group to
   1 + 1 = 2.

This is wrong since pressing compose should set the effective group to 1
but to X applications the effective group appears to be 2.

This commit makes it so that Xwayland completely ignores the key
behaviors and actions of the keymap and only updates the modifier and
group components in response to the wayland modifiers events.

Signed-off-by: Julian Orth <ju.orth@gmail.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1758>
2025-02-03 05:37:48 +00:00
..
.gitignore
Xprintf.h
Xserver.d
callback.h
client.h os: unexport client id retrieval functions 2024-10-10 13:45:29 +00:00
closure.h
colormap.h dix: move colormap flags into colormap_priv.h and rename them 2024-09-01 22:06:50 +00:00
colormapst.h dix: move colormap flags into colormap_priv.h and rename them 2024-09-01 22:06:50 +00:00
cursor.h dix: drop superfluous XineramaGetCursorScreen() 2024-09-02 16:43:29 +00:00
cursorstr.h
displaymode.h
dix-config-apple-verbatim.h
dix.h include: dix.h: fix outdated comment 2024-06-23 18:13:30 +00:00
dixaccess.h
dixevents.h
dixfont.h
dixfontstr.h include: dixfontstr.h: drop silent dependency on libxfont2 2024-09-01 17:45:13 +00:00
dixstruct.h os: split off internal definitions from client.h 2024-10-10 13:45:29 +00:00
events.h
eventstr.h
exevents.h include: move private definitions out of exevents.h 2024-04-30 00:47:38 +00:00
extension.h
extinit.h include: move private definitions out of extinit.h 2024-04-30 00:47:38 +00:00
extinit_priv.h include: move private definitions out of extinit.h 2024-04-30 00:47:38 +00:00
extnsionst.h
fourcc.h
gc.h dix: unexport SetClipRects() 2024-04-15 23:10:31 +00:00
gcstruct.h
globals.h include: unpexport SELINUX_* consts from include/global.h 2024-03-25 19:40:04 +00:00
glx_extinit.h
glxvndabi.h
hotplug.h
input.h include: move private definitions out of input.h 2024-09-01 17:59:23 +00:00
inputstr.h xwayland: Don't run key behaviors and actions 2025-02-03 05:37:48 +00:00
inpututils.h
list.h include: drop obsolete check for typeof operator 2024-04-22 22:15:45 +00:00
meson.build os: if inet_ntop() is available, use it for IPv4 addresses as well 2025-01-27 22:34:51 +00:00
misc.h dix: unexport Ones() 2024-10-26 16:35:57 +00:00
miscstruct.h
nonsdk_extinit.h include: move private definitions out of extinit.h 2024-04-30 00:47:38 +00:00
opaque.h os: unexport fields from opaque.h not used by modules / drivers 2024-06-23 21:19:27 +00:00
optionstr.h
os.h os: replace LogVWrite() by LogVMessageVerb() 2024-10-10 17:34:12 +00:00
pixmap.h
pixmapstr.h
privates.h
probes.h
property.h dix: unexport DeleteAllWindowProperties() 2024-09-02 17:50:47 +00:00
propertyst.h
protocol-versions.h Present: add PresentCapabilitySyncobj and PresentPixmapSynced 2024-04-09 06:11:03 +00:00
ptrveloc.h
region.h
regionstr.h
resource.h rename remaining RT_* defines to X11_RESTYPE_* 2024-04-15 19:00:47 -07:00
rgb.h
screenint.h Revert "dix: unexport AttachOutputGPU() and DetachOutputGPU()" 2024-09-01 20:38:01 +00:00
scrnintstr.h
selection.h
servermd.h
swaprep.h
swapreq.h swapreq.h: drop SWAPREQ_PROC 2024-10-10 16:10:32 +00:00
systemd-logind.h
validate.h
vidmodestr.h
window.h
windowstr.h
xkb-config.h.in
xkbfile.h xkb: unexport Xkb* defines used by xkbtext.c 2024-05-14 03:57:45 +00:00
xkbrules.h
xkbsrv.h kbd: move _XkbWantsDetectableAutoRepeat() macro into dix/events.c 2024-06-18 02:10:04 +00:00
xkbstr.h include: xkbstr.h: fix missing include of Xdefs.h 2024-04-09 06:50:20 +00:00
xorg-config.h.meson.in
xorg-server.h.meson.in
xserver-properties.h
xwayland-config.h.meson.in xwayland/glamor: Drop the EGLStream backend 2024-03-18 15:41:17 +00:00
xwin-config.h.meson.in xwin: consolidate debugging symbols 2024-03-19 02:05:35 +00:00