2005-01-23 Tor Lillqvist <tml@novell.com>
+ * gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
+ dead accent key. (#164859, reported and fix verified by Daniel
+ Atallah.)
+
+ * gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
+ GDK_Greek_accentdieresis (tonos and dialytika) combining with iota
+ and upsilon.
+
* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name):
Don't call GetVolumeInformation() for network drives. They might
be disconnected, and calling GetVolumeInformation() will then
- cause long delays. (#164448) It seems to be very hard to reliably
- find out whether a network drive is connected or not, so it's
- easier to just not try getting the volume name for them. See the
- bug report for discussion.
+ cause long delays. (#164448, reported by Dave Neary.) It seems to
+ be very hard to reliably find out whether a network drive is
+ connected or not, so it's easier to just not try getting the
+ volume name for them. See the bug report for discussion.
2005-01-21 Matthias Clasen <mclasen@redhat.com>
2005-01-23 Tor Lillqvist <tml@novell.com>
+ * gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
+ dead accent key. (#164859, reported and fix verified by Daniel
+ Atallah.)
+
+ * gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
+ GDK_Greek_accentdieresis (tonos and dialytika) combining with iota
+ and upsilon.
+
* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name):
Don't call GetVolumeInformation() for network drives. They might
be disconnected, and calling GetVolumeInformation() will then
- cause long delays. (#164448) It seems to be very hard to reliably
- find out whether a network drive is connected or not, so it's
- easier to just not try getting the volume name for them. See the
- bug report for discussion.
+ cause long delays. (#164448, reported by Dave Neary.) It seems to
+ be very hard to reliably find out whether a network drive is
+ connected or not, so it's easier to just not try getting the
+ volume name for them. See the bug report for discussion.
2005-01-21 Matthias Clasen <mclasen@redhat.com>
2005-01-23 Tor Lillqvist <tml@novell.com>
+ * gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
+ dead accent key. (#164859, reported and fix verified by Daniel
+ Atallah.)
+
+ * gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
+ GDK_Greek_accentdieresis (tonos and dialytika) combining with iota
+ and upsilon.
+
* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name):
Don't call GetVolumeInformation() for network drives. They might
be disconnected, and calling GetVolumeInformation() will then
- cause long delays. (#164448) It seems to be very hard to reliably
- find out whether a network drive is connected or not, so it's
- easier to just not try getting the volume name for them. See the
- bug report for discussion.
+ cause long delays. (#164448, reported by Dave Neary.) It seems to
+ be very hard to reliably find out whether a network drive is
+ connected or not, so it's easier to just not try getting the
+ volume name for them. See the bug report for discussion.
2005-01-21 Matthias Clasen <mclasen@redhat.com>
gint k = ToAsciiEx (vk, scancode, key_state,
(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
if (k == 1)
}
else if (k == -1)
{
+ guint keysym;
+
MultiByteToWideChar (_gdk_input_codepage, 0,
chars, 1, wcs, 1);
_gdk_input_locale);
/* 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 */
*ksymp = GDK_dead_diaeresis; break;
*ksymp = GDK_dead_doubleacute; break;
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" : "")));
}
*/
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 */
GDK_dead_grave, GDK_E, 0, 0, 0, 0x00C8, /* LATIN_CAPITAL_LETTER_E_WITH_GRAVE */