Fixes black screen issue on EGL+X11 systems.

We weren't setting the backbuffer dimensions on this platform when the window is created.
This required a resize event to first be fired in order to see anything.

So instead do like GLX + X11 platforms do and query the dimensions and set the backbuffer to them.

Should fix issue 7666.
This commit is contained in:
Ryan Houdek 2014-10-23 07:54:05 -05:00
parent a9f0bd72d2
commit ec56c3b8d3
1 changed files with 10 additions and 0 deletions

View File

@ -23,6 +23,16 @@ EGLNativeWindowType cInterfaceEGLX11::InitializePlatform(EGLNativeWindowType hos
int nVisuals; int nVisuals;
vi = XGetVisualInfo(dpy, VisualIDMask, &visTemplate, &nVisuals); vi = XGetVisualInfo(dpy, VisualIDMask, &visTemplate, &nVisuals);
XWindowAttributes attribs;
if (!XGetWindowAttributes(dpy, (Window)host_window, &attribs))
{
ERROR_LOG(VIDEO, "Window attribute retrieval failed");
return 0;
}
s_backbuffer_width = attribs.width;
s_backbuffer_height = attribs.height;
return (EGLNativeWindowType) XWindow.CreateXWindow((Window) host_window, vi); return (EGLNativeWindowType) XWindow.CreateXWindow((Window) host_window, vi);
} }