scale: Fix mark positioning at the left/top edge

We were failing to take the widget allocation.x/y into account
when deciding whether we need to push in the mark.

https://bugzilla.gnome.org/show_bug.cgi?id=765922
This commit is contained in:
Matthias Clasen 2016-05-05 15:17:56 -04:00
parent 6b64c31f6d
commit 27210f523b

View File

@ -480,9 +480,13 @@ gtk_scale_allocate_marks (GtkCssGadget *gadget,
orientation = gtk_orientable_get_orientation (GTK_ORIENTABLE (scale));
_gtk_range_get_stop_positions (GTK_RANGE (scale), &marks);
min_pos_before = min_pos_after = 0;
gtk_widget_get_allocation (widget, &widget_alloc);
if (orientation == GTK_ORIENTATION_HORIZONTAL)
min_pos_before = min_pos_after = widget_alloc.x;
else
min_pos_before = min_pos_after = widget_alloc.y;
for (m = priv->marks, i = 0; m; m = m->next, i++)
{
GtkScaleMark *mark = m->data;