# HG changeset patch # User Aidan Kehoe # Date 1198505041 -3600 # Node ID df1f1f49ef702d66951ed0833cf160116c2b4e01 # Parent 63c25d1cbecf001ad5d3df335e95283d0a3d917d# Parent cc293ef846d240af187a523bb32eb5e26a083531 Automated merge with file:/Sources/xemacs-21.5-checked-out diff -r cc293ef846d2 -r df1f1f49ef70 src/ChangeLog --- a/src/ChangeLog Mon Dec 24 14:00:51 2007 +0100 +++ b/src/ChangeLog Mon Dec 24 15:04:01 2007 +0100 @@ -1,3 +1,10 @@ +2007-12-24 Aidan Kehoe + + * event-xlike-inc.c (x_keysym_to_character): + * event-xlike-inc.c (gtk_keysym_to_character): + Unify the typed character if possible, following the current value + for the unicode precedence list. + 2007-12-24 Aidan Kehoe * symbols.c (Fintern_soft): diff -r cc293ef846d2 -r df1f1f49ef70 src/event-xlike-inc.c --- a/src/event-xlike-inc.c Mon Dec 24 14:00:51 2007 +0100 +++ b/src/event-xlike-inc.c Mon Dec 24 15:04:01 2007 +0100 @@ -708,7 +708,15 @@ return Qnil; #ifdef MULE - return make_char (make_ichar (charset, code, 0)); + { + Lisp_Object unified = Funicode_to_char + (Fchar_to_unicode (make_char (make_ichar (charset, code, 0))), Qnil); + if (!NILP (unified)) + { + return unified; + } + return make_char (make_ichar (charset, code, 0)); + } #else return make_char (code + 0x80); #endif