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?= +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 f8361ff..08da8d8 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -301,6 +301,7 @@ Patch43: 0001-Check-for-empty-before-calling-top.patch Patch44: 0002-Don-t-go-further-and-pop-the-stack-if-it-s-empty.patch Patch45: 0003-Use-a-new-fast-parser-instance-for-each-XML-fragment.patch Patch46: 0001-allow-build-with-icu-4.2.patch +Patch47: 0001-Resolves-fdo-80911-toggle-original-page-orientation-.patch %define instdir %{_libdir} %define baseinstdir %{instdir}/libreoffice @@ -2251,9 +2252,11 @@ update-desktop-database %{_datadir}/applications &> /dev/null || : %endif %changelog -* Wed Jul 02 2014 Caolán McNamara - 1:4.2.5.2-3-UNBUILT +* Fri Jul 04 2014 Caolán McNamara - 1:4.2.5.2-3 - Resolves: rhbz#1089207 crash in OOXML import - allow building with icu 4.2 +- Resolves: fdo#80911 toggle fallback paper sizes when they are already + in landscape mode * Tue Jul 01 2014 Caolán McNamara - 1:4.2.5.2-2 - fix detection of salesforce html pretending to be .xls by stripping