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

Incorrect mapping of sub-surfaces

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • None
    • 5.6.0
    • QPA: Wayland
    • None

    Description

      When Qt creates a sub-surface window tree it creates multiple "dummy" surfaces which don't get a buffer attached. Only the last child has a mapped surface.

      According to the Wayland spec this means that the sub-surface is not mapped. To quote:
      "A sub-surface becomes mapped, when a non-NULL wl_buffer is applied and the parent surface is mapped."

      And
      "A sub-surface is hidden if the parent becomes hidden, or if a NULL wl_buffer is applied. These rules apply recursively through the tree of surfaces."

      Please see the attached log from using systemsettings and the attached screenshot of how the tree of subsurfaces looks in this case.

      The wl_surface 102 is a child to wl_surface 70, but wl_surface 70 never gets rendered.

      Attachments

        1. systemsettings-wayland-no-map-subsurfaces.out
          167 kB
          Martin Gräßlin
        2. wayland-subsurface-tree.png
          178 kB
          Martin Gräßlin
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            tvete Paul Olav Tvete
            mgraesslin Martin Gräßlin
            Votes:
            2 Vote for this issue
            Watchers:
            9 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes