From e5326a7e9607747e720060aa0d25b95ac5da1498 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Thu, 26 Feb 2004 15:12:51 +0000 Subject: [PATCH] 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. --- src/video/x11/SDL_x11video.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/video/x11/SDL_x11video.c b/src/video/x11/SDL_x11video.c index a7e993143..e2e88b43d 100644 --- a/src/video/x11/SDL_x11video.c +++ b/src/video/x11/SDL_x11video.c @@ -665,6 +665,7 @@ static int X11_CreateWindow(_THIS, SDL_Surface *screen, /* If a window is already present, destroy it and start fresh */ if ( SDL_Window ) { X11_DestroyWindow(this, screen); + switch_waiting = 0; /* Prevent jump back to now-meaningless state. */ } /* See if we have been given a window id */