[Libreoffice-commits] core.git: Branch 'libreoffice-6-2' - sw/qa writerfilter/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Mon Jan 28 14:03:29 UTC 2019
sw/qa/extras/ooxmlexport/data/tdf120511_eatenSection.docx |binary
sw/qa/extras/ooxmlexport/ooxmlexport11.cxx | 11 +++++++++++
writerfilter/source/dmapper/DomainMapper.cxx | 1 +
writerfilter/source/dmapper/DomainMapper_Impl.hxx | 3 +++
4 files changed, 15 insertions(+)
New commits:
commit b761504aa81ac8e2f61ba87899a965de19dc35cc
Author: Justin Luth <justin_luth at sil.org>
AuthorDate: Sat Dec 29 18:50:18 2018 +0300
Commit: Miklos Vajna <vmiklos at collabora.com>
CommitDate: Mon Jan 28 15:03:06 2019 +0100
tdf#120511 writerfilter: track inserted frame per section
The logic using IsTextFrameInserted is worried about whether
a frame has been inserted before a table *in this section*,
so track frame's existence per section, not per document.
Change-Id: I8aa8a695b89727832e65535adae3fc3c94f95be5
Reviewed-on: https://gerrit.libreoffice.org/65720
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth at sil.org>
(cherry picked from commit 6aeba04b31cc33135f84bd7ea38a04ee9faa14ec)
Reviewed-on: https://gerrit.libreoffice.org/65722
diff --git a/sw/qa/extras/ooxmlexport/data/tdf120511_eatenSection.docx b/sw/qa/extras/ooxmlexport/data/tdf120511_eatenSection.docx
new file mode 100644
index 000000000000..6a6d6f17bae7
Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf120511_eatenSection.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
index c9e569cece74..d9dd00a69fbd 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
@@ -488,6 +488,17 @@ DECLARE_OOXMLEXPORT_TEST(testTdf113258_noBeforeAutospacing, "tdf113258_noBeforeA
getProperty<sal_Int32>(xShape->getStart(), "ParaTopMargin"));
}
+DECLARE_OOXMLEXPORT_TEST(testTdf120511_eatenSection, "tdf120511_eatenSection.docx")
+{
+ xmlDocPtr pXmlDoc = parseLayoutDump();
+ sal_Int32 nHeight = getXPath(pXmlDoc, "/root/page[1]/infos/prtBounds", "height").toInt32();
+ sal_Int32 nWidth = getXPath(pXmlDoc, "/root/page[1]/infos/prtBounds", "width").toInt32();
+ CPPUNIT_ASSERT_MESSAGE( "Page1 is portrait", nWidth < nHeight );
+ nHeight = getXPath(pXmlDoc, "/root/page[2]/infos/prtBounds", "height").toInt32();
+ nWidth = getXPath(pXmlDoc, "/root/page[2]/infos/prtBounds", "width").toInt32();
+ CPPUNIT_ASSERT_MESSAGE( "Page2 is landscape", nWidth > nHeight );
+}
+
DECLARE_OOXMLEXPORT_TEST(testTdf104354, "tdf104354.docx")
{
uno::Reference<text::XTextRange> xShape(getShape(1), uno::UNO_QUERY);
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 5e9bed49044a..a44771dbd8ab 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -2883,6 +2883,7 @@ void DomainMapper::lcl_endSectionGroup()
if (m_pImpl->GetIsDummyParaAddedForTableInSection())
m_pImpl->RemoveDummyParaForTableInSection();
}
+ m_pImpl->SetIsTextFrameInserted( false );
m_pImpl->PopProperties(CONTEXT_SECTION);
}
}
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.hxx b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
index 02f029a4732c..6006d2465f13 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.hxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
@@ -605,8 +605,11 @@ public:
bool GetIsFirstParagraphInShape() { return m_bIsFirstParaInShape; }
void SetIsDummyParaAddedForTableInSection( bool bIsAdded );
bool GetIsDummyParaAddedForTableInSection() { return m_bDummyParaAddedForTableInSection;}
+
+ /// Track if a textframe has been inserted into this section
void SetIsTextFrameInserted( bool bIsInserted );
bool GetIsTextFrameInserted() { return m_bTextFrameInserted;}
+
void SetIsPreviousParagraphFramed( bool bIsFramed ) { m_bIsPreviousParagraphFramed = bIsFramed; }
bool GetIsPreviousParagraphFramed() { return m_bIsPreviousParagraphFramed; }
void SetParaSectpr(bool bParaSectpr);
More information about the Libreoffice-commits
mailing list