diff -cr SDL-1.2.5/src/events/SDL_keyboard.c SDL-1.2.5-dwh/src/events/SDL_keyboard.c *** SDL-1.2.5/src/events/SDL_keyboard.c 2002-03-06 06:23:02.000000000 -0500 --- SDL-1.2.5-dwh/src/events/SDL_keyboard.c 2004-01-13 17:39:30.000000000 -0500 *************** *** 37,42 **** --- 37,43 ---- #include "SDL_timer.h" #include "SDL_events_c.h" #include "SDL_sysevents.h" + #include "SDL_sysvideo.h" /* Global keystate information */ *************** *** 391,396 **** --- 392,427 ---- printf("The '%s' key has been %s\n", SDL_GetKeyName(keysym->sym), state == SDL_PRESSED ? "pressed" : "released"); #endif + + /* Toggle fullscreen on alt-enter + The alt-enter will never be send to the application */ + if( keysym->sym == SDLK_RETURN && state == SDL_PRESSED + && (SDL_ModState & KMOD_RALT)) { + SDL_WM_ToggleFullScreen(SDL_PublicSurface); + return(0); + } + + /* Toggle fullscreen on alt-enter + The alt-enter will never be send to the application */ + if( keysym->sym == SDLK_RETURN && state == SDL_PRESSED + && (SDL_ModState & KMOD_LALT)) { + SDL_WM_ToggleFullScreen(SDL_PublicSurface); + SDL_WM_IconifyWindow(); + return(0); + } + + if( keysym->sym == SDLK_g && state == SDL_PRESSED + && (SDL_ModState & KMOD_LCTRL)) { + SDL_WM_GrabInput(SDL_GRAB_OFF); + return(0); + } + + if( keysym->sym == SDLK_g && state == SDL_PRESSED + && (SDL_ModState & KMOD_RCTRL)) { + SDL_WM_GrabInput(SDL_GRAB_ON); + return(0); + } + /* Set up the keysym */ modstate = (Uint16)SDL_ModState; diff -cr SDL-1.2.5/src/video/directfb/SDL_DirectFB_video.c SDL-1.2.5-dwh/src/video/directfb/SDL_DirectFB_video.c *** SDL-1.2.5/src/video/directfb/SDL_DirectFB_video.c 2002-08-31 00:13:28.000000000 -0400 --- SDL-1.2.5-dwh/src/video/directfb/SDL_DirectFB_video.c 2003-11-13 19:05:42.000000000 -0500 *************** *** 239,245 **** if (format->Rmask == 0x7C00 && format->Gmask == 0x03E0 && format->Bmask == 0x001F) ! return DSPF_RGB15; break; case 24: --- 239,249 ---- if (format->Rmask == 0x7C00 && format->Gmask == 0x03E0 && format->Bmask == 0x001F) ! #ifndef DSPF_RGB15 ! return DSPF_ARGB1555; ! #else ! return DSPF_RGB15; ! #endif break; case 24: *************** *** 269,275 **** --- 273,283 ---- case 8: return DSPF_LUT8; case 15: + #ifndef DSPF_RGB15 + return DSPF_ARGB1555; + #else return DSPF_RGB15; + #endif case 16: return DSPF_RGB16; case 24: *************** *** 318,324 **** --- 326,336 ---- format->Amask = 0x000000FF; break; + #ifndef DSPF_RGB15 + case DSPF_ARGB1555: + #else case DSPF_RGB15: + #endif format->Rmask = 0x00007C00; format->Gmask = 0x000003E0; format->Bmask = 0x0000001F; *************** *** 394,400 **** --- 406,416 ---- goto error; } + #ifndef DSPF_RGB15 + ret = dfb->CreateInputEventBuffer (dfb, DICAPS_ALL, (DFBBoolean)1, &events); + #else ret = dfb->CreateEventBuffer (dfb, DICAPS_ALL, &events); + #endif if (ret) { SetDirectFBerror ("dfb->CreateEventBuffer", ret); diff -cr SDL-1.2.5/src/video/SDL_stretch.c SDL-1.2.5-dwh/src/video/SDL_stretch.c *** SDL-1.2.5/src/video/SDL_stretch.c 2002-03-06 06:23:03.000000000 -0500 --- SDL-1.2.5-dwh/src/video/SDL_stretch.c 2003-11-13 19:08:29.000000000 -0500 *************** *** 261,269 **** break; default: #ifdef __GNUC__ ! __asm__ __volatile__ (" ! call _copy_row ! " : "=&D" (u1), "=&S" (u2) : "0" (dstp), "1" (srcp) : "memory" ); --- 261,268 ---- break; default: #ifdef __GNUC__ ! __asm__ __volatile__ ( ! "call _copy_row" : "=&D" (u1), "=&S" (u2) : "0" (dstp), "1" (srcp) : "memory" ); diff -cr SDL-1.2.5/src/video/SDL_video.c SDL-1.2.5-dwh/src/video/SDL_video.c *** SDL-1.2.5/src/video/SDL_video.c 2002-10-05 12:50:56.000000000 -0400 --- SDL-1.2.5-dwh/src/video/SDL_video.c 2003-07-11 23:58:38.000000000 -0400 *************** *** 1723,1729 **** * This function returns the final grab mode after calling the * driver dependent function. */ ! static SDL_GrabMode SDL_WM_GrabInputRaw(SDL_GrabMode mode) { SDL_VideoDevice *video = current_video; SDL_VideoDevice *this = current_video; --- 1723,1729 ---- * This function returns the final grab mode after calling the * driver dependent function. */ ! SDL_GrabMode SDL_WM_GrabInputRaw(SDL_GrabMode mode) { SDL_VideoDevice *video = current_video; SDL_VideoDevice *this = current_video;