[Vm-dev] X11 platform: why IncludeInferiors instead of ClipByChildren?

Hans-Martin Mosner hmm at heeg.de
Sun Jan 22 23:41:09 UTC 2012


On X11, the GC for the squeak window is created with the subwindow_mode IncludeInferiors.
This leads to different behavior with OpenGL rendering compared to other platforms (Windows, OS X).
On these other platforms, the OpenGL subwindow completely occludes the squeak window, while on X11, squeak screen
updates will overwrite OpenGL content. This makes it somewhat difficult to use OpenGL within a morphic environment, as
the deferred display update of Display will destroy the graphics that have been drawn using OpenGL.
I wonder whether Croquet/Cobalt uses a different mechanism to avoid this - but naive OpenGL morphs which just include
glSwapBuffers as part of their drawOn: method only create flickering.

Any idea or solution?

Cheers,
Hans-Martin


More information about the Vm-dev mailing list