APPROVE COMMIT 21.4.17
Thanks for the patch, Malcolm.  It will appear in XEmacs 21.4.17,
"Jumbo Shrimp".
  - Vin
Malcolm Purvis <malcolmp(a)xemacs.org> writes:
 APPROVE COMMIT 21.5 RECOMMEND 21.4
 This patch enables AltGr under GTK.  Unlike the recent X version, this wasn't
 broken because of changes in x.org's IsModifierKey() but rather never worked
 at all because the private macro IS_MODIFIER_KEY() didn't know it at all.  The
 private macro is necessary because of type differences.
 src/ChangeLog addition:
 2005-01-20  Malcolm Purvis  <malcolmp(a)xemacs.org>
 	* event-gtk.c: Recognise AltGr as a valid modifier.
 xemacs-gtk-modifiers source patch:
 Diff command:   cvs -q diff -u
 Files affected: src/event-gtk.c
 Index: src/event-gtk.c
 ===================================================================
 RCS file: /pack/xemacscvs/XEmacs/xemacs/src/event-gtk.c,v
 retrieving revision 1.28
 diff -u -r1.28 event-gtk.c
 --- src/event-gtk.c	2004/11/04 23:06:25	1.28
 +++ src/event-gtk.c	2005/01/19 22:48:37
 @@ -97,10 +97,23 @@
  Lisp_Object Qkey_mapping;
  Lisp_Object Qsans_modifiers;
  
 +/*
 + * Identify if the keysym is a modifier.  This implementation mirrors x.org's
 + * IsModifierKey(), but for GDK keysyms.
 + */
 +#ifdef GDK_ISO_Lock
  #define IS_MODIFIER_KEY(keysym)  \
    ((((keysym) >= GDK_Shift_L) && ((keysym) <= GDK_Hyper_R)) \
 +   || (((keysym) >= GDK_ISO_Lock) && \
 +       ((keysym) <= GDK_ISO_Last_Group_Lock)) \
     || ((keysym) == GDK_Mode_switch) \
     || ((keysym) == GDK_Num_Lock))
 +#else
 +#define IS_MODIFIER_KEY(keysym)  \
 +  ((((keysym) >= GDK_Shift_L) && ((keysym) <= GDK_Hyper_R)) \
 +   || ((keysym) == GDK_Mode_switch) \
 +   || ((keysym) == GDK_Num_Lock))
 +#endif
  
  #define THIS_IS_GTK
  #include "event-xlike-inc.c"
 -- 
 	       Malcolm Purvis <malcolmp(a)xemacs.org>
 Q: Why did the chicken cross the Mobius strip?
 A: To get to the other... uh... err...