Create a 2D window and then manually focus a different window on your desktop,

call SDL_PumpEvents() so the X11 driver sets its this->hidden->switch_waiting,
then set a fullscreen OpenGL window (which makes the X11 driver tear down and
create a new window instead of just resizing the existing one), poll for
events, and the newly-created window will think it needs to pop back to a
window. Fixed by resetting switch_waiting to zero if X11_CreateWindow() had
to tear down a previous window.

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%40861
This commit is contained in:
Ryan C. Gordon 2004-02-26 15:12:51 +00:00
parent 90b89f2616
commit a967e79e6b

View file

@ -665,6 +665,7 @@ static int X11_CreateWindow(_THIS, SDL_Surface *screen,
/* If a window is already present, destroy it and start fresh */ /* If a window is already present, destroy it and start fresh */
if ( SDL_Window ) { if ( SDL_Window ) {
X11_DestroyWindow(this, screen); X11_DestroyWindow(this, screen);
switch_waiting = 0; /* Prevent jump back to now-meaningless state. */
} }
/* See if we have been given a window id */ /* See if we have been given a window id */