Skip to content
  • Emmanuele Bassi's avatar
    [x11] Abstract XVisualInfo creation · e59a19bd
    Emmanuele Bassi authored
    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.
    e59a19bd