2009-01-22 Alejandro G. Castro <alex@igalia.com>
authorAlejandro G. Castro <alex@igalia.com>
Thu, 22 Jan 2009 09:48:14 +0000 (09:48 +0000)
committerAlejandro G. Castro <alex@igalia.com>
Thu, 22 Jan 2009 09:48:14 +0000 (09:48 +0000)
* src/hildon-pannable-area.c,
(hildon_pannable_axis_scroll): Avoid resize if we already have
reached overshoot_max.

ChangeLog
src/hildon-pannable-area.c

index 03dd054..bfe2d72 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,12 @@
 2009-01-22  Alejandro G. Castro  <alex@igalia.com>
 
        * src/hildon-pannable-area.c,
+       (hildon_pannable_axis_scroll): Avoid resize if we already have
+       reached overshoot_max.
+
+2009-01-22  Alejandro G. Castro  <alex@igalia.com>
+
+       * src/hildon-pannable-area.c,
        (hildon_pannable_area_init),
        (hildon_pannable_area_realize),
        (hildon_pannable_area_size_allocate),
index e7fa307..d983e34 100644 (file)
@@ -1650,6 +1650,9 @@ hildon_pannable_axis_scroll (HildonPannableArea *area,
         gtk_widget_queue_resize (GTK_WIDGET (area));
       }
     } else {
+
+      gint overshot_dist_old = *overshot_dist;
+
       if (*overshot_dist > 0) {
         *overshot_dist = CLAMP ((*overshot_dist) + inc, 0, overshoot_max);
       } else if (*overshot_dist < 0) {
@@ -1658,7 +1661,9 @@ hildon_pannable_axis_scroll (HildonPannableArea *area,
         *overshooting = 0;
         gtk_adjustment_set_value (adjust, dist);
       }
-      gtk_widget_queue_resize (GTK_WIDGET (area));
+
+      if (*overshot_dist != overshot_dist_old)
+        gtk_widget_queue_resize (GTK_WIDGET (area));
     }
   }
 }