summaryrefslogtreecommitdiff
path: root/gtk/gtkaccellabel.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkaccellabel.c')
-rw-r--r--gtk/gtkaccellabel.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/gtk/gtkaccellabel.c b/gtk/gtkaccellabel.c
index 73b27e52a5..ab0ce47dc8 100644
--- a/gtk/gtkaccellabel.c
+++ b/gtk/gtkaccellabel.c
@@ -325,12 +325,14 @@ gtk_accel_label_expose_event (GtkWidget *widget,
gint x;
gint y;
+ label_layout = gtk_label_get_layout (GTK_LABEL (accel_label));
+
if (direction == GTK_TEXT_DIR_RTL)
widget->allocation.x += ac_width;
widget->allocation.width -= ac_width;
if (gtk_label_get_ellipsize (label))
- pango_layout_set_width (label->layout,
- pango_layout_get_width (label->layout)
+ pango_layout_set_width (label_layout,
+ pango_layout_get_width (label_layout)
- ac_width * PANGO_SCALE);
if (GTK_WIDGET_CLASS (parent_class)->expose_event)
@@ -339,8 +341,8 @@ gtk_accel_label_expose_event (GtkWidget *widget,
widget->allocation.x -= ac_width;
widget->allocation.width += ac_width;
if (gtk_label_get_ellipsize (label))
- pango_layout_set_width (label->layout,
- pango_layout_get_width (label->layout)
+ pango_layout_set_width (label_layout,
+ pango_layout_get_width (label_layout)
+ ac_width * PANGO_SCALE);
if (direction == GTK_TEXT_DIR_RTL)
@@ -348,7 +350,6 @@ gtk_accel_label_expose_event (GtkWidget *widget,
else
x = widget->allocation.x + widget->allocation.width - misc->xpad - ac_width;
- label_layout = gtk_label_get_layout (GTK_LABEL (accel_label));
gtk_label_get_layout_offsets (GTK_LABEL (accel_label), NULL, &y);
accel_layout = gtk_widget_create_pango_layout (widget, gtk_accel_label_get_string (accel_label));