summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-01-19 13:22:10 +0000
committerCaolán McNamara <caolanm@redhat.com>2016-01-19 13:24:28 +0000
commit011ce226e89ecabaf621603d692547c88061eaba (patch)
tree5fe02af20867f73f4c5b8b63d29a7bdb443d8925
parente187217222ba3be497f45a7d1e72a1a25b2fb9d6 (diff)
Resolves: tdf#99604 ungrab modal dialogs
Change-Id: I6735913c371968745da3ad6bf61e6ae3287c19a6
-rw-r--r--vcl/unx/gtk3/gtk3gtkframe.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx
index 6012f58f2650..803542d69cf0 100644
--- a/vcl/unx/gtk3/gtk3gtkframe.cxx
+++ b/vcl/unx/gtk3/gtk3gtkframe.cxx
@@ -2367,6 +2367,13 @@ void GtkSalFrame::SetModal(bool bModal)
if (!m_pWindow)
return;
gtk_window_set_modal(GTK_WINDOW(m_pWindow), bModal);
+ if (bModal)
+ {
+ //gtk_window_set_modal bTrue adds a grab, so ungrab here. Quite
+ //possibly we should alternatively call grab_add grab_ungrab on
+ //show/hide of menus ?
+ gtk_grab_remove(m_pWindow);
+ }
}
gboolean GtkSalFrame::signalTooltipQuery(GtkWidget*, gint /*x*/, gint /*y*/,