diff options
author | Patrick Luby <guibmacdev@gmail.com> | 2024-12-21 11:51:22 -0500 |
---|---|---|
committer | Patrick Luby <guibomacdev@gmail.com> | 2024-12-27 18:03:59 +0100 |
commit | 5bd6ef607d68d371b93ad438fb24e2d8fc352b10 (patch) | |
tree | 189baf17e27a6d84519e4d991cf4dd1460c9fb0d /icon-themes/breeze/cmd/sc_lineendstyle.png | |
parent | 5e9ab8a8ee883975c1217d855c1c4f9fe9968b05 (diff) |
tdf#163126 Fix incorrect paper size and rotation when printing a brochure
HEADmaster
Printing a brochure in Writer that has A5 pages would set the page size
to 10 times the size of an A4 page instead of the expected A4 page size
and would sometimes print the content at 90 degrees relative to the
paper.
This bug ended up being caused by several paper matching bugs:
- The page size and rotation would fail to be set if the printer was
nil. A printer is not needed to use the native macOS print dialog so
if the printer is nil, use the native default printer instead.
- Expand page size match range to 1/10th of an inch. The A4 page size in
Apple's "no printer installed" printer can differ from LibreOffice's
A4 page size by more than a millimeter so increase the match range to
1/10th of an inch since an A4 match would fail when using the previous
0.5 millimeter match range.
- When brochure printing in Writer, set the printer's page size to match
the preferred page size. Unlike most other platforms, the native print
dialog is always displayed on macOS and it displays a preview of the
print output which the user can make layout changes to. The user can
also change the printer or even send the print output to PDF instead
of a printer from within the native print dialog so set the printer's
paper to the preferred size so that the initial preview more closely
matches the page size and rotation that LibreOffice expects.
Lastly, the fix for this bug includes fixes for the following bugs in
the "print selection only" checkbox:
- The "print selection only" checkbox would remain unchecked after
checking it had restarted the print job so load the checkbox state
from where it was updated in
ControllerProperties::changePropertyWithBoolValue(). This fix was
copied from the following NeoOffice source code file which is licensed
under the Mozilla Public License, v. 2.0:
https://github.com/neooffice/NeoOffice/blob/NeoOffice-2022_7/vcl/osx/printaccessoryview.mm
- If the "print selection only" checkbox is changed when the content is
only a single page, calling
-[AquaPrintPanelAccessoryController updatePrintOperation:] won't
restart the print job so force the print job to restart.
- If the the "print selection only" checkbox is changed and then the
restarted print dialog is cancelled, idling will have already been
unblocked so check if it is blocked before unblocking it.
Change-Id: I99e9b3f73e3d3d860762c168573d2bb520934df3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179096
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
Diffstat (limited to 'icon-themes/breeze/cmd/sc_lineendstyle.png')
0 files changed, 0 insertions, 0 deletions