Commit 5ffa85e1 authored by Matthias Clasen's avatar Matthias Clasen Committed by Matthias Clasen

Make the size of the arrow depend only on the font size, not on the child

2004-11-22  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
	the arrow depend only on the font size, not on the child
	allocation.  (#131345, Morten Welinder)
parent c77a880b
2004-11-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
the arrow depend only on the font size, not on the child
allocation. (#131345, Morten Welinder)
* configure.in: Require Pango 1.7.0 for PangoRenderer (#159061,
Crispin Flowerday)
......
2004-11-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
the arrow depend only on the font size, not on the child
allocation. (#131345, Morten Welinder)
* configure.in: Require Pango 1.7.0 for PangoRenderer (#159061,
Crispin Flowerday)
......
2004-11-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
the arrow depend only on the font size, not on the child
allocation. (#131345, Morten Welinder)
* configure.in: Require Pango 1.7.0 for PangoRenderer (#159061,
Crispin Flowerday)
......
2004-11-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
the arrow depend only on the font size, not on the child
allocation. (#131345, Morten Welinder)
* configure.in: Require Pango 1.7.0 for PangoRenderer (#159061,
Crispin Flowerday)
......
......@@ -725,6 +725,10 @@ gtk_menu_item_paint (GtkWidget *widget,
guint horizontal_padding;
GtkTextDirection direction;
GtkArrowType arrow_type;
PangoContext *context;
PangoFontMetrics *metrics;
gint ascent, descent;
PangoLayout *layout;
direction = gtk_widget_get_direction (widget);
......@@ -732,10 +736,17 @@ gtk_menu_item_paint (GtkWidget *widget,
"horizontal_padding", &horizontal_padding,
NULL);
gtk_widget_get_child_requisition (GTK_BIN (menu_item)->child,
&child_requisition);
context = gtk_widget_get_pango_context (GTK_BIN (menu_item)->child);
metrics = pango_context_get_metrics (context,
GTK_WIDGET (GTK_BIN (menu_item)->child)->style->font_desc,
pango_context_get_language (context));
ascent = pango_font_metrics_get_ascent (metrics);
descent = pango_font_metrics_get_descent (metrics);
pango_font_metrics_unref (metrics);
arrow_size = PANGO_PIXELS (ascent + descent) - 2 * widget->style->ythickness;
arrow_size = child_requisition.height - 2 * widget->style->ythickness;
arrow_extent = arrow_size * 0.8;
shadow_type = GTK_SHADOW_OUT;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment