sw/source/uibase/utlui/content.cxx | 12 ++++++++++++ 1 file changed, 12 insertions(+)
New commits: commit f7102dafc44a66b8ffb7b8d516fe1720fc45f8fe Author: Jim Raykowski <rayk...@gmail.com> AuthorDate: Wed Apr 13 18:44:19 2022 -0800 Commit: Jim Raykowski <rayk...@gmail.com> CommitDate: Sun Apr 17 05:19:20 2022 +0200 SwNavigator content tracking: clear selections and entry cursor when entry is not found in content tree This happens when the document cursor is positioned on table of content hyperlinks. Change-Id: I717b2dae31780b26cf5450fbea0c8f461659770c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132989 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 64a710b6f3f3..05e9eabfbdca 100644 --- a/sw/source/uibase/utlui/content.cxx +++ b/sw/source/uibase/utlui/content.cxx @@ -3257,7 +3257,11 @@ static void lcl_SelectByContentTypeAndAddress(SwContentTree* pThis, weld::TreeVi ContentTypeId nType, const void* ptr) { if (!ptr) + { + rContentTree.set_cursor(-1); + pThis->Select(); return; + } // find content type entry std::unique_ptr<weld::TreeIter> xIter(rContentTree.make_iterator()); @@ -3273,7 +3277,11 @@ static void lcl_SelectByContentTypeAndAddress(SwContentTree* pThis, weld::TreeVi } if (!bFoundEntry) + { + rContentTree.set_cursor(-1); + pThis->Select(); return; + } // assure content type entry is expanded rContentTree.expand_row(*xIter); @@ -3332,6 +3340,10 @@ static void lcl_SelectByContentTypeAndAddress(SwContentTree* pThis, weld::TreeVi return; } } + + rContentTree.set_cursor(-1); + pThis->Select(); + return; } static void lcl_SelectByContentTypeAndName(SwContentTree* pThis, weld::TreeView& rContentTree,