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

[macOS] Every key stroke beeps with AA_PluginApplication

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 5.14.2, 6.0.2
    • QPA
    • None
    • macOS

    Description

      We use Qt for palettes and modal dialogs inside Adobe Illustrator on macOS, i.e. with AA_PluginApplication.
      While upgrading from Qt 5.4, we bumped into a regression caused by QTBUG-45768 introduced in Qt 5.7:
      a) Every single keydown generates a beep in modal dialogs
      b) In some cases dialog rejection with the Escape key is handled twice
      This was solved for non-AA_PluginApplication use-cases in QTBUG-54211.
      But in our AA_PluginApplication case, all keys are still propagated in keyDown().
      When stepped thru handleKeyEvent() in qnsview_keys.mm, I noticed that QWindowSystemInterface::handleExtendedKeyEvent() returns whether the key has been consumed.
      But the return value is discarded and the call is followed by "accepted = QWindowSystemInterface::flushWindowSystemEvents();".
      But this seems to always return false because QWindowSystemInterfacePrivate::windowSystemEventQueue is empty.
      Thus I believe handleKeyEvent() should propagate the value returned by handleExtendedKeyEvent().
      I am not sure what it should do with the return value of flushWindowSystemEvents().
      I am providing patch files for Qt 5.14.2 and 6.0.2, where both return values are or-ed.

      Attachments

        Issue Links

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

          Activity

            People

              vestbo Tor Arne Vestbø
              jan.patera Jan Patera
              Veli-Pekka Heinonen Veli-Pekka Heinonen
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes