diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-11-03 14:04:37 +0000 |
---|---|---|
committer | Adolfo Jayme Barrientos <fitojb@ubuntu.com> | 2020-11-04 14:20:50 +0100 |
commit | 022c11602d2101b49724b5cf104cc6c70b5a5e4b (patch) | |
tree | eb3b6dac71975394b9efd2823b4b003f6c526ae7 /sc | |
parent | a273f191b24c9f6d82d979fd1488b9dcd78977e6 (diff) |
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 <fitojb@ubuntu.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/ui/dbgui/validate.cxx | 8 | ||||
-rw-r--r-- | sc/source/ui/inc/validate.hxx | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/sc/source/ui/dbgui/validate.cxx b/sc/source/ui/dbgui/validate.cxx index 0c1f63cabdfd..63862bcbacb9 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 bb746f522630..3f64e1485f73 100644 --- a/sc/source/ui/inc/validate.hxx +++ b/sc/source/ui/inc/validate.hxx @@ -176,6 +176,8 @@ public: void SetModal(bool bModal) { m_xDialog->set_modal(bModal); } + virtual void EndDialog() override; + virtual void SetReference( const ScRange& rRef, ScDocument& rDoc ) override { if ( m_pHandler && m_pSetReferenceHdl ) |