Am Freitag, 6. Oktober 2006 18:09 schrieb Willie Sippel:
Am Freitag, 6. Oktober 2006 15:26 schrieb Ulrich Czekalla:
From our discussions at wineconf we concluded that overriding the various functions such as glViewport and glScissor will get us there for most applications.
The only thing this will not do is handle the case where a child window overlaps a opengl child window. In this case the best solution is to use a glX extension that would allow us to provide a clip region to clip the overlapping child windows. The big question is this really necessary. How many applications make use of this? I don't know the answer.
I'd test your patch myself, but OpenGL in Wine is completely broken for me for a few weeks now, and I have no idea how to fix it (D3D works just fine, though)...
OK, just tested your patch with DAZ|Studio - quite an improvement! A few graphic glitches, like a disappearing menu bar (basically any part of the main window _except_ for the OpenGL viewport disappears randomly - you can still click on the buttons, but you can't see them). But I didn't notice any problems with floating (overlapping) child windows, they don't disappear and seem to work pretty much as expected!? It's a little sluggish, but I can't tell if that's due to your patch, or maybe DAZ|Studio really is that slow.
Anyway, once the glitches I mentioned are sorted out and this patch gets committed, quite a few Wine users should be very happy!
Ciao, Willie