changeset:   4368:63c25d1cbecf001ad5d3df335e95283d0a3d917d
parent:      4319:74d00c7cc134a6cc94eac170ca774ecef7736ee8
user:        Aidan Kehoe <kehoea(a)parhasard.net>
date:        Mon Dec 24 15:02:36 2007 +0100
files:       src/ChangeLog src/event-xlike-inc.c
description:
Unify the typed character under X11, using the unicode precedence list
2007-12-24  Aidan Kehoe  <kehoea(a)parhasard.net>
	* 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.
diff -r 74d00c7cc134a6cc94eac170ca774ecef7736ee8 -r
63c25d1cbecf001ad5d3df335e95283d0a3d917d src/ChangeLog
--- a/src/ChangeLog	Sun Dec 09 18:31:41 2007 +0100
+++ b/src/ChangeLog	Mon Dec 24 15:02:36 2007 +0100
@@ -1,3 +1,10 @@ 2007-12-06  Aidan Kehoe  <kehoea@parhasa
+2007-12-24  Aidan Kehoe  <kehoea(a)parhasard.net>
+
+	* 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-06  Aidan Kehoe  <kehoea(a)parhasard.net>
 
 	* tests.c (Ftest_data_format_conversion):
diff -r 74d00c7cc134a6cc94eac170ca774ecef7736ee8 -r
63c25d1cbecf001ad5d3df335e95283d0a3d917d src/event-xlike-inc.c
--- a/src/event-xlike-inc.c	Sun Dec 09 18:31:41 2007 +0100
+++ b/src/event-xlike-inc.c	Mon Dec 24 15:02:36 2007 +0100
@@ -708,7 +708,15 @@ gtk_keysym_to_character(guint keysym)
     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
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches