summaryrefslogtreecommitdiff
path: root/sw/source/core/text/redlnitr.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/core/text/redlnitr.cxx')
-rw-r--r--sw/source/core/text/redlnitr.cxx12
1 files changed, 10 insertions, 2 deletions
diff --git a/sw/source/core/text/redlnitr.cxx b/sw/source/core/text/redlnitr.cxx
index 44fa965d8387..0640001dddb0 100644
--- a/sw/source/core/text/redlnitr.cxx
+++ b/sw/source/core/text/redlnitr.cxx
@@ -55,6 +55,7 @@ CheckParaRedlineMerge(SwTextFrame & rFrame, SwTextNode & rTextNode)
return nullptr;
}
bool bHaveRedlines(false);
+ std::vector<SwTextNode *> nodes{ &rTextNode };
std::vector<sw::Extent> extents;
OUStringBuffer mergedText;
SwTextNode const* pParaPropsNode(nullptr);
@@ -92,6 +93,7 @@ CheckParaRedlineMerge(SwTextFrame & rFrame, SwTextNode & rTextNode)
}
pNode = pEnd->nNode.GetNode().GetTextNode();
assert(pNode);
+ nodes.push_back(pNode);
pNode->SetRedlineMergeFlag(SwNode::Merge::NonFirst);
}
nLastEnd = pEnd->nContent.GetIndex();
@@ -115,8 +117,14 @@ CheckParaRedlineMerge(SwTextFrame & rFrame, SwTextNode & rTextNode)
assert(!mergedText.isEmpty());
pParaPropsNode = extents.begin()->pNode; // para props from first node that isn't empty
}
- return o3tl::make_unique<sw::MergedPara>(std::move(extents),
- mergedText.makeStringAndClear(), pParaPropsNode, &rTextNode);
+ auto pRet(o3tl::make_unique<sw::MergedPara>(rFrame, std::move(extents),
+ mergedText.makeStringAndClear(), pParaPropsNode, &rTextNode));
+ for (SwTextNode * pTmp : nodes)
+ {
+ pRet->listener.StartListening(pTmp);
+ }
+ rFrame.EndListeningAll();
+ return pRet;
}
} // namespace sw