]> Pileus Git - ~andy/gtk/blobdiff - gdk/gdkevents.c
Fix broken quartz build from df3e19b
[~andy/gtk] / gdk / gdkevents.c
index d068e13c2bfb150fc8e80a319093a206f7676b01..4a9d0b965a0e73543985559673c3ea7ac9c9ff9f 100644 (file)
@@ -88,7 +88,7 @@ _gdk_event_queue_find_first (GdkDisplay *display)
   GList *tmp_list;
   GList *pending_motion = NULL;
 
-  if (display->events_paused)
+  if (display->event_pause_count > 0)
     return NULL;
 
   tmp_list = display->queued_events;
@@ -268,6 +268,7 @@ _gdk_event_queue_handle_motion_compression (GdkDisplay *display)
   GList *tmp_list;
   GList *pending_motions = NULL;
   GdkWindow *pending_motion_window = NULL;
+  GdkDevice *pending_motion_device = NULL;
 
   /* If the last N events in the event queue are motion notify
    * events for the same window, drop all but the last */
@@ -288,7 +289,12 @@ _gdk_event_queue_handle_motion_compression (GdkDisplay *display)
           pending_motion_window != event->event.motion.window)
         break;
 
+      if (pending_motion_device != NULL &&
+          pending_motion_device != event->event.motion.device)
+        break;
+
       pending_motion_window = event->event.motion.window;
+      pending_motion_device = event->event.motion.device;
       pending_motions = tmp_list;
 
       tmp_list = tmp_list->prev;