xemacs/xemacs-level3.patch

75 lines
2.5 KiB
Diff
Raw Normal View History

diff -ru xemacs-21.5.20.orig/src/event-Xt.c xemacs-21.5.20/src/event-Xt.c
--- xemacs-21.5.20.orig/src/event-Xt.c 2005-01-25 00:33:52.000000000 +0100
+++ xemacs-21.5.20/src/event-Xt.c 2005-05-12 12:37:18.000000000 +0200
@@ -646,8 +646,17 @@
syms = &xd->x_keysym_map [(keycode - xd->x_keysym_map_min_code) *
xd->x_keysym_map_keysyms_per_code];
for (i = 0; i < xd->x_keysym_map_keysyms_per_code; i++)
- if (IsModifierKey (syms [i]) ||
- syms [i] == XK_Mode_switch) /* why doesn't IsModifierKey count this? */
+ if (IsModifierKey(syms[i])
+#ifdef XK_Mode_switch
+ || syms[i] == XK_Mode_switch /* why doesn't IsModifierKey count this? */
+#endif
+#ifdef XK_Num_Lock
+ || syms[i] == XK_Num_Lock
+#endif
+#if defined XK_ISO_Lock && defined XK_ISO_Last_Group_Lock
+ || (syms[i] >= XK_ISO_Lock && syms[i] <= XK_ISO_Last_Group_Lock)
+#endif
+ )
return 1;
return 0;
}
@@ -997,8 +1006,17 @@
than passing in 0) to avoid crashes on German IRIX */
char dummy[256];
XLookupString (event, dummy, 200, &keysym, 0);
- return (IsModifierKey (keysym) || keysym == XK_Mode_switch )
- ? Qnil : x_keysym_to_emacs_keysym (keysym, simple_p);
+ return (IsModifierKey (keysym)
+#ifdef XK_Mode_switch
+ || keysym == XK_Mode_switch
+#endif
+#ifdef XK_Num_Lock
+ || keysym == XK_Num_Lock
+#endif
+#if defined XK_ISO_Lock && defined XK_ISO_Last_Group_Lock
+ || (keysym >= XK_ISO_Lock && keysym <= XK_ISO_Last_Group_Lock)
+#endif
+ ) ? Qnil : x_keysym_to_emacs_keysym (keysym, simple_p);
}
#endif /* ! XIM_MOTIF */
@@ -1048,8 +1066,17 @@
{
case XLookupKeySym:
case XLookupBoth:
- return (IsModifierKey (keysym) || keysym == XK_Mode_switch )
- ? Qnil : x_keysym_to_emacs_keysym (keysym, simple_p);
+ return (IsModifierKey (keysym)
+#ifdef XK_Mode_switch
+ || keysym == XK_Mode_switch
+#endif
+#ifdef XK_Num_Lock
+ || keysym == XK_Num_Lock
+#endif
+#if defined XK_ISO_Lock && defined XK_ISO_Last_Group_Lock
+ || (keysym >= XK_ISO_Lock && keysym <= XK_ISO_Last_Group_Lock)
+#endif
+ ) ? Qnil : x_keysym_to_emacs_keysym (keysym, simple_p);
case XLookupChars:
{
diff -ru xemacs-21.5.20.orig/src/xintrinsic.h xemacs-21.5.20/src/xintrinsic.h
--- xemacs-21.5.20.orig/src/xintrinsic.h 2001-04-12 20:24:30.000000000 +0200
+++ xemacs-21.5.20/src/xintrinsic.h 2005-05-12 12:37:18.000000000 +0200
@@ -22,6 +22,7 @@
#ifndef INCLUDED_xintrinsic_h_
#define INCLUDED_xintrinsic_h_
+#include <X11/keysym.h>
#include <X11/Intrinsic.h>
#endif /* INCLUDED_xintrinsic_h_ */