Index: gdk/win32/gdkevents-win32.c
===================================================================
RCS file: /cvs/gnome/gtk+/gdk/win32/gdkevents-win32.c,v
retrieving revision 1.100.2.19
diff -u -2 -r1.100.2.19 gdkevents-win32.c
--- gdk/win32/gdkevents-win32.c	7 Dec 2003 06:50:41 -0000	1.100.2.19
+++ gdk/win32/gdkevents-win32.c	27 Jan 2004 03:16:25 -0000
@@ -1263,4 +1263,7 @@
   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;
@@ -1294,4 +1297,7 @@
   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;
@@ -2840,4 +2835,7 @@
     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;
