# HG changeset patch # User Sam Lantinga # Date 1159052872 0 # Node ID b2f59aadec0d6045a2096d2f718ed646161d178c # Parent 4dae257a9cbf571563bce1e0b8973f31a6780ca8 Fixed bug #294 Can't build SDL 1.2.11(and svn) for Pocket PC 2003 with Visual Studio 2005 Fix contributed by Dmitry Yakimov diff -r 4dae257a9cbf -r b2f59aadec0d src/video/windib/SDL_dibevents.c --- a/src/video/windib/SDL_dibevents.c Sat Sep 16 12:00:03 2006 +0000 +++ b/src/video/windib/SDL_dibevents.c Sat Sep 23 23:07:52 2006 +0000 @@ -273,18 +273,35 @@ void DIB_InitOSKeymap(_THIS) { int i; - char current_layout[256]; +#ifndef _WIN32_WCE + char current_layout[KL_NAMELENGTH]; GetKeyboardLayoutName(current_layout); //printf("Initial Keyboard Layout Name: '%s'\n", current_layout); hLayoutUS = LoadKeyboardLayout("00000409", KLF_NOTELLSHELL); + if (!hLayoutUS) { //printf("Failed to load US keyboard layout. Using current.\n"); hLayoutUS = GetKeyboardLayout(0); } LoadKeyboardLayout(current_layout, KLF_ACTIVATE); +#else +#if _WIN32_WCE >=420 + TCHAR current_layout[KL_NAMELENGTH]; + GetKeyboardLayoutName(current_layout); + //printf("Initial Keyboard Layout Name: '%s'\n", current_layout); + + hLayoutUS = LoadKeyboardLayout(L"00000409", 0); + + if (!hLayoutUS) { + //printf("Failed to load US keyboard layout. Using current.\n"); + hLayoutUS = GetKeyboardLayout(0); + } + LoadKeyboardLayout(current_layout, 0); +#endif // _WIN32_WCE >=420 +#endif /* Map the VK keysyms */ for ( i=0; iw; bounds.bottom = SDL_windowY+video->h; +#ifndef _WIN32_WCE AdjustWindowRectEx(&bounds, GetWindowLong(SDL_Window, GWL_STYLE), (GetMenu(SDL_Window) != NULL), 0); +#else + // The bMenu parameter must be FALSE; menu bars are not supported + AdjustWindowRectEx(&bounds, GetWindowLong(SDL_Window, GWL_STYLE), 0, 0); +#endif width = bounds.right-bounds.left; height = bounds.bottom-bounds.top; if ( (flags & SDL_FULLSCREEN) ) { diff -r 4dae257a9cbf -r b2f59aadec0d test/testalpha.c --- a/test/testalpha.c Sat Sep 16 12:00:03 2006 +0000 +++ b/test/testalpha.c Sat Sep 23 23:07:52 2006 +0000 @@ -505,9 +505,14 @@ } break; case SDL_KEYDOWN: +#ifndef _WIN32_WCE if ( event.key.keysym.sym == SDLK_ESCAPE ) { done = 1; } +#else + // there is no ESC key at all + done = 1; +#endif break; case SDL_QUIT: done = 1;