summaryrefslogtreecommitdiff
path: root/writerfilter/source
diff options
context:
space:
mode:
authorJustin Luth <justin_luth@sil.org>2021-11-04 13:28:39 +0200
committerJustin Luth <justin_luth@sil.org>2021-11-06 08:45:08 +0100
commit0ce586e1e50deeaf2ba210acc4fea08058f8b15c (patch)
treee747fbbfe6357278f05335b93a4297d6237db78f /writerfilter/source
parentb4c4ca39d7cd4cc59e01bceeb31dc75097b67acb (diff)
related tdf#136472 writerfilter: only copy even pages if used
Allowing the use of Even pages is a document-level setting. So if the document does not allow the use of an even page, although we will read it in once (in order to preserve the contents) there is no point in copying it to every inheriting page style (especially if it contains large items like images). Change-Id: I22ccb16e29c5335e50010f8a334494aaa1d45785 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124437 Tested-by: Justin Luth <justin_luth@sil.org> Reviewed-by: Justin Luth <justin_luth@sil.org>
Diffstat (limited to 'writerfilter/source')
-rw-r--r--writerfilter/source/dmapper/PropertyMap.cxx9
1 files changed, 5 insertions, 4 deletions
diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx
index 393d49839cc9..dc833c363571 100644
--- a/writerfilter/source/dmapper/PropertyMap.cxx
+++ b/writerfilter/source/dmapper/PropertyMap.cxx
@@ -957,6 +957,7 @@ void SectionPropertyMap::CopyLastHeaderFooter( bool bFirstPage, DomainMapper_Imp
SectionPropertyMap* pLastContext = rDM_Impl.GetLastSectionContext();
if ( pLastContext )
{
+ const bool bUseEvenPages = rDM_Impl.GetSettingsTable()->GetEvenAndOddHeaders();
uno::Reference< beans::XPropertySet > xPrevStyle = pLastContext->GetPageStyle( rDM_Impl,
bFirstPage );
uno::Reference< beans::XPropertySet > xStyle = GetPageStyle( rDM_Impl,
@@ -971,10 +972,10 @@ void SectionPropertyMap::CopyLastHeaderFooter( bool bFirstPage, DomainMapper_Imp
else
{
CopyHeaderFooter( xPrevStyle, xStyle,
- !m_bDefaultHeaderLinkToPrevious,
- !m_bEvenPageHeaderLinkToPrevious,
- !m_bDefaultFooterLinkToPrevious,
- !m_bEvenPageFooterLinkToPrevious );
+ !m_bDefaultHeaderLinkToPrevious,
+ !(m_bEvenPageHeaderLinkToPrevious && bUseEvenPages),
+ !m_bDefaultFooterLinkToPrevious,
+ !(m_bEvenPageFooterLinkToPrevious && bUseEvenPages));
}
}
SAL_INFO( "writerfilter", "END>>> SectionPropertyMap::CopyLastHeaderFooter()" );