diff options
Diffstat (limited to 'src/printsupport/dialogs')
-rw-r--r-- | src/printsupport/dialogs/qpagesetupdialog_unix.cpp | 1 | ||||
-rw-r--r-- | src/printsupport/dialogs/qprintdialog_unix.cpp | 7 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp index 78e5b8d1ef..2a28516719 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp @@ -532,6 +532,7 @@ void QPageSetupWidget::updateWidget() void QPageSetupWidget::setupPrinter() const { m_printer->setPageLayout(m_pageLayout); + m_printer->setPageOrientation(m_pageLayout.orientation()); #if QT_CONFIG(cups) QCUPSSupport::PagesPerSheet pagesPerSheet = qvariant_cast<QCUPSSupport::PagesPerSheet>(m_ui.pagesPerSheetCombo->currentData() ); diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp b/src/printsupport/dialogs/qprintdialog_unix.cpp index c5b845f4ec..236e9b4980 100644 --- a/src/printsupport/dialogs/qprintdialog_unix.cpp +++ b/src/printsupport/dialogs/qprintdialog_unix.cpp @@ -702,13 +702,14 @@ void QPrintDialogPrivate::selectPrinter(const QPrinter::OutputFormat outputForma else options.grayscale->setChecked(true); - // keep duplex value explicitly set by user, if any, and selected printer supports it; - // use device default otherwise + // duplex priorities to be as follows: + // 1) a user-selected duplex value in the dialog has highest prority + // 2) duplex value set in the QPrinter QPrint::DuplexMode duplex; if (explicitDuplexMode != QPrint::DuplexAuto && supportedDuplexMode.contains(explicitDuplexMode)) duplex = explicitDuplexMode; else - duplex = top->d->m_currentPrintDevice.defaultDuplexMode(); + duplex = static_cast<QPrint::DuplexMode>(p->duplex()); switch (duplex) { case QPrint::DuplexNone: options.noDuplex->setChecked(true); break; |