summaryrefslogtreecommitdiff
path: root/writerfilter/source/dmapper/DomainMapperTableManager.cxx
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2020-02-05 16:11:40 +0100
committerMiklos Vajna <vmiklos@collabora.com>2020-02-06 09:08:17 +0100
commit3d6a5de8f4579187e5949b212e4625773bb20e6f (patch)
tree8d0271a002bed16074089eeb0385ea74db7b3791 /writerfilter/source/dmapper/DomainMapperTableManager.cxx
parent07e5498fdeaefd72cd86f0413dfaea56724097b3 (diff)
DOCX import: don't give up on floating tables in headers completely
This reverts commit 213d6390a2cc59d174173f4359c161625a9c4bdc (tdf#108272 DOCX table-only header: fix SAX parser error, 2020-02-03), except its testcase and replaces it with a better fix that does not import all floating-table-in-header as non-floating tables. See the new testcase, which is 1 pages in Word, it was 3 pages in Writer, and with the better fix it's now 1 pages in Writer as well. Change-Id: Ica3500120f12222d7cf766d55c17d78164865026 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88037 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'writerfilter/source/dmapper/DomainMapperTableManager.cxx')
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableManager.cxx10
1 files changed, 5 insertions, 5 deletions
diff --git a/writerfilter/source/dmapper/DomainMapperTableManager.cxx b/writerfilter/source/dmapper/DomainMapperTableManager.cxx
index 9847476618a0..313a918a3eb4 100644
--- a/writerfilter/source/dmapper/DomainMapperTableManager.cxx
+++ b/writerfilter/source/dmapper/DomainMapperTableManager.cxx
@@ -50,7 +50,7 @@ DomainMapperTableManager::DomainMapperTableManager() :
m_nGridAfter(0),
m_nHeaderRepeat(0),
m_nTableWidth(0),
- m_bIsUnfloatTable(false),
+ m_bIsInShape(false),
m_aTmpPosition(),
m_aTmpTableProperties(),
m_bPushCurrentWidth(false),
@@ -339,8 +339,8 @@ bool DomainMapperTableManager::sprm(Sprm & rSprm)
case NS_ooxml::LN_CT_TblPrBase_tblpPr:
{
writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
- // Ignore <w:tblpPr> in shape text or in table-only header, those tables should be always non-floating ones.
- if (!m_bIsUnfloatTable && pProperties.get())
+ // Ignore <w:tblpPr> in shape text, those tables should be always non-floating ones.
+ if (!m_bIsInShape && pProperties.get())
{
TablePositionHandlerPtr pHandler = m_aTmpPosition.back();
if ( !pHandler )
@@ -425,9 +425,9 @@ TablePositionHandler* DomainMapperTableManager::getCurrentTableRealPosition()
return nullptr;
}
-void DomainMapperTableManager::setIsUnfloatTable(bool bIsUnfloatTable)
+void DomainMapperTableManager::setIsInShape(bool bIsInShape)
{
- m_bIsUnfloatTable = bIsUnfloatTable;
+ m_bIsInShape = bIsInShape;
}
void DomainMapperTableManager::startLevel( )