emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 4eb228b 2/2: Also filter XI_KeyRelease events


From: Po Lu
Subject: master 4eb228b 2/2: Also filter XI_KeyRelease events
Date: Sun, 21 Nov 2021 20:41:25 -0500 (EST)

branch: master
commit 4eb228bfac3cd384bc8b21cd0c46fc89b339b0ed
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    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 7c2276f..9d052c4 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:



reply via email to

[Prev in Thread] Current Thread [Next in Thread]