Don' generate enter or leave events if the pointer is grabbed with

2004-01-28  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
	synthesize_enter_event): Don' generate enter or leave events if
	the pointer is grabbed with owner_events off, and the grab event
	mask doesn't ask for them. (#129242)

	(gdk_event_translate): Ditto for focus change events.
This commit is contained in:
Tor Lillqvist
2004-01-28 02:02:24 +00:00
committed by Tor Lillqvist
parent 5764cda28a
commit bd17551164
6 changed files with 55 additions and 12 deletions

View File

@@ -1,3 +1,12 @@
2004-01-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
synthesize_enter_event): Don' generate enter or leave events if
the pointer is grabbed with owner_events off, and the grab event
mask doesn't ask for them. (#129242)
(gdk_event_translate): Ditto for focus change events.
2004-01-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the

View File

@@ -1,3 +1,12 @@
2004-01-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
synthesize_enter_event): Don' generate enter or leave events if
the pointer is grabbed with owner_events off, and the grab event
mask doesn't ask for them. (#129242)
(gdk_event_translate): Ditto for focus change events.
2004-01-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the

View File

@@ -1,3 +1,12 @@
2004-01-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
synthesize_enter_event): Don' generate enter or leave events if
the pointer is grabbed with owner_events off, and the grab event
mask doesn't ask for them. (#129242)
(gdk_event_translate): Ditto for focus change events.
2004-01-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the

View File

@@ -1,3 +1,12 @@
2004-01-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
synthesize_enter_event): Don' generate enter or leave events if
the pointer is grabbed with owner_events off, and the grab event
mask doesn't ask for them. (#129242)
(gdk_event_translate): Ditto for focus change events.
2004-01-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the

View File

@@ -1,3 +1,12 @@
2004-01-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
synthesize_enter_event): Don' generate enter or leave events if
the pointer is grabbed with owner_events off, and the grab event
mask doesn't ask for them. (#129242)
(gdk_event_translate): Ditto for focus change events.
2004-01-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the

View File

@@ -1262,6 +1262,9 @@ synthesize_leave_event (GdkWindow *window,
{
POINT pt;
if (p_grab_window != NULL && !p_grab_owner_events && !(p_grab_mask & GDK_LEAVE_NOTIFY_MASK))
return;
if (!(((GdkWindowObject *) window)->event_mask & GDK_LEAVE_NOTIFY_MASK))
return;
@@ -1293,6 +1296,9 @@ synthesize_enter_event (GdkWindow *window,
{
POINT pt;
if (p_grab_window != NULL && !p_grab_owner_events && !(p_grab_mask & GDK_ENTER_NOTIFY_MASK))
return;
if (!(((GdkWindowObject *) window)->event_mask & GDK_ENTER_NOTIFY_MASK))
return;
@@ -2668,19 +2674,8 @@ gdk_event_translate (GdkDisplay *display,
break;
#if 0
case WM_ACTIVATE:
GDK_NOTE (EVENTS, g_print (" %s",
(msg->wParam == WA_ACTIVE ? "ACTIVE" :
(msg->wParam == WA_CLICKACTIVE ? "CLICKACTIVE" :
(msg->wParam == WA_INACTIVE ? "INACTIVE" : "???")))));
if (msg->wParam == WA_INACTIVE &&
#else
case WM_CANCELMODE:
if (
#endif
p_grab_window != NULL &&
if (p_grab_window != NULL &&
k_grab_window != NULL &&
gdk_win32_handle_table_lookup ((GdkNativeWindow) msg->lParam) == NULL)
{
@@ -2839,6 +2834,9 @@ gdk_event_translate (GdkDisplay *display,
case WM_SETFOCUS:
case WM_KILLFOCUS:
if (p_grab_window != NULL && !p_grab_owner_events && !(p_grab_mask & GDK_FOCUS_CHANGE_MASK))
break;
if (!(((GdkWindowObject *) window)->event_mask & GDK_FOCUS_CHANGE_MASK))
break;