[Bug 2398] OpenGL is only used on top level windows so child windows get overdrawn

Wine Bugs wine-bugs at winehq.org
Mon Apr 9 16:21:33 CDT 2007


------- Additional Comments From thunderbird2k at gmx.net  2007-09-04 16:21 -------
Created an attachment (id=5708)
 --> (http://bugs.winehq.org/attachment.cgi?id=5708&action=view)
OpenGL child window patch (attempt 3)

This is an updated version of the patch. Below is a list of tested programs and
their results. Most of the tested programs work correctly. I broke the NWN app
as the hack isn't correct, it never worked correctly on old wine versions with
child windows. I'd like to know of more apps which work or don't. I fear that
some CAD/3d modeling apps don't work correctly as they tend to draw their own
GUI in which they mix opengl with gdi rendering. The problems I expect are
opengl windows covering parts of the gui.

Q3Radiant -> works
Google Earth -> works
Google SketchUp -> works
VLC opengl plugin -> works
Weatherscope -> works
MilkShape3D -> works
Terragen -> works
Terragen2 -> works

IKEA kitchen planner
This program uses a child window for a 3D preview screen and for a 2D drawing
grid. The 3D preview works fine but the 2D room editor doesn't work properly
but that isn't due to child windows. Further for proper operation this program
REQUIRES multiple pixelformats.

The opengl child window obscures win32 toolbars. This could possibly be fixed
by shaping the child window using the SHAPE extension for X.

NWN Toolset
The program never worked correctly on Wine even in the time that we had child
windows. The app is rendering to the main window instead of the child window.
The program only seems to call SetPixelFormat on a single HDC but not on all
the other HDCs on which it calls wglMakeCurrent. For some reason the HDCs
inherit the pixelformat of the main HDC. I have tried to reproduce this using a
testcase on Windows but wasn't able to reproduce it. Though I have verified my
suspicions by running the NWN tools on windows using an opengl wrapper and
indeed they inherit the pixelformat while SetPixelFormat has been called only

Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

More information about the wine-bugs mailing list