No description
Find a file
Sam Lantinga ff8a1efc51 Fixed bug 2834 - Patch to support dead keys on Windows
Elise Maurer

When inputting text, dead-keys are currently not handled correctly on Windows with the latest SDL2 tip as well as the 2.0.3 release.

Using a French AZERTY keyboard, when I type the `^` key followed by `e` key to compose the `` character, I erroneously get two SDL_TEXTINPUT events, one with the `^` character and one with the `e` character.

I've looked at the history for SDL_windowsevents.c and there's been some back-and-forth with several methods for handling text input:

  * r8142 removed any handling of WM_CHAR because keyboard input was being handled through WM_KEYDOWN along with ToUnicode since r7645.

  * But using ToUnicode actually breaks dead-keys (googling for "ToUnicode dead keys" reports many horror stories of people trying to work around that and failing).

  * It seems like r7645 introduced a double-fix: it fixed WM_CHAR to properly handle Unicode, and also (unnecessarily?) added text input handling to WM_KEYDOWN. Later, r8142 removed the WM_CHAR stuff instead of the WM_KEYDOWN stuff.

The attached patch restores handling of text input through WM_CHAR and removes it from WM_KEYDOWN. I've tested it with French, English and Russian layouts and it seems to do its job. Obviously, with such matters, it's still a risky change.
2015-06-25 11:49:48 -07:00
acinclude Fix a libtool issue with some mingw-w64 cross compilers (thanks, Ozkan!). 2015-05-26 19:54:06 -04:00
android-project Fixed bug 2949 - [Android] Virtual DPAD remote not registered 2015-06-16 23:58:09 -07:00
build-scripts WinRT: made sure build script generates Release-built binaries, by default 2015-06-14 20:15:36 -04:00
cmake configure/cmake/x11: Removed SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32 test. 2015-06-08 01:13:51 -04:00
debian Updated the copyright year to 2015 2015-05-26 06:27:46 -07:00
docs Updated Mac OS X documentation for fatbuilt.sh -> gcc-fat.sh transition. 2015-06-22 21:30:08 -04:00
include Android has clock_gettime() - thanks Michael Labbe! 2015-06-19 23:40:23 -07:00
premake X11: Add Xdbe support to message boxes (thanks, Melker!). 2015-05-28 00:30:21 -04:00
src Fixed bug 2834 - Patch to support dead keys on Windows 2015-06-25 11:49:48 -07:00
test Fixed comment in test program. 2015-06-16 20:27:01 +02:00
VisualC Only use explicit inlining - otherwise Visual Studio 2010 will inline SDL_zero(info) in SDL_vsnprintf() into a memset() call when compiling the Release x64 configuration. 2015-06-14 18:57:05 -07:00
VisualC-WinRT
visualtest Updated the copyright year to 2015 2015-05-26 06:27:46 -07:00
Xcode Updated the copyright year to 2015 2015-05-26 06:27:46 -07:00
Xcode-iOS Fixed building test programs on the iOS simulator 2015-05-28 18:57:57 -07:00
.hgignore Cleaned up Xcode rules a little more 2015-06-19 23:32:37 -07:00
.hgtags
Android.mk Android: Replaced spaces with tab in Android.mk file. 2015-05-06 21:11:06 +02:00
autogen.sh
BUGS.txt
cmake_uninstall.cmake.in
CMakeLists.txt CMake fixes for MingW (thanks, Ozkan!). 2015-06-18 22:34:39 -04:00
configure GCC is warning about global functions with the same name as variables in the code, when using -Wshadow. 2015-06-19 23:53:33 -07:00
configure.in GCC is warning about global functions with the same name as variables in the code, when using -Wshadow. 2015-06-19 23:53:33 -07:00
COPYING.txt Updated the copyright year to 2015 2015-05-26 06:27:46 -07:00
CREDITS.txt
INSTALL.txt
Makefile.in Added missing file and folder to the release archive. 2015-06-20 11:15:37 +02:00
Makefile.minimal
Makefile.pandora
Makefile.psp
Makefile.wiz
README-SDL.txt
README.txt
sdl2-config.in
sdl2.m4
sdl2.pc.in
SDL2.spec.in Fixed docs path in RPM .spec file. 2015-06-04 19:05:01 -04:00
TODO.txt
VisualC.html
WhatsNew.txt Added more entries and brackets to WhatsNew.txt for 2.0.4. 2015-06-19 21:17:00 +02:00

                         Simple DirectMedia Layer

                                  (SDL)

                                Version 2.0

---
http://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed
to provide low level access to audio, keyboard, mouse, joystick, and graphics
hardware via OpenGL and Direct3D. It is used by video playback software,
emulators, and popular games including Valve's award winning catalog
and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting
with README.md

Enjoy!
	Sam Lantinga				(slouken@libsdl.org)