SDL_GetAppState() correction when toggling fullscreen on OSX.
authorRyan C. Gordon
Thu, 18 Aug 2005 06:18:30 +0000
changeset 1119430d8d701f69
parent 1118 65f4b2dd46b7
child 1120 8e1fde455471
SDL_GetAppState() correction when toggling fullscreen on OSX.

Patch by me to address this comment on the SDL mailing list:

"There appears to be a serious bug with SDL_GetAppState on OS X (10.3.9). When
first running in windowed mode and then switching to full screen mode by
calling SDL_SetVideoMode, SDL_GetAppState returns 4 (SDL_APPACTIVE) instead of
7 (SDL_APPMOUSEFOCUS | SDL_APPINPUTFOCUS | SDL_APPACTIVE). However, the SDL
application clearly does have the keyboard focus, since it is able to receive
keyboard events."

--ryan.
src/video/quartz/SDL_QuartzVideo.m
     1.1 --- a/src/video/quartz/SDL_QuartzVideo.m	Thu Aug 18 06:06:02 2005 +0000
     1.2 +++ b/src/video/quartz/SDL_QuartzVideo.m	Thu Aug 18 06:18:30 2005 +0000
     1.3 @@ -639,6 +639,9 @@
     1.4      /* Save the flags to ensure correct tear-down */
     1.5      mode_flags = current->flags;
     1.6  
     1.7 +    /* we're fullscreen, so flag all input states... */
     1.8 +    SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS | SDL_APPINPUTFOCUS | SDL_APPACTIVE);
     1.9 +
    1.10      return current;
    1.11  
    1.12      /* Since the blanking window covers *all* windows (even force quit) correct recovery is crucial */