summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtkmenuitem.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/gtk/gtkmenuitem.c b/gtk/gtkmenuitem.c
index 2735a5c141..5e30156e9f 100644
--- a/gtk/gtkmenuitem.c
+++ b/gtk/gtkmenuitem.c
@@ -614,9 +614,16 @@ gtk_menu_item_paint (GtkWidget *widget,
if (menu_item->submenu && menu_item->show_submenu_indicator)
{
+ GtkRequisition child_requisition;
gint arrow_x, arrow_y;
- gint arrow_size = height - 2 * widget->style->ythickness;
- gint arrow_extent = arrow_size / 2;
+ gint arrow_size;
+ gint arrow_extent;
+
+ gtk_widget_get_child_requisition (GTK_BIN (menu_item)->child,
+ &child_requisition);
+
+ arrow_size = child_requisition.height - 2 * widget->style->ythickness;
+ arrow_extent = arrow_size * 0.6;
shadow_type = GTK_SHADOW_OUT;
if (state_type == GTK_STATE_PRELIGHT)