summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-06-23 12:48:12 +0100
committerMichael Stahl <mstahl@redhat.com>2017-06-23 22:13:22 +0200
commitc50ad28cea076d44c863c2b554d909235554cba0 (patch)
treeef0f59669f44107edf043091ac6a9535e1620bd9
parentccd08a5a8fbf3fd4ca344181a700764d5339589d (diff)
Resolves: tdf#108705 remove grabs on widget before destroying it
Change-Id: If02a0b4340788db638c74b98e855258145643452 Reviewed-on: https://gerrit.libreoffice.org/39166 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
-rw-r--r--vcl/unx/gtk3/gtk3gtkframe.cxx5
1 files changed, 5 insertions, 0 deletions
diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx
index 54574dd1a38c..9b56adc2bdf5 100644
--- a/vcl/unx/gtk3/gtk3gtkframe.cxx
+++ b/vcl/unx/gtk3/gtk3gtkframe.cxx
@@ -838,6 +838,11 @@ GtkSalFrame::~GtkSalFrame()
delete m_pIMHandler;
+ //tdf#108705 remove grabs on event widget before
+ //destroying event widget
+ while (m_nGrabLevel)
+ removeGrabLevel();
+
GtkWidget *pEventWidget = getMouseEventWidget();
for (auto handler_id : m_aMouseSignalIds)
g_signal_handler_disconnect(G_OBJECT(pEventWidget), handler_id);