summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vcl/unx/gtk3/gtk3gtkinst.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx
index 0094a2cd1627..af20ca70ca06 100644
--- a/vcl/unx/gtk3/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/gtk3gtkinst.cxx
@@ -3180,6 +3180,8 @@ public:
m_xDialogController = rDialogController;
m_aFunc = func;
+ if (get_modal())
+ m_aDialogRun.inc_modal_count();
show();
m_nResponseSignalId = g_signal_connect(m_pDialog, "response", G_CALLBACK(signalAsyncResponse), this);
@@ -3198,6 +3200,8 @@ public:
m_xRunAsyncSelf = rxSelf;
m_aFunc = func;
+ if (get_modal())
+ m_aDialogRun.inc_modal_count();
show();
m_nResponseSignalId = g_signal_connect(m_pDialog, "response", G_CALLBACK(signalAsyncResponse), this);
@@ -4847,6 +4851,8 @@ void GtkInstanceDialog::asyncresponse(gint ret)
return;
}
+ if (get_modal())
+ m_aDialogRun.dec_modal_count();
hide();
m_aFunc(GtkToVcl(ret));
m_aFunc = nullptr;