From: Chun-wei Fan Date: Tue, 15 May 2012 08:16:25 +0000 (+0800) Subject: Bug 676077: Fix handling of Keyboard Input on Windows X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~24^2~19707 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=fd6ce9975e4cc9c090d07e7a6b0013d02b49ce26;p=gtk4.git Bug 676077: Fix handling of Keyboard Input on Windows Don't use ASCII control characters to denote the input of Esc, Tab, Return/Enter, Backspace and Delete, as it seems that it is not how Windows handle them, and they cause weird characters to appear in the input field on GTK+3 programs in non-English Windows. Instead, let these keys be handled as-is on Windows, like what is done in GTK+-2.x. Checked with mclasen on IRC, and thanks to the people who verified the patch to not break anything on English Windows. --- diff --git a/gdk/gdkkeyuni.c b/gdk/gdkkeyuni.c index 3a7cca15a7..c951ad8d82 100644 --- a/gdk/gdkkeyuni.c +++ b/gdk/gdkkeyuni.c @@ -830,13 +830,18 @@ static const struct { /* Following items added to GTK, not in the xterm table */ /* A few ASCII control characters */ - +#ifndef GDK_WINDOWING_WIN32 { 0xFF08 /* Backspace */, '\b' }, { 0xFF09 /* Tab */, '\t' }, +#endif + { 0xFF0A /* Linefeed */, '\n' }, { 0xFF0B /* Vert. Tab */, '\v' }, + +#ifndef GDK_WINDOWING_WIN32 { 0xFF0D /* Return */, '\r' }, { 0xFF1B /* Escape */, '\033' }, +#endif /* Numeric keypad */ @@ -861,7 +866,9 @@ static const struct { /* End numeric keypad */ +#ifndef GDK_WINDOWING_WIN32 { 0xFFFF /* Delete */, '\177' } +#endif }; /**