diff options
author | László Németh <nemeth@numbertext.org> | 2021-03-26 16:28:03 +0100 |
---|---|---|
committer | László Németh <nemeth@numbertext.org> | 2021-03-28 14:49:08 +0200 |
commit | e11c51eefe8c3210cef2b5850f401ba67a401d01 (patch) | |
tree | da3c189d933082328da69654e0e8fd3ae57e9d7b /sw/source/filter | |
parent | 27377e3db2792d1bf6eb733492462701defdeffc (diff) |
and endnotes by converting them to floating tables during the
import, and removing floating at the DOCX export.
Writer core doesn't support non-floating tables in footnotes
and endnotes officially, (flowfrm:cxx: "Tables in footnotes
are not truly supported"), so their DOCX import resulted
serious problems:
– missing table paint (tdf#95806);
– table loss during saving to ODT (tdf#125877);
– table loss during copying them or their footnotes and
endnotes in the document (this resulted the regression
of the optimized footnote and endnote import: tdf#141172);
– table loss during changing the order of the chapters in
the Navigator.
Change-Id: Ife8af41936ae3ab003a3a9ad33b98c1d813e9c82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113162
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'sw/source/filter')
-rw-r--r-- | sw/source/filter/ww8/docxattributeoutput.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index 4b9c72829c3b..f4688e5f6a01 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -3982,7 +3982,10 @@ void DocxAttributeOutput::TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t m_pSerializer->singleElementNS(XML_w, XML_tblLook, pAttributeList); } - else if (rGrabBagElement.first == "TablePosition" ) + else if (rGrabBagElement.first == "TablePosition" && + // skip empty table position (tables in footnotes converted to + // floating tables temporarily, don't export this) + rGrabBagElement.second != uno::Any() ) { rtl::Reference<FastAttributeList> attrListTablePos = FastSerializerHelper::createAttrList( ); const uno::Sequence<beans::PropertyValue> aTablePosition = rGrabBagElement.second.get<uno::Sequence<beans::PropertyValue> >(); |