diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-09-28 14:03:25 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-09-28 14:03:45 +0200 |
commit | 56341e5d496f576dc45fe8e6c44831d780fecb73 (patch) | |
tree | 2eea0f0118457dab89cc039dfa3da19a6eb5c742 | |
parent | 827e78fcb254bb1535a9af5b2767d6baea45372f (diff) |
bnc#939996 tdf#93919 DOCX import: fix left-from-style and first-from-direct
With this, <w:ind w:hanging="..."/> as direct paragraph formatting and
<w:ind w:left="..." w:hanging="..."/> as a numbering level formatting is
properly merged, i.e. w:left is not lost, defaulting to 0.
Change-Id: If5534fbd9ee6d41139b0ed3a3df9d0cc5aad3239
-rw-r--r-- | sw/qa/extras/ooxmlimport/data/tdf93919.docx | bin | 0 -> 15336 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 6 | ||||
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper.cxx | 5 |
3 files changed, 11 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlimport/data/tdf93919.docx b/sw/qa/extras/ooxmlimport/data/tdf93919.docx Binary files differnew file mode 100644 index 000000000000..c7454690c844 --- /dev/null +++ b/sw/qa/extras/ooxmlimport/data/tdf93919.docx diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx index b85af749d8b3..20e793889db1 100644 --- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx +++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx @@ -2846,6 +2846,12 @@ DECLARE_OOXMLIMPORT_TEST(testTdf90153, "tdf90153.docx") CPPUNIT_ASSERT_EQUAL(text::TextContentAnchorType_AT_CHARACTER, getProperty<text::TextContentAnchorType>(getShape(1), "AnchorType")); } +DECLARE_OOXMLIMPORT_TEST(testTdf93919, "tdf93919.docx") +{ + // This was 0, left margin was not inherited from the list style. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1270), getProperty<sal_Int32>(getParagraph(1), "ParaLeftMargin")); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index bf9eb21caf40..cab16efb7f97 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -480,6 +480,11 @@ void DomainMapper::lcl_attribute(Id nName, Value & val) sal_Int32 nValue = ConversionHelper::convertTwipToMM100( nIntValue ); m_pImpl->GetTopContext()->Insert( PROP_PARA_FIRST_LINE_INDENT, uno::makeAny( - nValue )); + + // See above, need to inherit left margin from list style when first is set. + sal_Int32 nParaLeftMargin = m_pImpl->getCurrentNumberingProperty("IndentAt"); + if (nParaLeftMargin != 0) + m_pImpl->GetTopContext()->Insert(PROP_PARA_LEFT_MARGIN, uno::makeAny(nParaLeftMargin), /*bOverwrite=*/false); } break; case NS_ooxml::LN_CT_Ind_firstLine: |