sw/source/uibase/utlui/content.cxx |   12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

New commits:
commit 2981e49878c967220854a5f7fbeff99b61645a4b
Author:     Jim Raykowski <rayk...@gmail.com>
AuthorDate: Thu Mar 25 17:59:15 2021 -0800
Commit:     Jim Raykowski <rayk...@gmail.com>
CommitDate: Sat Mar 27 08:22:59 2021 +0100

    Sw Navigator: Improve chapter delete
    
    by selecting to the start of the next outline node vs selecting to end
    of the last paragraph before the next outline node.
    
    Change-Id: I5a51ff5c1ced8d9ab0aee7c7b38fc5235027f384
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113140
    Tested-by: Jenkins
    Reviewed-by: Jim Raykowski <rayk...@gmail.com>

diff --git a/sw/source/uibase/utlui/content.cxx 
b/sw/source/uibase/utlui/content.cxx
index 265f2b28dc90..abce62691149 100644
--- a/sw/source/uibase/utlui/content.cxx
+++ b/sw/source/uibase/utlui/content.cxx
@@ -4027,10 +4027,11 @@ void SwContentTree::ExecuteContextMenuAction(const 
OString& rSelectedPopupEntry)
 
 void SwContentTree::DeleteOutlineSelections()
 {
-    m_pActiveShell->StartAction();
-    m_pActiveShell->EnterAddMode();
     auto nChapters(0);
 
+    m_pActiveShell->StartAction();
+
+    m_pActiveShell->EnterAddMode();
     m_xTreeView->selected_foreach([this, &nChapters](weld::TreeIter& rEntry){
         ++nChapters;
         if (m_xTreeView->iter_has_child(rEntry) &&
@@ -4038,20 +4039,21 @@ void SwContentTree::DeleteOutlineSelections()
         {
             nChapters += m_xTreeView->iter_n_children(rEntry);
         }
-        m_pActiveShell->SttSelect();
         SwOutlineNodes::size_type nActPos = 
reinterpret_cast<SwOutlineContent*>(m_xTreeView->get_id(rEntry).toInt64())->GetOutlinePos();
+        m_pActiveShell->SttSelect();
         m_pActiveShell->MakeOutlineSel(nActPos, nActPos, 
!m_xTreeView->get_row_expanded(rEntry), false); // select children if not 
expanded
+        m_pActiveShell->Right(CRSR_SKIP_CHARS, true, 1, false);
         m_pActiveShell->EndSelect();
         return false;
     });
     m_pActiveShell->LeaveAddMode();
+
     SwRewriter aRewriter;
     aRewriter.AddRule(UndoArg1, SwResId(STR_CHAPTERS, nChapters));
     m_pActiveShell->StartUndo(SwUndoId::DELETE, &aRewriter);
-    m_pActiveShell->SetTextFormatColl(nullptr);
     m_pActiveShell->Delete();
-    m_pActiveShell->ClearMark();
     m_pActiveShell->EndUndo();
+
     m_pActiveShell->EndAction();
 }
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to