Blame SOURCES/0073-fdo-81384-writerfilter-turn-the-horrible-btLr-cell-t.patch

f085be
From 546cd96371b5ae012e4f3bfe963ea299e1dcec54 Mon Sep 17 00:00:00 2001
f085be
From: Michael Stahl <mstahl@redhat.com>
f085be
Date: Tue, 29 Jul 2014 22:21:53 +0200
f085be
Subject: [PATCH 073/137] fdo#81384: writerfilter: turn the horrible btLr cell
f085be
 text dir hack
f085be
f085be
... by 5 degrees to starboard, which lets the row in the bugdoc appear,
f085be
altough the height is a bit insufficient still.  Why that works, is a
f085be
nautic mystery to me, i'd say this whole btLr emulation nonsense needs
f085be
to be keel-hauled, but after this patch i'll need some rum, arrrr...
f085be
f085be
(regression from commit 0208ead70a9412ccd554fcef3e9308f8ca17037b
f085be
 and commit 970160f78ef6cc7abacfa252daa8451e1f0117bb)
f085be
f085be
Change-Id: Ie0c6ec88b6d6635379b9127f6460647f14776aad
f085be
(cherry picked from commit 5893a7536a0bbce57c4a2f89680dcb4cff3d06d7)
f085be
Reviewed-on: https://gerrit.libreoffice.org/10631
f085be
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
f085be
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
f085be
---
f085be
 writerfilter/source/dmapper/DomainMapperTableManager.cxx | 3 ---
f085be
 writerfilter/source/dmapper/TablePropertiesHandler.cxx   | 5 ++++-
f085be
 2 files changed, 4 insertions(+), 4 deletions(-)
f085be
f085be
diff --git a/writerfilter/source/dmapper/DomainMapperTableManager.cxx b/writerfilter/source/dmapper/DomainMapperTableManager.cxx
f085be
index 6a95be3..8271492 100644
f085be
--- a/writerfilter/source/dmapper/DomainMapperTableManager.cxx
f085be
+++ b/writerfilter/source/dmapper/DomainMapperTableManager.cxx
f085be
@@ -351,10 +351,7 @@ bool DomainMapperTableManager::sprm(Sprm & rSprm)
f085be
                         if (!getCellProps() || getCellProps()->find(PROP_VERTICAL_MERGE) == getCellProps()->end())
f085be
                         {
f085be
                             // Though in case there will be a vertical merge, don't do this, it hides text that is supposed to be visible.
f085be
-                            TablePropertyMapPtr pRowPropMap( new TablePropertyMap );
f085be
-                            pRowPropMap->Insert(PROP_SIZE_TYPE, uno::makeAny(text::SizeType::FIX));
f085be
                             m_bRowSizeTypeInserted = true;
f085be
-                            insertRowProps(pRowPropMap);
f085be
                         }
f085be
                         m_bHasBtlrCell = true;
f085be
                         }
f085be
diff --git a/writerfilter/source/dmapper/TablePropertiesHandler.cxx b/writerfilter/source/dmapper/TablePropertiesHandler.cxx
f085be
index 3aa4427..e6576e0 100644
f085be
--- a/writerfilter/source/dmapper/TablePropertiesHandler.cxx
f085be
+++ b/writerfilter/source/dmapper/TablePropertiesHandler.cxx
f085be
@@ -97,11 +97,14 @@ namespace dmapper {
f085be
 
f085be
                     DomainMapperTableManager* pManager = dynamic_cast<DomainMapperTableManager*>(m_pTableManager);
f085be
                     // In case any of the cells has the btLr cell direction, then an explicit minimal size will just hide the whole row, don't do that.
f085be
-                    if (pMeasureHandler->GetRowHeightSizeType() != text::SizeType::MIN || !pManager || !pManager->HasBtlrCell())
f085be
+                    const int MINLAY = 23; // sw/inc/swtypes.hxx, minimal possible size of frames.
f085be
+                    if (!pManager || !pManager->HasBtlrCell() || pMeasureHandler->getMeasureValue() > ConversionHelper::convertTwipToMM100(MINLAY))
f085be
                     {
f085be
                         // In case a cell already wanted fixed size, we should not overwrite it here.
f085be
                         if (!pManager || !pManager->IsRowSizeTypeInserted())
f085be
                             pPropMap->Insert( PROP_SIZE_TYPE, uno::makeAny( pMeasureHandler->GetRowHeightSizeType() ), false);
f085be
+                        else
f085be
+                            pPropMap->Insert( PROP_SIZE_TYPE, uno::makeAny(text::SizeType::FIX), false);
f085be
 
f085be
                         pPropMap->Insert( PROP_HEIGHT, uno::makeAny(pMeasureHandler->getMeasureValue() ));
f085be
                     }
f085be
-- 
f085be
1.9.3
f085be