[gtk+] Sent button events don't cause passive grabs
- From: Alexander Larsson <alexl src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gtk+] Sent button events don't cause passive grabs
- Date: Mon, 28 Sep 2009 13:32:13 +0000 (UTC)
commit e81501ebea4cceffce2890519807b0c243fec0a3
Author: Alexander Larsson <alexl redhat com>
Date: Mon Sep 28 15:29:37 2009 +0200
Sent button events don't cause passive grabs
Don't track sent button events as causing or removing
passive grabs.
gdk/gdkwindow.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 93024ac..4130b52 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -9967,6 +9967,7 @@ proxy_button_event (GdkEvent *source_event,
&toplevel_x, &toplevel_y);
if (type == GDK_BUTTON_PRESS &&
+ !source_event->any.send_event &&
_gdk_display_has_pointer_grab (display, serial) == NULL)
{
pointer_window =
@@ -10176,6 +10177,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
if (_gdk_native_windows)
{
if (event->type == GDK_BUTTON_PRESS &&
+ !event->any.send_event &&
_gdk_display_has_pointer_grab (display, serial) == NULL)
{
_gdk_display_add_pointer_grab (display,
@@ -10189,7 +10191,8 @@ _gdk_windowing_got_event (GdkDisplay *display,
_gdk_display_pointer_grab_update (display,
serial);
}
- if (event->type == GDK_BUTTON_RELEASE)
+ if (event->type == GDK_BUTTON_RELEASE &&
+ !event->any.send_event)
{
button_release_grab =
_gdk_display_has_pointer_grab (display, serial);
@@ -10312,7 +10315,8 @@ _gdk_windowing_got_event (GdkDisplay *display,
unlink_event = proxy_button_event (event,
serial);
- if (event->type == GDK_BUTTON_RELEASE)
+ if (event->type == GDK_BUTTON_RELEASE &&
+ !event->any.send_event)
{
button_release_grab =
_gdk_display_has_pointer_grab (display, serial);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]