diff options
author | Justin Luth <justin_luth@sil.org> | 2021-04-30 13:25:54 +0200 |
---|---|---|
committer | Justin Luth <justin_luth@sil.org> | 2021-07-09 07:24:16 +0200 |
commit | a45876adc36a3764cfeadb1737e5dcfb7ffee9da (patch) | |
tree | 0ecc41d67867d4b47a79065b05a17fd90b41e156 /writerfilter/source | |
parent | 92a407b7f90a98704a238c5ffa3a3491eaf3263a (diff) |
tdf#141964 writerfilter CN: listLevel 9 means no numbering
and so does numId 0.
Wow - this is REALLY FUNDAMENTAL stuff, and we weren't
handling it? Did anyone look at any of the specs
when they were implementing import of numbering?
Change-Id: I3ea20baccfae34751328558a873ccdcfda0de0a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115258
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth@sil.org>
Diffstat (limited to 'writerfilter/source')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index 74550ec80245..01ea5230ecfa 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -1548,14 +1548,15 @@ void DomainMapper_Impl::finishParagraph( const PropertyMapPtr& pPropertyMap, con if (nListLevel == -1 && nListId > 0) nListLevel = 0; - if ( !bNoNumbering && !isNumberingViaRule && nListLevel >= 0 ) + if (!bNoNumbering && !isNumberingViaRule && nListLevel >= 0 && nListLevel < 9) pParaContext->Insert( PROP_NUMBERING_LEVEL, uno::makeAny(nListLevel), false ); auto const pList(GetListTable()->GetList(nListId)); if (pList && nListId >= 0 && !pParaContext->isSet(PROP_NUMBERING_STYLE_NAME)) { - if ( bNoNumbering ) - pParaContext->Insert( PROP_NUMBERING_STYLE_NAME, uno::makeAny(OUString()) ); + // ListLevel 9 means Body Level/no numbering. numId 0 means no numbering. + if (bNoNumbering || nListLevel == 9 || (!isNumberingViaRule && !nListId)) + pParaContext->Insert(PROP_NUMBERING_STYLE_NAME, uno::makeAny(OUString()), true); else if ( !isNumberingViaRule ) { isNumberingViaStyle = true; |