Modified the priority of the pannning timeout
authorAlejandro G. Castro <alex@igalia.com>
Thu, 23 Jul 2009 09:04:55 +0000 (11:04 +0200)
committerAlejandro G. Castro <alex@igalia.com>
Thu, 23 Jul 2009 09:04:55 +0000 (11:04 +0200)
* hildon/hildon-pannable-area.c,
(hildon_pannable_area_check_move),
(hildon_pannable_area_button_release_cb),
(hildon_pannable_area_scroll_to): Increased the priority of the
timeout this way it is going to be handled before the events.

ChangeLog
hildon/hildon-pannable-area.c

index c8f23e9..d2be834 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2009-07-23  Alejandro G. Castro  <alex@igalia.com>
+
+       * hildon/hildon-pannable-area.c,
+       (hildon_pannable_area_check_move),
+       (hildon_pannable_area_button_release_cb),
+       (hildon_pannable_area_scroll_to): Increased the priority of the
+       timeout this way it is going to be handled before the events.
+
 2009-07-22  Claudio Saavedra  <csaavedra@igalia.com>
 
        [Release 2.1.91]
index 41cb124..d6b3f39 100644 (file)
@@ -2495,10 +2495,10 @@ hildon_pannable_area_check_move (HildonPannableArea *area,
        (priv->mode != HILDON_PANNABLE_AREA_MODE_AUTO)) {
 
       if (!priv->idle_id)
-        priv->idle_id = gdk_threads_add_timeout ((gint)
-                                                 (1000.0 / (gdouble) priv->sps),
-                                                 (GSourceFunc)
-                                                 hildon_pannable_area_timeout, area);
+        priv->idle_id = gdk_threads_add_timeout_full (GDK_PRIORITY_EVENTS-10,
+                                                      (guint)(1000.0 / (gdouble) priv->sps),
+                                                      (GSourceFunc)hildon_pannable_area_timeout,
+                                                      area, NULL);
     }
   }
 }
@@ -2744,9 +2744,10 @@ hildon_pannable_area_button_release_cb (GtkWidget * widget,
       priv->vel_y = (priv->vel_y > 0) ? priv->vmax : -priv->vmax;
 
     if (!priv->idle_id)
-      priv->idle_id = gdk_threads_add_timeout ((gint) (1000.0 / (gdouble) priv->sps),
-                                               (GSourceFunc)
-                                               hildon_pannable_area_timeout, widget);
+      priv->idle_id = gdk_threads_add_timeout_full (GDK_PRIORITY_EVENTS-10,
+                                                    (guint)(1000.0 / (gdouble) priv->sps),
+                                                    (GSourceFunc)hildon_pannable_area_timeout,
+                                                    area, NULL);
   } else {
     if (priv->center_on_child_focus_pending) {
       hildon_pannable_area_center_on_child_focus (area);
@@ -3191,9 +3192,10 @@ hildon_pannable_area_scroll_to (HildonPannableArea *area,
   hildon_pannable_area_launch_fade_timeout (area, 1.0);
 
   if (!priv->idle_id)
-    priv->idle_id = gdk_threads_add_timeout ((gint) (1000.0 / (gdouble) priv->sps),
-                                             (GSourceFunc)
-                                             hildon_pannable_area_timeout, area);
+    priv->idle_id = gdk_threads_add_timeout_full (GDK_PRIORITY_EVENTS-10,
+                                                  (guint)(1000.0 / (gdouble) priv->sps),
+                                                  (GSourceFunc)hildon_pannable_area_timeout,
+                                                  area, NULL);
 }
 
 /**