Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.8.2, 5.3.0
-
Mac OS X 10.6.8, Xcode 3.2.6, Qt/Cocoa 4.8.2 Mac OSX 10.9.2
-
-
838212b8e692add300774ffb012dc90342a3130e
Description
QPageSetupDialogPrivate::openCocoaPageLayout uses the NSPrintInfo from the print engine to prepare the page setup dialog (settings like orientation are read from this print info object, and saved back to it).
QMacPrintEnginePrivate::initialize creates a new NSPrintInfo whenever the print engine is initialised.
QMacPrintEngine::end calls QMacPrintEnginePrivate::releaseSession after printing, which releases the current NSPrintInfo.
This means that the page setup dialog only has an effect on the next print job, and the settings are reset after that job.
The page setup dialog is normally persistent on the Mac, and changes such as orientation should be honoured for all subsequent print jobs.
NSPrintInfo provides an application wide info object, via [NSPrintInfo sharedPrintInfo], to avoid this situation. QMacPrintEnginePrivate::initialize should use this object rather than creating new, blank, settings for each job.
Attachments
Issue Links
- is required for
-
QTBUG-25380 QtPrintSupport - Page Layout Issues
- Open
-
QTBUG-37698 QtPrintSupport - Dialog Issues
- Open
-
QTBUG-25383 QtPrintSupport - macOS Issues
- Closed
For Gerrit Dashboard: QTBUG-27887 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
101097,2 | Respect the orientation setting from the page setup dialog | 5.4 | qt/qtbase | Status: MERGED | +2 | 0 |