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

Improve direct rendering API in QWaylandCompositor

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Out of scope
    • Icon: P2: Important P2: Important
    • 5.2.0
    • 5.1.0 Beta 1
    • QPA: Wayland
    • None

      Result of brain storming:

      class QWaylandCompositor {
      bool pageFlipSurface(QWaylandSurface *surface, QOpenGLContext *context);

      /*
      // example usage from qwindow-compositor
      if (!QWaylandCompositor::pageFlipSurface(myFullscreenSurface, context))

      { // fall back to compositing context->makeCurrent(window); composite(); context->swapBuffers(window); }

      */
      };

      class WaylandSurfaceItem : PageFlippableQuickItem
      {
      public:
      bool post(QOpenGLContext *context)

      { // is context really necessary? return m_compositor->pageFlipSurface(m_waylandSurface, context); }

      /*
      // scene graph code
      if (m_fullscreenPageFlippableItem && m_fullscreenPageFlippableItem->post(m_context))
      return;
      m_context->makeCurrent(m_window);
      renderScreneGraph();
      m_context->swapBuffers(m_window);
      */
      };

      The problem with setDirectRenderSurface() is that the compositor doesn't know whether the direct render surface was successfully set and whether it should go on compositing or not.

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            janichol Andy Nichols
            rodal Samuel Rødal
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes