[Libreoffice-commits] core.git: sw/qa writerfilter/source

László Németh nemeth at numbertext.org
Tue Jul 10 15:57:53 UTC 2018


 sw/qa/extras/ooxmlexport/data/tdf104354.docx |binary
 sw/qa/extras/ooxmlexport/ooxmlexport11.cxx   |    3 +++
 writerfilter/source/dmapper/DomainMapper.cxx |    5 +++--
 3 files changed, 6 insertions(+), 2 deletions(-)

New commits:
commit 970eaaf1bdade63fd651db591c683e36e662f8f5
Author: László Németh <nemeth at numbertext.org>
Date:   Tue Jul 10 13:03:58 2018 +0200

    tdf#118533 fix shape import: zero top margin only in first paragraph
    
    commit 0307a62790b33ee0c02c2323a8f759e53e2035a4 fixed the
    top margin import of the paragraphs of document sections, and
    import of first paragraph of the text frames with beforeAutospacing,
    but nullified all other paragraph top margins in frames.
    
    Note: there is no visible margin difference in the unit test (extended
    by this commit) before and after the fix, because the first paragraph
    uses also afterAutospacing, resulting still 14pt paragraph space.
    But the tested beforeAutospacing value of the next paragraph checks
    the fix correctly.
    
    Change-Id: I0ab3b8bbff33c5488f4b4af1ea4dabf7105103f2
    Reviewed-on: https://gerrit.libreoffice.org/57231
    Reviewed-by: László Németh <nemeth at numbertext.org>
    Tested-by: László Németh <nemeth at numbertext.org>

diff --git a/sw/qa/extras/ooxmlexport/data/tdf104354.docx b/sw/qa/extras/ooxmlexport/data/tdf104354.docx
index 8645743f1fc1..d8655f4e0874 100644
Binary files a/sw/qa/extras/ooxmlexport/data/tdf104354.docx and b/sw/qa/extras/ooxmlexport/data/tdf104354.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
index e6ac19f3df91..1b979bb79cb0 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport11.cxx
@@ -310,6 +310,9 @@ DECLARE_OOXMLEXPORT_TEST(testTdf104354, "tdf104354.docx")
     // margin for the first paragraph in a text frame.
     CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(0),
                          getProperty<sal_Int32>(xShape->getStart(), "ParaTopMargin"));
+    // still 494 in the second paragraph
+    CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(494),
+                         getProperty<sal_Int32>(xShape->getEnd(), "ParaTopMargin"));
 }
 
 DECLARE_OOXMLEXPORT_TEST(testTdf107035, "tdf107035.docx")
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index ce3508f4a90c..d3719e745b13 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -654,8 +654,9 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
                     default_spacing = 49;
                 else
                 {
-                    // tdf#104354 fist paragraph has got zero top margin
-                    if (m_pImpl->GetIsFirstParagraphInSection())
+                    // tdf#104354, tdf#118533 first paragraph of sections and shapes got zero top margin
+                    if ((m_pImpl->GetIsFirstParagraphInSection() && !m_pImpl->IsInShape()) ||
+                         m_pImpl->GetIsFirstParagraphInShape())
                         default_spacing = 0;
                     else
                         default_spacing = 280;


More information about the Libreoffice-commits mailing list