diff --git a/ChangeLog b/ChangeLog index 73b69b76ba..7d45d9888a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2006-01-08 Matthias Clasen + * gtk/gtklabel.c (get_layout_location): Fix label alignment + when width-chars is set. (#326098, Benjamin Otte) + * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the single-rectangle case. (#326127, Benjamin Berg) (gdk_region_copy): Use miRegionCopy() here. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 73b69b76ba..7d45d9888a 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,5 +1,8 @@ 2006-01-08 Matthias Clasen + * gtk/gtklabel.c (get_layout_location): Fix label alignment + when width-chars is set. (#326098, Benjamin Otte) + * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the single-rectangle case. (#326127, Benjamin Berg) (gdk_region_copy): Use miRegionCopy() here. diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c index 269d859767..2c5509c311 100644 --- a/gtk/gtklabel.c +++ b/gtk/gtklabel.c @@ -2191,19 +2191,21 @@ get_layout_location (GtkLabel *label, gint *yp) { GtkMisc *misc; - GtkWidget *widget; + GtkWidget *widget; + GtkLabelPrivate *priv; gfloat xalign; gint req_width, x, y; misc = GTK_MISC (label); widget = GTK_WIDGET (label); - + priv = GTK_LABEL_GET_PRIVATE (label); + if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_LTR) xalign = misc->xalign; else xalign = 1.0 - misc->xalign; - if (label->ellipsize) + if (label->ellipsize || priv->width_chars > 0) { PangoRectangle ink_rect;