# HG changeset patch # User dewyatt # Date 1275988969 14400 # Node ID 983eb9d5ed31497fdb90cf09f2ab75e1ddf6edc1 # Parent e1307be6cb9e70b4d4d0decbaba54a8fb4c7a50b Change SDL to not use DefWindowProc as the window class' window procedure. For some reason, having lpfnWndProc=DefWindowProc during window class registration causes IME input to not work in windows. With this small change, IME input should now work in SDL windows but not in fullscreen mode. diff -r e1307be6cb9e -r 983eb9d5ed31 src/video/win32/SDL_win32events.c --- a/src/video/win32/SDL_win32events.c Sun May 30 15:48:16 2010 -0400 +++ b/src/video/win32/SDL_win32events.c Tue Jun 08 05:22:49 2010 -0400 @@ -703,7 +703,7 @@ class.hbrBackground = NULL; class.hInstance = SDL_Instance; class.style = SDL_Appstyle; - class.lpfnWndProc = DefWindowProc; + class.lpfnWndProc = WIN_WindowProc; class.cbWndExtra = 0; class.cbClsExtra = 0; if (!RegisterClass(&class)) { diff -r e1307be6cb9e -r 983eb9d5ed31 src/video/win32/SDL_win32window.c --- a/src/video/win32/SDL_win32window.c Sun May 30 15:48:16 2010 -0400 +++ b/src/video/win32/SDL_win32window.c Tue Jun 08 05:22:49 2010 -0400 @@ -112,7 +112,7 @@ /* Set up the window proc function */ data->wndproc = (WNDPROC) GetWindowLongPtr(hwnd, GWLP_WNDPROC); - if (data->wndproc == DefWindowProc) { + if (data->wndproc == WIN_WindowProc) { data->wndproc = NULL; } SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR) WIN_WindowProc);