sw/source/ui/inc/bookmark.hxx  |    1 +
 sw/source/ui/misc/bookmark.cxx |    8 ++++++++
 2 files changed, 9 insertions(+)

New commits:
commit cdcaa50e60c8abbbb84b460b8ac6671fc42b9d50
Author:     Jim Raykowski <rayk...@gmail.com>
AuthorDate: Sat Feb 1 21:19:24 2025 -0900
Commit:     Jim Raykowski <rayk...@gmail.com>
CommitDate: Sun Feb 9 01:59:18 2025 +0100

    resolves tdf#164985 Incorrect bookmarks list in bookmark dialog after
    
    column sort followed by delete
    
    Change-Id: Id0ff9213b7a09faf4ed490a216e85ac7ec277af2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181006
    Tested-by: Jenkins
    Reviewed-by: Jim Raykowski <rayk...@gmail.com>

diff --git a/sw/source/ui/inc/bookmark.hxx b/sw/source/ui/inc/bookmark.hxx
index 1692e4654ce7..57f59e4b841d 100644
--- a/sw/source/ui/inc/bookmark.hxx
+++ b/sw/source/ui/inc/bookmark.hxx
@@ -78,6 +78,7 @@ public:
     }
     void start_editing(weld::TreeIter const& rIter) { 
m_xControl->start_editing(rIter); }
     void make_sorted() { m_xControl->make_sorted(); }
+    void make_unsorted() { m_xControl->make_unsorted(); }
     bool get_sort_order() const { return m_xControl->get_sort_order(); }
     void set_sort_order(bool bAscending) { 
m_xControl->set_sort_order(bAscending); }
     int get_sort_column() const { return m_xControl->get_sort_column(); }
diff --git a/sw/source/ui/misc/bookmark.cxx b/sw/source/ui/misc/bookmark.cxx
index f2e8b09427e4..2ff680e033ff 100644
--- a/sw/source/ui/misc/bookmark.cxx
+++ b/sw/source/ui/misc/bookmark.cxx
@@ -348,6 +348,10 @@ void SwInsertBookmarkDlg::PopulateTable()
     m_aTableBookmarks.clear();
     m_xBookmarksBox->clear();
 
+    int nSortColumn = m_xBookmarksBox->get_sort_column();
+    if (nSortColumn != -1)
+        m_xBookmarksBox->make_unsorted();
+
     m_rSh.StartAllAction();
     IDocumentMarkAccess* const pMarkAccess = m_rSh.getIDocumentMarkAccess();
     for (auto ppBookmark = pMarkAccess->getBookmarksBegin();
@@ -360,6 +364,10 @@ void SwInsertBookmarkDlg::PopulateTable()
         }
     }
     m_rSh.EndAllAction();
+
+    if (nSortColumn != -1)
+        m_xBookmarksBox->make_sorted();
+
     m_nLastBookmarksCount = pMarkAccess->getBookmarksCount();
 }
 

Reply via email to