sc/source/ui/dbgui/validate.cxx | 8 ++++++++ sc/source/ui/inc/validate.hxx | 2 ++ 2 files changed, 10 insertions(+)
New commits: commit 3dd1869e040b8a114b064aaf0fdb04d9571e2d34 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue Nov 3 14:04:37 2020 +0000 Commit: Gabor Kelemen <gabor.kelemen.ext...@allotropia.de> CommitDate: Mon May 1 12:47:57 2023 +0200 Resolves: tdf#137215 restore original modality before dialog loop ends Change-Id: I83467e28534b781c51b8d75a023e41f3c6a03903 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105214 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> diff --git a/sc/source/ui/dbgui/validate.cxx b/sc/source/ui/dbgui/validate.cxx index 41bc913db911..73e04cc44706 100644 --- a/sc/source/ui/dbgui/validate.cxx +++ b/sc/source/ui/dbgui/validate.cxx @@ -95,6 +95,14 @@ ScValidationDlg::ScValidationDlg(weld::Window* pParent, const SfxItemSet* pArgSe AddTabPage("erroralert", ScTPValidationError::Create, nullptr); } +void ScValidationDlg::EndDialog() +{ + // tdf#137215 ensure original modalality of true is restored before dialog loop ends + if (m_bOwnRefHdlr) + RemoveRefDlg(true); + ScValidationDlgBase::EndDialog(); +} + ScValidationDlg::~ScValidationDlg() { if (m_bOwnRefHdlr) diff --git a/sc/source/ui/inc/validate.hxx b/sc/source/ui/inc/validate.hxx index 2c562717f921..744de1a843bd 100644 --- a/sc/source/ui/inc/validate.hxx +++ b/sc/source/ui/inc/validate.hxx @@ -182,6 +182,8 @@ public: (m_pHandler->*m_pSetReferenceHdl)( rRef, pDoc ); } + virtual void EndDialog() override; + virtual void SetActive() override { if ( m_pHandler && m_pSetActiveHdl )