changeset 4358:63c25d1cbecf

Unify the typed character under X11, using the unicode precedence list 2007-12-24 Aidan Kehoe <kehoea@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.
author Aidan Kehoe <kehoea@parhasard.net>
date Mon, 24 Dec 2007 15:02:36 +0100
parents 74d00c7cc134
children df1f1f49ef70
files src/ChangeLog src/event-xlike-inc.c
diffstat 2 files changed, 16 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- 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-24  Aidan Kehoe  <kehoea@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@parhasard.net>
 
 	* tests.c (Ftest_data_format_conversion):
--- 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 @@
     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