summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2019-09-06 15:57:06 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2019-09-08 09:18:40 +0200
commit481166337b8187add77c9b2be9f6e2009692f90b (patch)
tree0dfa12c86d273a246d4ebd97c537ddfc6c355369
parent7d7f024f23024374219a9485a9e1893a221a30fa (diff)
tdf#127410 Reliably copy doc print settings for MM
Commit 8385e511aa400e9bd99fd0ca1c5bd5d130277b8a ("tdf#117664: mailmerge: copy printer settings to new mailmerge document") already implemented copying print settings. Move it into 'lcl_CreateWorkingDocument' so this happens whenever a working document is created from the source document. The problem previously was that a printer settings weren't previously copied to the working copy for the if( pSourceDocSh->IsModified() ) case in 'SwDBManager::Merge'. Change-Id: I0dbe830bed0a36eb25da0d1b43a7f0d7dbc18f2e Reviewed-on: https://gerrit.libreoffice.org/78714 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
-rw-r--r--sw/source/uibase/dbui/dbmgr.cxx8
1 files changed, 4 insertions, 4 deletions
diff --git a/sw/source/uibase/dbui/dbmgr.cxx b/sw/source/uibase/dbui/dbmgr.cxx
index da555637fa6d..8513e2060c4c 100644
--- a/sw/source/uibase/dbui/dbmgr.cxx
+++ b/sw/source/uibase/dbui/dbmgr.cxx
@@ -1016,6 +1016,10 @@ static SfxObjectShell* lcl_CreateWorkingDocument(
pWorkDoc->GetIDocumentUndoRedo().DoUndo( false );
pWorkDoc->ReplaceDocumentProperties( *pSourceDoc );
+ // import print settings
+ const SwPrintData &rPrintData = pSourceDoc->getIDocumentDeviceAccess().getPrintData();
+ pWorkDoc->getIDocumentDeviceAccess().setPrintData(rPrintData);
+
if( aType == WorkingDocType::TARGET )
{
assert( !ppDBManager );
@@ -1296,10 +1300,6 @@ bool SwDBManager::MergeMailFiles(SwWrtShell* pSourceShell,
*pSourceShell, bMT_SHELL ? pSourceWindow : nullptr,
nullptr, &pTargetView, &pTargetShell, &pTargetDoc );
- // import current print settings
- const SwPrintData &rPrintData = pSourceShell->getIDocumentDeviceAccess().getPrintData();
- pTargetDoc->getIDocumentDeviceAccess().setPrintData(rPrintData);
-
if (nMaxDumpDocs)
lcl_SaveDebugDoc( xTargetDocShell.get(), "MergeDoc" );
}