[libreoffice] Resolves: fdo#80911 toggle fallback paper sizes
Caolán McNamara
caolanm at fedoraproject.org
Thu Jul 17 12:58:30 UTC 2014
commit 8690bfbafd2c4f4fce7320b9fb9b1916878666b2
Author: Caolán McNamara <caolanm at redhat.com>
Date: Fri Jul 4 13:33:15 2014 +0100
Resolves: fdo#80911 toggle fallback paper sizes
...o-80911-toggle-original-page-orientation-.patch | 88 ++++++++++++++++++++
libreoffice.spec | 1 +
2 files changed, 89 insertions(+), 0 deletions(-)
---
diff --git a/0001-Resolves-fdo-80911-toggle-original-page-orientation-.patch b/0001-Resolves-fdo-80911-toggle-original-page-orientation-.patch
new file mode 100644
index 0000000..3592b8c
--- /dev/null
+++ b/0001-Resolves-fdo-80911-toggle-original-page-orientation-.patch
@@ -0,0 +1,88 @@
+From 1c6bd2c40fd03ec735fd6dbec01520f10ee1d55a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm at redhat.com>
+Date: Fri, 4 Jul 2014 13:28:08 +0100
+Subject: [PATCH] Resolves: fdo#80911 toggle original page orientation on paper
+ fallback
+
+User defined page sizes which match rotated paper sizes available to the
+printer don't work correctly when they are already in landscape mode. i.e. the
+orientation should be toggled, not overwritten.
+
+Change-Id: I30dca5f988ad72319410a03f47eccff277be8640
+---
+ vcl/source/gdi/print.cxx | 18 ++++++++++++------
+ 1 file changed, 12 insertions(+), 6 deletions(-)
+
+diff --git a/vcl/source/gdi/print.cxx b/vcl/source/gdi/print.cxx
+index 6c8bdc4..ded7ebc 100644
+--- a/vcl/source/gdi/print.cxx
++++ b/vcl/source/gdi/print.cxx
+@@ -1352,6 +1352,7 @@ void Printer::ImplFindPaperFormatForUserSize( JobSetup& aJobSetup, bool bMatchNe
+ int nLandscapeAngle = GetLandscapeAngle();
+ int nPaperCount = GetPaperInfoCount();
+ bool bFound = false;
++ bool bToggleOrient = false;
+
+ PaperInfo aInfo(pSetupData->mnPaperWidth, pSetupData->mnPaperHeight);
+
+@@ -1364,7 +1365,6 @@ void Printer::ImplFindPaperFormatForUserSize( JobSetup& aJobSetup, bool bMatchNe
+ {
+ pSetupData->mePaperFormat = ImplGetPaperFormat( rPaperInfo.getWidth(),
+ rPaperInfo.getHeight() );
+- pSetupData->meOrientation = ORIENTATION_PORTRAIT;
+ bFound = true;
+ break;
+ }
+@@ -1388,8 +1388,8 @@ void Printer::ImplFindPaperFormatForUserSize( JobSetup& aJobSetup, bool bMatchNe
+ {
+ pSetupData->mePaperFormat = ImplGetPaperFormat( rPaperInfo.getWidth(),
+ rPaperInfo.getHeight() );
+- pSetupData->meOrientation = ORIENTATION_LANDSCAPE;
+ bFound = true;
++ bToggleOrient = true;
+ break;
+ }
+ }
+@@ -1399,7 +1399,6 @@ void Printer::ImplFindPaperFormatForUserSize( JobSetup& aJobSetup, bool bMatchNe
+ {
+ sal_Int64 nBestMatch = SAL_MAX_INT64;
+ int nBestIndex = 0;
+- Orientation eBestOrientation = ORIENTATION_PORTRAIT;
+ for( int i = 0; i < nPaperCount; i++ )
+ {
+ const PaperInfo& rPaperInfo = GetPaperInfo( i );
+@@ -1412,7 +1411,7 @@ void Printer::ImplFindPaperFormatForUserSize( JobSetup& aJobSetup, bool bMatchNe
+ {
+ nBestMatch = nMatch;
+ nBestIndex = i;
+- eBestOrientation = ORIENTATION_PORTRAIT;
++ bToggleOrient = false;
+ }
+
+ // check landscape match
+@@ -1423,13 +1422,20 @@ void Printer::ImplFindPaperFormatForUserSize( JobSetup& aJobSetup, bool bMatchNe
+ {
+ nBestMatch = nMatch;
+ nBestIndex = i;
+- eBestOrientation = ORIENTATION_LANDSCAPE;
++ bToggleOrient = true;
+ }
+ }
+ const PaperInfo& rBestInfo = GetPaperInfo( nBestIndex );
+ pSetupData->mePaperFormat = ImplGetPaperFormat( rBestInfo.getWidth(),
+ rBestInfo.getHeight() );
+- pSetupData->meOrientation = eBestOrientation;
++ }
++
++ if (bToggleOrient)
++ {
++ if (pSetupData->meOrientation == ORIENTATION_PORTRAIT)
++ pSetupData->meOrientation = ORIENTATION_LANDSCAPE;
++ else
++ pSetupData->meOrientation = ORIENTATION_PORTRAIT;
+ }
+ }
+
+--
+1.9.3
+
diff --git a/libreoffice.spec b/libreoffice.spec
index a8a942c..ee22c5f 100644
--- a/libreoffice.spec
+++ b/libreoffice.spec
@@ -305,6 +305,7 @@ Patch14: 0001-disable-PSD-import-test-which-deadlocks-on-ARM.patch
Patch15: 0001-rhbz-1111216-allow-to-export-an-empty-sheet-to-PDF.patch
Patch16: 0001-allow-build-with-icu-4.2.patch
Patch17: 0001-avoid-problems-detecting-HTML-files-with-.xls-ext.patch
+Patch18: 0001-Resolves-fdo-80911-toggle-original-page-orientation-.patch
%define instdir %{_libdir}
%define baseinstdir %{instdir}/libreoffice
More information about the scm-commits
mailing list