3bda1a4
From 0ee0e8010f986b67d696111ff4ea269ccf904aba Mon Sep 17 00:00:00 2001
3bda1a4
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
3bda1a4
Date: Mon, 14 Mar 2016 12:50:56 +0000
3bda1a4
Subject: [PATCH] Resolves: tdf#98638 sometimes menu grab doesn't take
3bda1a4
3bda1a4
due to older timestamp vs earlier grab. Which suggests we should probably use
3bda1a4
GDK_CURRENT_TIME everywhere or (probably better) use gtk_get_current_event_time
3bda1a4
everywhere
3bda1a4
3bda1a4
Change-Id: Ie04ab254b9fea423143cc9a129d2eecb683ed300
3bda1a4
---
3bda1a4
 vcl/unx/gtk3/gtk3gtkframe.cxx | 8 ++++----
3bda1a4
 1 file changed, 4 insertions(+), 4 deletions(-)
3bda1a4
3bda1a4
diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx
3bda1a4
index bdd5499..742f812 100644
3bda1a4
--- a/vcl/unx/gtk3/gtk3gtkframe.cxx
3bda1a4
+++ b/vcl/unx/gtk3/gtk3gtkframe.cxx
3bda1a4
@@ -2078,9 +2078,9 @@ void GtkSalFrame::grabPointer( bool bGrab, bool bOwnerEvents )
3bda1a4
     GdkDeviceManager* pDeviceManager = gdk_display_get_device_manager(getGdkDisplay());
3bda1a4
     GdkDevice* pPointer = gdk_device_manager_get_client_pointer(pDeviceManager);
3bda1a4
     if (bGrab)
3bda1a4
-        gdk_device_grab(pPointer, widget_get_window(getMouseEventWidget()), GDK_OWNERSHIP_NONE, bOwnerEvents, (GdkEventMask) nMask, m_pCurrentCursor, GDK_CURRENT_TIME);
3bda1a4
+        gdk_device_grab(pPointer, widget_get_window(getMouseEventWidget()), GDK_OWNERSHIP_NONE, bOwnerEvents, (GdkEventMask) nMask, m_pCurrentCursor, gtk_get_current_event_time());
3bda1a4
     else
3bda1a4
-        gdk_device_ungrab(pPointer, GDK_CURRENT_TIME);
3bda1a4
+        gdk_device_ungrab(pPointer, gtk_get_current_event_time());
3bda1a4
 }
3bda1a4
 
3bda1a4
 void GtkSalFrame::grabKeyboard( bool bGrab )
3bda1a4
@@ -2098,11 +2098,11 @@ void GtkSalFrame::grabKeyboard( bool bGrab )
3bda1a4
     if (bGrab)
3bda1a4
     {
3bda1a4
         gdk_device_grab(pKeyboard, widget_get_window(m_pWindow), GDK_OWNERSHIP_NONE,
3bda1a4
-                        true, (GdkEventMask)(GDK_KEY_PRESS | GDK_KEY_RELEASE), nullptr, GDK_CURRENT_TIME);
3bda1a4
+                        true, (GdkEventMask)(GDK_KEY_PRESS | GDK_KEY_RELEASE), nullptr, gtk_get_current_event_time());
3bda1a4
     }
3bda1a4
     else
3bda1a4
     {
3bda1a4
-        gdk_device_ungrab(pKeyboard, GDK_CURRENT_TIME);
3bda1a4
+        gdk_device_ungrab(pKeyboard, gtk_get_current_event_time());
3bda1a4
     }
3bda1a4
 }
3bda1a4
 
3bda1a4
-- 
3bda1a4
2.7.1
3bda1a4