vcl/unx/gtk3/gtk3gtkinst.cxx | 6 ++++++ 1 file changed, 6 insertions(+)
New commits: commit 0324ad6d99650eccb01729f18f95c2f7f4b3ce68 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Mon Jul 22 21:37:32 2019 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Tue Jul 23 11:57:19 2019 +0200 async modal dialogs need to inc/dec parent frame modality like sync ones do, so vcl knows those frames are modal-locked, so e.g. a blank calc document with a modal async dialog open, e.g. page dialog, is not considered a candidate for reuse if soffice is instructed, e.g. via command line pipe, to open another calc document Change-Id: Id24c2ca5277e5a0e379a3e4f718514ca5e9feb03 Reviewed-on: https://gerrit.libreoffice.org/76145 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> 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; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits