sw/qa/extras/uiwriter/data3/tdf61154.fodt | 132 ++++++++++++++++++++++++++++++ sw/qa/extras/uiwriter/uiwriter3.cxx | 41 +++++++++ sw/source/core/tox/txmsrt.cxx | 2 3 files changed, 174 insertions(+), 1 deletion(-)
New commits: commit 974c58aba2d7f7331d352326be8b269e540def16 Author: László Németh <nem...@numbertext.org> AuthorDate: Thu Dec 3 20:27:13 2020 +0100 Commit: Gabor Kelemen <kelemen.gab...@nisz.hu> CommitDate: Tue Mar 2 12:41:35 2021 +0100 tdf#61154 sw Table of Contents: remove tracked deletion ... part of a chapter, section etc. names also in Show Changes mode, instead of showing as normal text. Note: This problem was worse, then the case of references, because hiding tracked changes didn't fix the Table of Contents automatically, so it's better to avoid the generation of the bad mixed names, which showed also the deleted text as normal, without any visible differences (strikethrough etc.). Change-Id: Ieef8cf6e2f8bef64f99e5cb0542b7b43d8e76a27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107176 Tested-by: László Németh <nem...@numbertext.org> Reviewed-by: László Németh <nem...@numbertext.org> (cherry picked from commit daf2a7d957c829c551754871a3545495c0f76bc0) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111780 Tested-by: Gabor Kelemen <kelemen.gab...@nisz.hu> Reviewed-by: Gabor Kelemen <kelemen.gab...@nisz.hu> diff --git a/sw/qa/extras/uiwriter/data3/tdf61154.fodt b/sw/qa/extras/uiwriter/data3/tdf61154.fodt new file mode 100644 index 000000000000..18e0c0a64331 --- /dev/null +++ b/sw/qa/extras/uiwriter/data3/tdf61154.fodt @@ -0,0 +1,132 @@ +<?xml version="1.0" encoding="UTF-8"?> +<office:document xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:officeooo="http://openoffice.org/2009/office" office:version="1.2" office:mimetype="application/vnd.oasis.opendocument.text" xmlns:dc="http://purl.org/dc/elements/1.1/"> + <office:styles> + <style:style style:name="Standard" style:family="paragraph" style:class="text"/> + <style:default-style style:family="paragraph"> + <style:text-properties fo:language="en" fo:country="US"/> + </style:default-style> + </office:styles> + <office:body> + <office:text> + <text:tracked-changes text:track-changes="false"> + <text:changed-region xml:id="ct94620665978512" text:id="ct94620665978512"> + <text:insertion> + <office:change-info> + <dc:creator>X</dc:creator> + <dc:date>2020-12-03</dc:date> + </office:change-info> + </text:insertion> + </text:changed-region> + <text:changed-region xml:id="ct94620665981936" text:id="ct94620665981936"> + <text:deletion> + <office:change-info> + <dc:creator>X</dc:creator> + <dc:date>2020-12-03</dc:date> + </office:change-info> + </text:deletion> + </text:changed-region> + <text:changed-region xml:id="ct94620665960832" text:id="ct94620665960832"> + <text:deletion> + <office:change-info> + <dc:creator>X</dc:creator> + <dc:date>2020-12-03</dc:date> + </office:change-info> + </text:deletion> + </text:changed-region> + </text:tracked-changes> + <text:p text:style-name="Standard"/> + <text:table-of-content text:style-name="Sect1" text:protected="true" text:name="Table of Contents1"> + <text:table-of-content-source text:outline-level="10"> + <text:index-title-template text:style-name="Contents_20_Heading">Table of Contents</text:index-title-template> + <text:table-of-content-entry-template text:outline-level="1" text:style-name="Contents_20_1"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="2" text:style-name="Contents_20_2"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="3" text:style-name="Contents_20_3"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="4" text:style-name="Contents_20_4"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="5" text:style-name="Contents_20_5"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="6" text:style-name="Contents_20_6"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="7" text:style-name="Contents_20_7"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="8" text:style-name="Contents_20_8"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="9" text:style-name="Contents_20_9"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + <text:table-of-content-entry-template text:outline-level="10" text:style-name="Contents_20_10"> + <text:index-entry-link-start text:style-name="Index_20_Link"/> + <text:index-entry-chapter/> + <text:index-entry-text/> + <text:index-entry-tab-stop style:type="right" style:leader-char="."/> + <text:index-entry-page-number/> + <text:index-entry-link-end/> + </text:table-of-content-entry-template> + </text:table-of-content-source> + <text:index-body> + <text:index-title text:style-name="Sect1" text:name="Table of Contents1_Head"> + <text:p text:style-name="Contents_20_Heading">Table of Contents</text:p> + </text:index-title> + <text:p text:style-name="P1"><text:a xlink:type="simple" xlink:href="#__RefHeading__5574_1973640051" text:style-name="Index_20_Link" text:visited-style-name="Index_20_Link">Update me!<text:tab/>1</text:a></text:p> + </text:index-body> + </text:table-of-content> + <text:h text:style-name="Heading_20_1" text:outline-level="1"><text:bookmark-start text:name="__RefHeading__5574_1973640051"/>Text <text:change-start text:change-id="ct94620665978512"/>Inserted<text:change-end text:change-id="ct94620665978512"/><text:change-start text:change-id="ct94620665981936"/>D<text:change-end text:change-id="ct94620665981936"/><text:change-start text:change-id="ct94620665960832"/>eleted<text:bookmark-end text:name="__RefHeading__5574_1973640051"/><text:change-end text:change-id="ct94620665960832"/></text:h> + </office:text> + </office:body> +</office:document> diff --git a/sw/qa/extras/uiwriter/uiwriter3.cxx b/sw/qa/extras/uiwriter/uiwriter3.cxx index 4391bccc8ff0..245c57ebb788 100644 --- a/sw/qa/extras/uiwriter/uiwriter3.cxx +++ b/sw/qa/extras/uiwriter/uiwriter3.cxx @@ -20,6 +20,13 @@ #include <o3tl/safeint.hxx> #include <wrtsh.hxx> +#include <unotxdoc.hxx> +#include <docsh.hxx> +#include <drawdoc.hxx> +#include <dcontact.hxx> +#include <svx/svdpage.hxx> +#include <ndtxt.hxx> +#include <IDocumentRedlineAccess.hxx> namespace { @@ -64,6 +71,40 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf129382) CPPUNIT_ASSERT_EQUAL(8, getShapes()); } +CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf61154) +{ + load(DATA_DIRECTORY, "tdf61154.fodt"); + SwXTextDocument* pTextDoc = dynamic_cast<SwXTextDocument*>(mxComponent.get()); + CPPUNIT_ASSERT(pTextDoc); + + SwWrtShell* pWrtShell = pTextDoc->GetDocShell()->GetWrtShell(); + CPPUNIT_ASSERT(pWrtShell); + + SwDoc* pDoc = pTextDoc->GetDocShell()->GetDoc(); + + pWrtShell->GotoNextTOXBase(); + + // show changes + pDoc->getIDocumentRedlineAccess().SetRedlineFlags(RedlineFlags::ShowDelete + | RedlineFlags::ShowInsert); + CPPUNIT_ASSERT_MESSAGE("redlining should be off", + !pDoc->getIDocumentRedlineAccess().IsRedlineOn()); + CPPUNIT_ASSERT_MESSAGE( + "redlines should be visible", + IDocumentRedlineAccess::IsShowChanges(pDoc->getIDocumentRedlineAccess().GetRedlineFlags())); + + const SwTOXBase* pTOXBase = pWrtShell->GetCurTOX(); + pWrtShell->UpdateTableOf(*pTOXBase); + SwCursorShell* pShell(pDoc->GetEditShell()); + SwTextNode* pTitleNode = pShell->GetCursor()->GetNode().GetTextNode(); + SwNodeIndex aIdx(*pTitleNode); + + // table of contents node shouldn't contain tracked deletion + // This was "Text InsertedDeleted\t1" + SwTextNode* pNext = static_cast<SwTextNode*>(pDoc->GetNodes().GoNext(&aIdx)); + CPPUNIT_ASSERT_EQUAL(OUString("Text Inserted\t1"), pNext->GetText()); +} + CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf112342) { load(DATA_DIRECTORY, "tdf112342.docx"); diff --git a/sw/source/core/tox/txmsrt.cxx b/sw/source/core/tox/txmsrt.cxx index cc77ef66e10d..17ed528c9177 100644 --- a/sw/source/core/tox/txmsrt.cxx +++ b/sw/source/core/tox/txmsrt.cxx @@ -552,7 +552,7 @@ TextAndReading SwTOXPara::GetText_Impl(SwRootFrame const*const pLayout) const assert(nEndIndex == -1); return TextAndReading(sw::GetExpandTextMerged( pLayout, *static_cast<const SwTextNode*>(pNd), - false, false, ExpandMode(0)), + false, false, ExpandMode::HideDeletions), OUString()); } break; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits