aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPo Lu2022-04-10 13:55:18 +0800
committerPo Lu2022-04-10 13:55:18 +0800
commitf29fd102d7531619a98acbf0f3e012fb0f6b233f (patch)
tree52f8c17b012cb04a45e1996e18beee4dd4a90110 /src
parent75bdf15c2972e216a2c10a7562d96ad217192356 (diff)
downloademacs-f29fd102d7531619a98acbf0f3e012fb0f6b233f.tar.gz
emacs-f29fd102d7531619a98acbf0f3e012fb0f6b233f.zip
Add missing details to filter event on XI2
* src/xterm.c (handle_one_xevent): Pass coordinates when translating XI2 key events to core key events.
Diffstat (limited to 'src')
-rw-r--r--src/xterm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 34b7c026be8..9de46aba103 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -17279,6 +17279,11 @@ handle_one_xevent (struct x_display_info *dpyinfo,
17279 xkey.state = ((xev->mods.effective & ~(1 << 13 | 1 << 14)) 17279 xkey.state = ((xev->mods.effective & ~(1 << 13 | 1 << 14))
17280 | (xev->group.effective << 13)); 17280 | (xev->group.effective << 13));
17281 17281
17282 xkey.x = lrint (xev->event_x);
17283 xkey.y = lrint (xev->event_y);
17284 xkey.x_root = lrint (xev->root_x);
17285 xkey.y_root = lrint (xev->root_y);
17286
17282 /* Some input methods react differently depending on the 17287 /* Some input methods react differently depending on the
17283 buttons that are pressed. */ 17288 buttons that are pressed. */
17284 if (xev->buttons.mask_len) 17289 if (xev->buttons.mask_len)
@@ -17672,6 +17677,10 @@ handle_one_xevent (struct x_display_info *dpyinfo,
17672 xkey.time = xev->time; 17677 xkey.time = xev->time;
17673 xkey.state = ((xev->mods.effective & ~(1 << 13 | 1 << 14)) 17678 xkey.state = ((xev->mods.effective & ~(1 << 13 | 1 << 14))
17674 | (xev->group.effective << 13)); 17679 | (xev->group.effective << 13));
17680 xkey.x = lrint (xev->event_x);
17681 xkey.y = lrint (xev->event_y);
17682 xkey.x_root = lrint (xev->root_x);
17683 xkey.y_root = lrint (xev->root_y);
17675 17684
17676 /* Some input methods react differently depending on the 17685 /* Some input methods react differently depending on the
17677 buttons that are pressed. */ 17686 buttons that are pressed. */