diff options
author | Timm Bäder <mail@baedert.org> | 2016-10-03 09:57:57 +0200 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2016-10-16 18:17:21 +0200 |
commit | eadb49d97f51633ff69b2f0fba79024d1ed1a59d (patch) | |
tree | d806c1e85f6271242f3db9599f36004de844d14b | |
parent | 421be38a3c3b306038f61fd0490d17d1a9a787ef (diff) | |
download | gtk+-eadb49d97f51633ff69b2f0fba79024d1ed1a59d.tar.gz |
recentchoosermenu: Stop using GtkImageMenuItem
-rw-r--r-- | gtk/gtkrecentchoosermenu.c | 36 |
1 files changed, 14 insertions, 22 deletions
diff --git a/gtk/gtkrecentchoosermenu.c b/gtk/gtkrecentchoosermenu.c index b902640043..8da36d4f40 100644 --- a/gtk/gtkrecentchoosermenu.c +++ b/gtk/gtkrecentchoosermenu.c @@ -37,6 +37,7 @@ #include "gtkmenu.h" #include "gtkimage.h" #include "gtklabel.h" +#include "gtkbox.h" #include "gtktooltip.h" #include "deprecated/gtkactivatable.h" #include "gtktypebuiltins.h" @@ -805,6 +806,7 @@ gtk_recent_chooser_menu_create_item (GtkRecentChooserMenu *menu, gchar *text; GtkWidget *item, *image, *label; GIcon *icon; + GtkWidget *box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6); g_assert (info != NULL); @@ -834,9 +836,7 @@ gtk_recent_chooser_menu_create_item (GtkRecentChooserMenu *menu, */ text = g_strdup_printf (C_("recent menu label", "%d. %s"), count, escaped); - G_GNUC_BEGIN_IGNORE_DEPRECATIONS; - item = gtk_image_menu_item_new_with_mnemonic (text); - G_GNUC_END_IGNORE_DEPRECATIONS; + label = gtk_label_new_with_mnemonic (text); g_free (escaped); g_free (name); @@ -844,41 +844,33 @@ gtk_recent_chooser_menu_create_item (GtkRecentChooserMenu *menu, else { text = g_strdup (gtk_recent_info_get_display_name (info)); - G_GNUC_BEGIN_IGNORE_DEPRECATIONS; - item = gtk_image_menu_item_new_with_label (text); - G_GNUC_END_IGNORE_DEPRECATIONS; + label = gtk_label_new (text); } g_free (text); - G_GNUC_BEGIN_IGNORE_DEPRECATIONS; - gtk_image_menu_item_set_always_show_image (GTK_IMAGE_MENU_ITEM (item), - TRUE); - G_GNUC_END_IGNORE_DEPRECATIONS; - /* ellipsize the menu item label, in case the recent document * display name is huge. */ - label = gtk_bin_get_child (GTK_BIN (item)); - if (GTK_IS_LABEL (label)) - { - gtk_label_set_ellipsize (GTK_LABEL (label), PANGO_ELLIPSIZE_END); - gtk_label_set_max_width_chars (GTK_LABEL (label), priv->label_width); - } - + gtk_label_set_ellipsize (GTK_LABEL (label), PANGO_ELLIPSIZE_END); + gtk_label_set_max_width_chars (GTK_LABEL (label), priv->label_width); + if (priv->show_icons) { icon = gtk_recent_info_get_gicon (info); image = gtk_image_new_from_gicon (icon, GTK_ICON_SIZE_MENU); - G_GNUC_BEGIN_IGNORE_DEPRECATIONS; - gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image); - gtk_image_menu_item_set_always_show_image (GTK_IMAGE_MENU_ITEM (item), TRUE); - G_GNUC_END_IGNORE_DEPRECATIONS; if (icon) g_object_unref (icon); + + gtk_container_add (GTK_CONTAINER (box), image); } + item = gtk_menu_item_new (); + gtk_container_add (GTK_CONTAINER (box), label); + gtk_widget_show_all (box); + gtk_container_add (GTK_CONTAINER (item), box); + g_signal_connect (item, "activate", G_CALLBACK (item_activate_cb), menu); |