Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-80508

QSGGuiThreadRenderLoop uses single context for all windows

XMLWordPrintable

    • All
    • 331e2effa7 (qt/qtdeclarative/dev)

      QSGGuiThreadRenderLoop::renderWindow uses a single shared QOpenGLContext for all windows, that is set up on first creation with:

              gl->setFormat(window->requestedFormat());
              gl->setScreen(window->screen());
      

      This is a problem is subsequent windows are rendered where the screen or surface format doesn't match. For example if the first window doesn't have an alpha, while the second window does, the GL context (on macOS e.g.) is setup without an NSOpenGLPFAAlphaSize, resulting in the second window not being transparent but instead black.

        For Gerrit Dashboard: QTBUG-80508
        # Subject Branch Project Status CR V

            lagocs Laszlo Agocs
            vestbo Tor Arne Vestbø
            Votes:
            7 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes