[Libreoffice-commits] core.git: sc/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Tue Jul 13 08:00:16 UTC 2021
sc/source/ui/cctrl/checklistmenu.cxx | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
New commits:
commit d1b034f9c480ada0bf7d5d2cfc18d1ef12409bae
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Mon Jul 12 17:34:11 2021 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Tue Jul 13 09:59:42 2021 +0200
move freeze/thaw so we don't select while frozen
Change-Id: I4f4b3e5ac3e7e842726780f9c773389f7c39ce7f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118787
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sc/source/ui/cctrl/checklistmenu.cxx b/sc/source/ui/cctrl/checklistmenu.cxx
index 4b8ce2e4e114..4a6c0dea209c 100644
--- a/sc/source/ui/cctrl/checklistmenu.cxx
+++ b/sc/source/ui/cctrl/checklistmenu.cxx
@@ -703,12 +703,12 @@ IMPL_LINK_NOARG(ScCheckListMenuControl, EdModifyHdl, weld::Entry&, void)
size_t n = maMembers.size();
size_t nSelCount = 0;
- mpChecks->freeze();
-
// This branch is the general case, the other is an optimized variant of
// this one where we can take advantage of knowing we have no hierarchy
if (mbHasDates)
{
+ mpChecks->freeze();
+
bool bSomeDateDeletes = false;
for (size_t i = 0; i < n; ++i)
@@ -767,13 +767,19 @@ IMPL_LINK_NOARG(ScCheckListMenuControl, EdModifyHdl, weld::Entry&, void)
updateMemberParents(nullptr, i);
}
}
+
+ mpChecks->thaw();
}
else
{
+ mpChecks->freeze();
+
// when there are a lot of rows, it is cheaper to simply clear the tree and either
// re-initialise or just insert the filtered lines
mpChecks->clear();
+ mpChecks->thaw();
+
if (bSearchTextEmpty)
nSelCount = initMembers();
else
@@ -806,9 +812,6 @@ IMPL_LINK_NOARG(ScCheckListMenuControl, EdModifyHdl, weld::Entry&, void)
}
}
-
- mpChecks->thaw();
-
if ( nSelCount == n )
mxChkToggleAll->set_state( TRISTATE_TRUE );
else if ( nSelCount == 0 )
More information about the Libreoffice-commits
mailing list