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

Mac OS (Cocoa): exec() in Window Modal dialog does not return when there is different Window Modal dialog on different window.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Invalid
    • P3: Somewhat important
    • Some future release
    • 4.8.5, 5.2.1
    • GUI: Window management
    • None
    • Qt 4.8.5 and 5.2.1
      Mac OS 10.6, 10.8, 10.9
    • macOS

    Description

      Step to reproduce with attached application.
      1. Run app.
      2. Open non-modal window by clicking in Main Window on button "Show NonModal Window".
      3. Open second non-modal window by clicking in Main Window on button "Show NonModalWindow".
      4. Open Window Modal message box by clicking on button "Show a WindowModal MessageBox" in first opened non modal window.
      5. Open second Window Modal message box by clicking on button "Show a WindowModal MessageBox" in second opened non modal window.
      6. Dismiss first Window Modal message box by clicking on "OK" button.

      Result:
      Dialog with "Accept" button is not shown (exec() does not return).
      It will show only when second Window Modal Message box is dismissed.

      Expected:
      Dialog with "Accept" button is shown right after "OK" button is clicked on first Window Modal message box.

      I have been investigating this a bit and it looks like problem is that when [NSApp stop:NSApp] is called in processPostedEvents then second QEventLoop is waken up and as this is not the one that is interrupted it goes again to [NSApp run] blocking first QEventLoop from waking up...

      Attachments

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

        Activity

          People

            sorvig Morten Sørvig
            dakron Pawel Kurdybacha
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes