diff -r eadb3790009f src/video/x11/SDL_x11window.c --- a/src/video/x11/SDL_x11window.c Thu Jun 21 14:01:47 2012 -0300 +++ b/src/video/x11/SDL_x11window.c Thu Jun 21 18:19:22 2012 +0400 @@ -794,9 +794,11 @@ { SDL_WindowData *data = (SDL_WindowData *) window->driverdata; Display *display = data->videodata->display; + SDL_DisplayData *displaydata = + (SDL_DisplayData *) SDL_GetDisplayForWindow(window)->driverdata; XEvent event; - XUnmapWindow(display, data->xwindow); + XWithdrawWindow(display, data->xwindow, displaydata->screen); /* Blocking wait for "UnmapNotify" event */ XIfEvent(display, &event, &isUnmapNotify, (XPointer)&data->xwindow); XFlush(display);