Go to file
Gabriel de Dietrich ff3dcc49c4 Cocoa: Don't stop NSApp when showing a modal dialog
We manage embedded modal sessions with a stack and only run
the top-most session. We also stop the last modal session
before starting a new one. However, if there is no modal
session running yet, we end up stopping NSApp. This seems
to cause ill side effects on OS X 10.9. Notably, starting
a new modal session outside QCocoaEventDispatcher, like when
opening a native file dialog, makes this last modal session
impossible for the user to quit.

In this patch, we make sure NSApp is kept running if there's
no modal session running yet, akin to calling QDialog::exec()
at the event dispatcher level. The behavior for ensuing modal
sessions remains unchanged.

Task-number: QTBUG-34677
Change-Id: I6a23b191e4dce18514504b8e953f8caa7fad8731
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-03-27 17:51:21 +01:00
bin automate handling of generated headers some more 2014-02-28 03:17:11 +01:00
config.tests Do not use -Bsymbolic* on anything but x86 and x86-64 2014-03-25 00:00:23 +01:00
dist update changelog for QtSql 5.3.0 2014-03-18 09:13:36 +01:00
doc Doc: Update year to 2014 2014-03-27 15:22:33 +01:00
examples Doc: Move IPC example documentation 2014-03-27 15:16:20 +01:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs winphone: deploy default font files as DirectWrite is not supported 2014-03-25 08:05:21 +01:00
qmake qmake: change a linker option in .pc file from -llibhoge to -lhoge 2014-03-26 05:18:48 +01:00
src Cocoa: Don't stop NSApp when showing a modal dialog 2014-03-27 17:51:21 +01:00
tests Check for administrative rights in tst_qsettings. 2014-03-27 17:51:21 +01:00
tools Externalize license key handling from configure 2014-03-25 12:50:28 +01:00
util Introduce QChar::JoiningType enum and QChar::joiningType() method 2014-01-29 23:19:47 +01:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore GitIgnore updates 2013-12-09 17:28:18 +01:00
.qmake.conf Enable -Werror for all of qtbase 2013-09-04 01:50:10 +02:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
configure Externalize license key handling from configure 2014-03-25 12:50:28 +01:00
configure.bat get rid of syncqt wrapper scripts 2013-05-13 21:54:48 +02:00
header.BSD Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.FDL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL-ONLY Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
INSTALL Doc: Update links in INSTALL file 2014-01-16 20:37:25 +01:00
LGPL_EXCEPTION.txt Change copyrights from Nokia to Digia 2012-09-22 19:20:11 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL Add the LICENSE.GPL file to the module referenced from license headers 2012-05-20 22:41:08 +02:00
LICENSE.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
LICENSE.PREVIEW.COMMERCIAL Update LICENSE.PREVIEW.COMMERCIAL license 2013-06-03 20:04:26 +02:00
qtbase.pro move generation of qconfig.h forwarding headers to qtbase.pro 2014-02-28 03:17:11 +01:00
sync.profile automate handling of generated headers some more 2014-02-28 03:17:11 +01:00