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

When using software render on Qt 5.8, QQuickView will be blank after invoking hide() then show()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Not Evaluated
    • 5.9.0
    • 5.8.0
    • None
    • Qt 5.8 on Windows 10. software context (2d) renderer.

    Description

      When environment variable QT_QUICK_BACKEND="softwarecontext"

      When QQuickWindow::hide() is invoked, the window containing QML content disappears as expected.

      When invoking QQuickWindow::show() to make the window visible again, it results in the window re-appearing, but not the QML content (Blank window, refused to repaint).

      Workaround is to call QQuickWindow::resize() a couple of times before calling QQuickWindow::show() again. Or user manually resizes window.

      I've attached a sample program that creates two windows. When clicking the "toggle" button on the first window, it will show/hide the other window. Notice that when the window goes from visible to hidden and back to visible again, the contents are loss. You can uncomment the "ApplyWorkaround" call in the code to see how a resize fixes the issue.

      Attachments

        1. HideShowTest.zip
          8 kB
          John Selbie
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            sletta Gunnar Sletta
            jselbie John Selbie
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes