[Libreoffice-commits] core.git: sw/source

Michael Stahl (via logerrit) logerrit at kemper.freedesktop.org
Wed Oct 14 13:26:33 UTC 2020


 sw/source/core/doc/DocumentContentOperationsManager.cxx |   10 ----------
 sw/source/uibase/wrtsh/wrtsh1.cxx                       |    4 ++++
 2 files changed, 4 insertions(+), 10 deletions(-)

New commits:
commit be4616d6b49b8c9cf1a90b212b24ead3dabcab6c
Author:     Michael Stahl <Michael.Stahl at cib.de>
AuthorDate: Wed Oct 14 12:42:54 2020 +0200
Commit:     Michael Stahl <michael.stahl at cib.de>
CommitDate: Wed Oct 14 15:25:47 2020 +0200

    tdf#135260 sw_redlinehide: fix insert-with-delete differently
    
    The problem with the fix for tdf#127635 is that now the cursor doesn't
    move left on backspace if change tracking is on.
    
    (regression from 398ba26077f9029bdf6f7378bfc9ce8376b6f02d)
    
    Revert that and fix the autocorrect position in SwWrtShell::Insert()
    instead.
    
    Change-Id: I5989a589b654fc6e5ba3dd66922af15eff758ecc
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104280
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <michael.stahl at cib.de>

diff --git a/sw/source/core/doc/DocumentContentOperationsManager.cxx b/sw/source/core/doc/DocumentContentOperationsManager.cxx
index 52b67a9c3768..4c0e7530c311 100644
--- a/sw/source/core/doc/DocumentContentOperationsManager.cxx
+++ b/sw/source/core/doc/DocumentContentOperationsManager.cxx
@@ -2013,11 +2013,6 @@ void DocumentContentOperationsManager::DeleteRange( SwPaM & rPam )
 {
     lcl_DoWithBreaks( *this, rPam, &DocumentContentOperationsManager::DeleteRangeImpl );
 
-    if (m_rDoc.getIDocumentRedlineAccess().IsRedlineOn())
-    {
-        rPam.Normalize(false); // tdf#127635 put point at the end of deletion
-    }
-
     if (!m_rDoc.getIDocumentRedlineAccess().IsIgnoreRedline()
         && !m_rDoc.getIDocumentRedlineAccess().GetRedlineTable().empty())
     {
@@ -2194,11 +2189,6 @@ bool DocumentContentOperationsManager::DeleteAndJoin( SwPaM & rPam,
                 : &DocumentContentOperationsManager::DeleteAndJoinImpl,
                 bForceJoinNext );
 
-    if (m_rDoc.getIDocumentRedlineAccess().IsRedlineOn())
-    {
-        rPam.Normalize(false); // tdf#127635 put point at the end of deletion
-    }
-
     return ret;
 }
 
diff --git a/sw/source/uibase/wrtsh/wrtsh1.cxx b/sw/source/uibase/wrtsh/wrtsh1.cxx
index 60ac6cca4cc6..69fad015bbde 100644
--- a/sw/source/uibase/wrtsh/wrtsh1.cxx
+++ b/sw/source/uibase/wrtsh/wrtsh1.cxx
@@ -228,7 +228,11 @@ void SwWrtShell::Insert( const OUString &rStr )
 
         StartUndo(SwUndoId::REPLACE, &aRewriter);
         bStarted = true;
+        Push();
         bDeleted = DelRight();
+        Pop(SwCursorShell::PopMode::DeleteCurrent); // Restore selection (if tracking changes)
+        NormalizePam(false); // tdf#127635 put point at the end of deletion
+        ClearMark();
     }
 
     bCallIns ?


More information about the Libreoffice-commits mailing list