GtkRange: Redraw if GtkRange is a GtkScale and value is drawn.

* gtk/gtkrange.c: (gtk_range_adjustment_value_change):
Queue the draw also if the range is a scale and the value is drawn,
fixing bug #533946 (Markus Brinkmann), when two HScales use one
adjustment.
This commit is contained in:
Jan Arne Petersen 2010-05-18 08:46:42 +02:00 committed by Murray Cumming
parent 735bee47be
commit 4704a239ac

View File

@ -35,6 +35,7 @@
#include "gtkmarshalers.h" #include "gtkmarshalers.h"
#include "gtkorientable.h" #include "gtkorientable.h"
#include "gtkrange.h" #include "gtkrange.h"
#include "gtkscale.h"
#include "gtkscrollbar.h" #include "gtkscrollbar.h"
#include "gtkprivate.h" #include "gtkprivate.h"
#include "gtkintl.h" #include "gtkintl.h"
@ -2618,7 +2619,8 @@ gtk_range_adjustment_value_changed (GtkAdjustment *adjustment,
gtk_range_calc_layout (range, range->adjustment->value); gtk_range_calc_layout (range, range->adjustment->value);
/* now check whether the layout changed */ /* now check whether the layout changed */
if (layout_changed (range->layout, &layout)) if (layout_changed (range->layout, &layout) ||
(GTK_IS_SCALE (range) && GTK_SCALE (range)->draw_value))
{ {
gtk_widget_queue_draw (GTK_WIDGET (range)); gtk_widget_queue_draw (GTK_WIDGET (range));
/* setup a timer to ensure the range isn't lagging too much behind the scroll position */ /* setup a timer to ensure the range isn't lagging too much behind the scroll position */