From 4eb228bfac3cd384bc8b21cd0c46fc89b339b0ed Mon Sep 17 00:00:00 2001 From: Po Lu Date: Mon, 22 Nov 2021 09:40:47 +0800 Subject: [PATCH] Also filter XI_KeyRelease events * src/xterm.c (handle_one_xevent): Also filter XI_KeyRelease events through the X input method. --- src/xterm.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/xterm.c b/src/xterm.c index 7c2276f2e6c..9d052c412b4 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -10649,6 +10649,25 @@ handle_one_xevent (struct x_display_info *dpyinfo, } case XI_KeyRelease: x_display_set_last_user_time (dpyinfo, xev->time); +#ifdef HAVE_X_I18N + XKeyPressedEvent xkey; + + memset (&xkey, 0, sizeof xkey); + + xkey.type = KeyRelease; + xkey.serial = 0; + xkey.send_event = xev->send_event; + xkey.display = xev->display; + xkey.window = xev->event; + xkey.root = xev->root; + xkey.subwindow = xev->child; + xkey.time = xev->time; + xkey.state = xev->mods.effective; + xkey.keycode = xev->detail; + xkey.same_screen = True; + + x_filter_event (dpyinfo, (XEvent *) &xkey); +#endif goto XI_OTHER; case XI_PropertyEvent: case XI_HierarchyChanged: -- 2.39.5