]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix handling "C-S-u" and such when using XKB
authorPo Lu <luangruo@yahoo.com>
Tue, 28 Jun 2022 01:42:40 +0000 (09:42 +0800)
committerPo Lu <luangruo@yahoo.com>
Tue, 28 Jun 2022 01:42:40 +0000 (09:42 +0800)
* src/xterm.c (handle_one_xevent): Don't rely on XKB for
consumed modifiers.

src/xterm.c

index 3a642972586ad69188e59aa18e0634b69aa0ee41..d7c3bfa7aff68f15c24fa3700d29efbfcf6633a9 100644 (file)
@@ -17635,7 +17635,6 @@ handle_one_xevent (struct x_display_info *dpyinfo,
                                            &consumed, &keysym))
                    goto done_keysym;
 
-                 modifiers &= ~consumed;
                  overflow = 0;
 
                  nbytes = XkbTranslateKeySym (dpyinfo->display, &keysym,
@@ -20791,10 +20790,6 @@ handle_one_xevent (struct x_display_info *dpyinfo,
                }
 #endif
 
-#ifdef HAVE_XKB
-             mods_rtrn = 0;
-#endif
-
              x_display_set_last_user_time (dpyinfo, xev->time,
                                            xev->send_event);
              ignore_next_mouse_click_timeout = 0;
@@ -21029,12 +21024,7 @@ handle_one_xevent (struct x_display_info *dpyinfo,
                        }
                    }
 
-#ifndef HAVE_XKB
                  inev.ie.modifiers = x_x_to_emacs_modifiers (dpyinfo, state);
-#else
-                 inev.ie.modifiers = x_x_to_emacs_modifiers (dpyinfo,
-                                                             state & ~mods_rtrn);
-#endif
 
 #ifdef XK_F1
                  if (x_dnd_in_progress && keysym == XK_F1)