diff options
author | Lars Knoll <lars.knoll@nokia.com> | 2012-04-16 12:04:34 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@nokia.com> | 2012-04-16 12:04:34 +0200 |
commit | 9bd032355163d92cda5e7e59ecd21214b131f187 (patch) | |
tree | 002fa12558505683143c7eb08949a3d225bf0712 /src/printsupport | |
parent | d037d25c3d5236623371cf051aaf6a9e59792ba7 (diff) | |
parent | 41673c45dde2eb95ee21dd918235218399f2be2c (diff) |
Merge remote-tracking branch 'origin/master' into api_changes
Conflicts:
configure
src/corelib/io/qurl.cpp
src/gui/kernel/qwindow.cpp
src/tools/moc/generator.cpp
src/widgets/kernel/qwidget_qpa.cpp
src/widgets/styles/qstyle.h
src/widgets/widgets/qtabbar.cpp
tests/auto/corelib/codecs/utf8/tst_utf8.cpp
Change-Id: Ia457228d6f684ec8184e13e8fcc9d25857b1751e
Diffstat (limited to 'src/printsupport')
-rw-r--r-- | src/printsupport/dialogs/qpagesetupdialog_mac.mm | 8 | ||||
-rw-r--r-- | src/printsupport/dialogs/qprintdialog_mac.mm | 8 |
2 files changed, 12 insertions, 4 deletions
diff --git a/src/printsupport/dialogs/qpagesetupdialog_mac.mm b/src/printsupport/dialogs/qpagesetupdialog_mac.mm index e387a58607..1dded4f905 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_mac.mm +++ b/src/printsupport/dialogs/qpagesetupdialog_mac.mm @@ -179,8 +179,12 @@ void QPageSetupDialog::setVisible(bool visible) QDialog::setVisible(visible); if (visible) { - d->openCocoaPageLayout(parentWidget() ? Qt::WindowModal - : Qt::ApplicationModal); + Qt::WindowModality modality = windowModality(); + if (modality == Qt::NonModal) { + // NSPrintPanels can only be modal, so we must pick a type + modality = parentWidget() ? Qt::WindowModal : Qt::ApplicationModal; + } + d->openCocoaPageLayout(modality); return; } else { if (d->pageLayout) { diff --git a/src/printsupport/dialogs/qprintdialog_mac.mm b/src/printsupport/dialogs/qprintdialog_mac.mm index 8ea3c9a11d..e1d85eed59 100644 --- a/src/printsupport/dialogs/qprintdialog_mac.mm +++ b/src/printsupport/dialogs/qprintdialog_mac.mm @@ -296,8 +296,12 @@ void QPrintDialog::setVisible(bool visible) QDialog::setVisible(visible); if (visible) { - d->openCocoaPrintPanel(parentWidget() ? Qt::WindowModal - : Qt::ApplicationModal); + Qt::WindowModality modality = windowModality(); + if (modality == Qt::NonModal) { + // NSPrintPanels can only be modal, so we must pick a type + modality = parentWidget() ? Qt::WindowModal : Qt::ApplicationModal; + } + d->openCocoaPrintPanel(modality); return; } else { if (d->printPanel) { |