Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gtk+/ChangeLog,v
retrieving revision 1.6319
diff -u -2 -r1.6319 ChangeLog
--- ChangeLog	20 Jan 2005 02:58:02 -0000	1.6319
+++ ChangeLog	22 Jan 2005 01:57:01 -0000
@@ -1,2 +1,10 @@
+2005-01-22  Tor Lillqvist  <tml@novell.com>
+
+	* gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
+	dead accent key. (#164859)
+
+	* gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
+	GDK_Greek_accentdieresis combining with iota and upsilon.
+
 Wed Jan 19 18:57:02 2005  Manish Singh  <yosh@gimp.org>
 
Index: gdk/win32/gdkkeys-win32.c
===================================================================
RCS file: /cvs/gnome/gtk+/gdk/win32/gdkkeys-win32.c,v
retrieving revision 1.23
diff -u -2 -r1.23 gdkkeys-win32.c
--- gdk/win32/gdkkeys-win32.c	19 Jan 2005 22:48:30 -0000	1.23
+++ gdk/win32/gdkkeys-win32.c	22 Jan 2005 01:57:02 -0000
@@ -275,5 +275,5 @@
 				      (LPWORD) chars, 0, _gdk_input_locale);
 #if 0
-		  g_print ("ToAsciiEx(%02x: %d: %d: %d, %02x%02x\n",
+		  g_print ("ToAsciiEx(%02x, %d: %d): %d, %02x%02x\n",
 			   vk, scancode, shift, k, chars[0], chars[1]);
 #endif
@@ -293,4 +293,6 @@
 		  else if (k == -1)
 		    {
+		      guint keysym;
+
 		      MultiByteToWideChar (_gdk_input_codepage, 0,
 					   chars, 1, wcs, 1);
@@ -316,5 +318,6 @@
 		      
 		      /* Use dead keysyms instead of "undead" ones */
-		      switch (gdk_unicode_to_keyval (wcs[0]))
+		      keysym = gdk_unicode_to_keyval (wcs[0]);
+		      switch (keysym)
 			{
 			case '"': /* 0x022 */
@@ -348,11 +351,14 @@
 			case GDK_abovedot: /* 0x1ff */
 			  *ksymp = GDK_dead_abovedot; break;
+			case 0x1000384: /* Greek tonos */
+			  *ksymp = GDK_dead_acute; break;
 			case GDK_Greek_accentdieresis: /* 0x7ae */
 			  *ksymp = GDK_Greek_accentdieresis; break;
 			default:
 			  GDK_NOTE (EVENTS,
-				    g_print ("Unhandled dead key cp:%d vk:%02x, sc:%x, ch:%02x%s%s\n",
+				    g_print ("Unhandled dead key cp:%d vk:%02x sc:%x ch:%02x wc:%04x keysym:%04x%s%s\n",
 					     _gdk_input_codepage, vk,
 					     scancode, chars[0],
+					     wcs[0], keysym,
 					     (shift&0x1 ? " shift" : ""),
 					     (shift&0x2 ? " altgr" : "")));
Index: gtk/gtkimcontextsimple.c
===================================================================
RCS file: /cvs/gnome/gtk+/gtk/gtkimcontextsimple.c,v
retrieving revision 1.40
diff -u -2 -r1.40 gtkimcontextsimple.c
--- gtk/gtkimcontextsimple.c	26 Oct 2004 20:56:52 -0000	1.40
+++ gtk/gtkimcontextsimple.c	22 Jan 2005 01:57:04 -0000
@@ -59,4 +59,6 @@
 
 static const guint16 gtk_compose_seqs[] = {
+  GDK_Greek_accentdieresis,	GDK_Greek_iota,	0,	0,	0,	0x0390,	/* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS */
+  GDK_Greek_accentdieresis,	GDK_Greek_upsilon,	0,	0,	0,	0x03B0,	/* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS */
   GDK_dead_grave,	GDK_space,	0,	0,	0,	0x0060,	/* GRAVE_ACCENT */
   GDK_dead_grave,	GDK_A,	0,	0,	0,	0x00C0,	/* LATIN_CAPITAL_LETTER_A_WITH_GRAVE */
