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

Cocoa window: Updates are not received

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Not Evaluated
    • None
    • 6.8
    • QPA
    • None
    • macOS

    Description

      In our implementations, we embed QWindows into native windows and due to performance concerns at the same time turn off their vertical sync.

      This so far worked very well, until we noticed a regression with 6.8.x, where the graphical updates at some very early stage seem to suddenly stop and not update the UI anymore, until e.g. the UI is resized and in general they never recover.

      Looking into the change history, we could find the offending commit amongst the changes of this bug report: https://bugreports.qt.io/browse/QTBUG-107198
      The issue seems to be caused by an optimization, which is skipping update requests, if there is already natively being redrawn. This in principle seems fine, but it was apparently missed, to take the no-vsync use case into account, which relies on the update requests to be delivered, since they are responsible to start a new update cycle.

      We found a reasonably small patch to fix this (see attachment). If there aren't any objections, I will commit this to Gerrit soon (or if someone is faster than me, please go ahead).

      Attachments

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

        Activity

          People

            vestbo Tor Arne Vestbø
            stefan.wastl Stefan Wastl
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There is 1 open Gerrit change