summaryrefslogtreecommitdiff
path: root/sfx2/source/dialog/basedlgs.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2/source/dialog/basedlgs.cxx')
-rw-r--r--sfx2/source/dialog/basedlgs.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/sfx2/source/dialog/basedlgs.cxx b/sfx2/source/dialog/basedlgs.cxx
index 1f10f73ce5e4..190fea086ba9 100644
--- a/sfx2/source/dialog/basedlgs.cxx
+++ b/sfx2/source/dialog/basedlgs.cxx
@@ -197,6 +197,7 @@ void SfxModelessDialogController::Close()
m_pBindings->GetDispatcher_Impl()->ExecuteList(
m_xImpl->pMgr->GetType(),
SfxCallMode::RECORD|SfxCallMode::SYNCHRON, { &aValue } );
+ SfxDialogController::Close();
}
SfxDialogController::SfxDialogController(weld::Widget* pParent, const OUString& rUIFile,
@@ -210,6 +211,12 @@ SfxDialogController::SfxDialogController(weld::Widget* pParent, const OUString&
m_xDialog->connect_container_focus_changed(LINK(this, SfxDialogController, FocusChangeHdl));
}
+void SfxDialogController::Close()
+{
+ // tdf3146571 ignore focus changes after we've closed
+ m_xDialog->connect_container_focus_changed(Link<weld::Container&, void>());
+}
+
IMPL_STATIC_LINK_NOARG(SfxDialogController, InstallLOKNotifierHdl, void*, vcl::ILibreOfficeKitNotifier*)
{
return SfxViewShell::Current();