Skip to content
Permalink
Browse files

Fixed bug #278

Added the GFX_Display to the wminfo structure, contributed by Eric
  • Loading branch information
slouken committed Sep 24, 2006
1 parent 72305ec commit dae8a4c739523efb21709cab4ca4d34633aded6d
Showing with 15 additions and 1 deletion.
  1. +5 −1 include/SDL_syswm.h
  2. +10 −0 src/video/x11/SDL_x11wm.c
@@ -86,7 +86,8 @@ typedef struct SDL_SysWMinfo {
Display *display; /* The X11 display */
Window window; /* The X11 display window */
/* These locking functions should be called around
any X11 functions using the display variable.
any X11 functions using the display variable,
but not the gfxdisplay variable.
They lock the event thread, so should not be
called around event functions or from event filters.
*/
@@ -96,6 +97,9 @@ typedef struct SDL_SysWMinfo {
/* Introduced in SDL 1.0.2 */
Window fswindow; /* The X11 fullscreen window */
Window wmwindow; /* The X11 managed input window */

/* Introduced in SDL 1.2.12 */
Display *gfxdisplay; /* The X11 display to which rendering is done */
} x11;
} info;
} SDL_SysWMinfo;
@@ -398,6 +398,8 @@ static void unlock_display(void)
XSync(SDL_Display, False);
SDL_Unlock_EventThread();
}

#include <stdio.h>
int X11_GetWMInfo(_THIS, SDL_SysWMinfo *info)
{
if ( info->version.major <= SDL_MAJOR_VERSION ) {
@@ -410,6 +412,14 @@ int X11_GetWMInfo(_THIS, SDL_SysWMinfo *info)
info->info.x11.fswindow = FSwindow;
info->info.x11.wmwindow = WMwindow;
}


if ( SDL_VERSIONNUM(info->version.major,
info->version.minor,
info->version.patch) >= 1212 ) {
info->info.x11.gfxdisplay = GFX_Display;
}

info->info.x11.lock_func = lock_display;
info->info.x11.unlock_func = unlock_display;
return(1);

0 comments on commit dae8a4c

Please sign in to comment.