diff options
author | Dyami Caliri <dyami@dragonframe.com> | 2014-06-18 10:58:10 -0700 |
---|---|---|
committer | Morten Johan Sørvig <morten.sorvig@digia.com> | 2014-06-23 14:26:38 +0200 |
commit | 83ecf1e97d13fb94023cf4a43e9ae45702e4a762 (patch) | |
tree | 20f0f321aef2f2763c66cb3fcdead59249b88be7 | |
parent | b5f284379155dee390c13a8d69b74d92f6ba9d19 (diff) |
Cocoa: cleanup modal sessions for dialogs not run with .exec()
For modal dialogs not run through QDialog.exec(), the modal sessions
were not cleaned up, causing the application's menus to be inaccessible.
Task-number: QTBUG-37699
Change-Id: I2704c23fec8989aa2e8ddcc3d5e3f21bb6c5db73
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm index e7f8992c6d..4328487f63 100644 --- a/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm +++ b/src/plugins/platforms/cocoa/qcocoaeventdispatcher.mm @@ -870,6 +870,9 @@ void QCocoaEventDispatcherPrivate::processPostedEvents() return; } + if (cleanupModalSessionsNeeded && currentExecIsNSAppRun) + cleanupModalSessions(); + if (processEventsCalled > 0 && interrupt) { if (currentExecIsNSAppRun) { // The event dispatcher has been interrupted. But since |