diff -rpu gtk+-3.4.4.orig/gdk/x11/gdkeventsource.c gtk+-3.4.4/gdk/x11/gdkeventsource.c
--- gtk+-3.4.4.orig/gdk/x11/gdkeventsource.c	2012-05-16 15:20:42.000000000 +0200
+++ gtk+-3.4.4/gdk/x11/gdkeventsource.c	2012-08-20 17:49:51.634753134 +0200
@@ -142,9 +142,6 @@ handle_focus_change (GdkEventCrossing *e
 
   toplevel->has_pointer = focus_in;
 
-  if (!event->focus || toplevel->has_focus_window)
-    return;
-
   had_focus = HAS_FOCUS (toplevel);
   toplevel->has_pointer_focus = focus_in;
 
