summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorLászló Németh <nemeth@numbertext.org>2018-07-19 12:08:31 +0200
committerLászló Németh <nemeth@numbertext.org>2018-07-19 15:34:21 +0200
commitbcdebc832b272662d28035007a4796e42d1305ae (patch)
tree447c34ce8f3a375823ba9b0483a6ea7e6f34ba2a /writerfilter
parent71f7ecae6e0ef45730db4e288108cc4a3994612a (diff)
tdf#104797 DOCX change tracking: handle moveFrom and moveTo
data as deletion and insertion instead of importing them as normal (unmodified) texts (messing up document content and losing change tracking information). Change-Id: I9c0a7da83f3e8235d65d47afdb99ffe188f52704 Reviewed-on: https://gerrit.libreoffice.org/57723 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx4
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx2
2 files changed, 5 insertions, 1 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 124a2061904d..b5f3d504fb77 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -3823,13 +3823,15 @@ void DomainMapper::HandleRedline( Sprm& rSprm )
case XML_mod:
case XML_ins:
case XML_del:
+ case XML_moveTo:
+ case XML_moveFrom:
case XML_ParagraphFormat:
case XML_tableRowInsert:
case XML_tableRowDelete:
case XML_tableCellInsert:
case XML_tableCellDelete:
break;
- default: OSL_FAIL( "redline token other than mod, ins, del or table row" ); break;
+ default: OSL_FAIL( "redline token other than mod, ins, del, moveTo, moveFrom or table row" ); break;
}
m_pImpl->EndParaMarkerChange( );
m_pImpl->SetCurrentRedlineIsRead();
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index e89417e99468..a1fde6baae1b 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -1933,9 +1933,11 @@ void DomainMapper_Impl::CreateRedline(uno::Reference<text::XTextRange> const& xR
case XML_mod:
sType = getPropertyName( PROP_FORMAT );
break;
+ case XML_moveTo:
case XML_ins:
sType = getPropertyName( PROP_INSERT );
break;
+ case XML_moveFrom:
case XML_del:
sType = getPropertyName( PROP_DELETE );
break;