mirror of
https://github.com/brl/mutter.git
synced 2025-01-26 03:18:56 +00:00
e59a19bd03
The XVisualInfo for GL is created when a stage is being realized. When embedding Clutter inside another toolkit we might not want to realize a stage to extract the XVisualInfo, then set the stage window using a foreign X Window -- which will cause a re-realization. Instead, we should abstract as much as possible into the X11 backend. Unfortunately, the XVisualInfo for GL is requested using GLX API; for this reason we have to create a ClutterBackendX11 method that we override inside the ClutterBackendGLX implementation. This also allows us to move a little bit of complexity from out of the stage realization, which is currently a very delicate and hard to debug section.