sc/source/ui/cctrl/checklistmenu.cxx | 6 ++++++ 1 file changed, 6 insertions(+)
New commits: commit dc1589f0859d5219d6f3f67748f0f0ec9af48790 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Thu Dec 9 14:09:28 2021 +0000 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Thu Dec 9 18:15:47 2021 +0100 flush pending menu close on queuing close of another Change-Id: If57442e24336d855249413fc58587b776e251f66 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126614 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/sc/source/ui/cctrl/checklistmenu.cxx b/sc/source/ui/cctrl/checklistmenu.cxx index 7c64970e0959..a4d7fbfc5fb8 100644 --- a/sc/source/ui/cctrl/checklistmenu.cxx +++ b/sc/source/ui/cctrl/checklistmenu.cxx @@ -281,6 +281,12 @@ void ScCheckListMenuControl::queueCloseSubMenu() // Stop any submenu on queue for opening. maOpenTimer.maTimer.Stop(); + // Flush any pending close so it doesn't get skipped + if (maCloseTimer.mpSubMenu) + { + maCloseTimer.mpSubMenu->EndPopupMode(); + } + maCloseTimer.mpSubMenu = maOpenTimer.mpSubMenu; maCloseTimer.mnMenuPos = maOpenTimer.mnMenuPos; maCloseTimer.maTimer.Start();