summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2022-06-08 14:56:46 +0200
committerSzymon Kłos <szymon.klos@collabora.com>2022-06-29 08:47:27 +0200
commit55aece054255a57506b0c2921d8bc34ca7b5f610 (patch)
treef19b2fe4524ad1b02d7625664caea0cd77503497 /vcl
parentefc1b8a911599218a68992f568c98382ac77f52d (diff)
jsdialog: be sure we send close popup message when destroyed
use different m_sTypeOfJSON for popups so we can later detect popup closing Change-Id: Id0086815317011b142b49f4e1421b76e1e663358 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135497 Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136594 Tested-by: Jenkins
Diffstat (limited to 'vcl')
-rw-r--r--vcl/jsdialog/jsdialogbuilder.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index 25885ce11aee..810425a7cf40 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -512,7 +512,10 @@ JSInstanceBuilder::JSInstanceBuilder(weld::Widget* pParent, const OUString& rUIR
{
// when it is a popup we initialize sender in weld_popover
if (bPopup)
+ {
+ m_sTypeOfJSON = "popup";
return;
+ }
vcl::Window* pRoot = m_xBuilder->get_widget_root();
@@ -659,6 +662,9 @@ JSInstanceBuilder::CreateFormulabarBuilder(vcl::Window* pParent, const OUString&
JSInstanceBuilder::~JSInstanceBuilder()
{
+ if (m_sTypeOfJSON == "popup")
+ sendClosePopup(m_nWindowId);
+
if (m_aWindowToRelease)
{
m_aWindowToRelease->ReleaseLOKNotifier();