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

QXcbBackingStore::toImage() returns wrong image.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3: Somewhat important
    • 6.4.3, 6.5.0, 6.6.0
    • 6.5.0 FF
    • QPA: X11/XCB
    • None
    • Linux/X11
    • d982f5211 (6.4), 8071e3c2a (dev), 4096667d6 (dev), f20f1c6b7 (6.4), 0b94530a3 (6.5), b464119dd (dev), c64ac301e (6.5)

    Description

      When multiple images are rendered and moved within their parent widget, QXcbBackingStore::toImage() returns a QImage where the last move is not properly reflected.
      All widgets are correctly displayed on the screen.

      QXcbBackingStore::recreateImage() cannot be called within toImage() because the latter is const, while the former is not.

      The test functions tst_QWidgetRepainManager::fastMove(), moveAcross(), moveInOutOverlapped() fail/flake on XCB because of that.

      The images attached show the following:
      grab_<testFunction>_.png represent what is displayed physically on the screen.
      backingstore_<testFunction>_.png represent the corresponding QXcbBackingStore::toImage() result.

      Attachments

        1. backingstore_fastMove_.png
          backingstore_fastMove_.png
          2 kB
        2. backingstore_moveAccross_.png
          backingstore_moveAccross_.png
          3 kB
        3. backingstore_moveInOutOverlapped_.png
          backingstore_moveInOutOverlapped_.png
          2 kB
        4. grab_fastMove_.png
          grab_fastMove_.png
          3 kB
        5. grab_moveAccross_.png
          grab_moveAccross_.png
          5 kB
        6. grab_moveInOutOverlapped_.png
          grab_moveInOutOverlapped_.png
          3 kB
        7. scroll_afterFirstScroll_0.png
          scroll_afterFirstScroll_0.png
          0.4 kB
        8. scroll_afterSecondScroll_0.png
          scroll_afterSecondScroll_0.png
          0.4 kB
        9. scroll_beforeScroll_0.png
          scroll_beforeScroll_0.png
          0.3 kB
        For Gerrit Dashboard: QTBUG-109036
        # Subject Branch Project Status CR V

        Activity

          People

            axelspoerl Axel Spoerl
            axelspoerl Axel Spoerl
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews