diff options
author | Jan Holesovsky <kendy@collabora.com> | 2013-11-20 13:39:18 +0100 |
---|---|---|
committer | Jan Holesovsky <kendy@collabora.com> | 2013-11-20 13:44:00 +0100 |
commit | 919d4a2c5977bb6066e5baf6bb960a21cd385911 (patch) | |
tree | 00800c597a846f3d8d41327e2fcb32682b247a28 /writerfilter | |
parent | 6e0aa783f4112791de336007343e064abc46324e (diff) |
Related bnc#837302: Don't introduce a redlined delete and the end of doc.
Change-Id: I5c3903a40b69867684707d33acbc92b1f80a93ec
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index cc2486b9d184..d88ca499d0fc 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -300,7 +300,21 @@ void DomainMapper_Impl::RemoveLastParagraph( ) // If this is a text on a shape, possibly the text has the trailing // newline removed already. if (xCursor->getString() == "\n") + { + uno::Reference<beans::XPropertySet> xDocProps(GetTextDocument(), uno::UNO_QUERY); + const OUString aRecordChanges("RecordChanges"); + uno::Any aPreviousValue(xDocProps->getPropertyValue(aRecordChanges)); + + // disable redlining for this operation, otherwise we might + // end up with an unwanted recorded deletion + xDocProps->setPropertyValue(aRecordChanges, uno::Any(sal_False)); + + // delete xCursor->setString(OUString()); + + // restore again + xDocProps->setPropertyValue(aRecordChanges, aPreviousValue); + } } } catch( const uno::Exception& ) |