[Xfce4-commits] <xfce4-panel:master> Use XfcePanelImage in the launcher menu.
Nick Schermer
noreply at xfce.org
Tue Dec 28 13:10:03 CET 2010
Updating branch refs/heads/master
to 8cc6d8cc0c23798c60f00207602446e22b5aa259 (commit)
from 7d9ab39f7ccd643ef8a03949590835bd2ac8b1ce (commit)
commit 8cc6d8cc0c23798c60f00207602446e22b5aa259
Author: Nick Schermer <nick at xfce.org>
Date: Tue Dec 28 12:56:06 2010 +0100
Use XfcePanelImage in the launcher menu.
plugins/launcher/launcher.c | 15 +++++++++++++--
1 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/plugins/launcher/launcher.c b/plugins/launcher/launcher.c
index 7fbf7bd..fd228cb 100644
--- a/plugins/launcher/launcher.c
+++ b/plugins/launcher/launcher.c
@@ -40,6 +40,7 @@
#define ARROW_BUTTON_SIZE (12)
#define TOOLTIP_ICON_SIZE (32)
+#define MENU_ICON_SIZE (32)
#define MENU_POPUP_DELAY (225)
#define NO_ARROW_INSIDE_BUTTON(plugin) ((plugin)->arrow_position != LAUNCHER_ARROW_INTERNAL \
|| LIST_HAS_ONE_OR_NO_ENTRIES ((plugin)->items))
@@ -323,7 +324,9 @@ launcher_plugin_class_init (LauncherPluginClass *klass)
launcher_menu_icon_size = gtk_icon_size_from_name ("panel-launcher-menu");
if (launcher_menu_icon_size == GTK_ICON_SIZE_INVALID)
- launcher_menu_icon_size = gtk_icon_size_register ("panel-launcher-menu", 32, 32);
+ launcher_menu_icon_size = gtk_icon_size_register ("panel-launcher-menu",
+ MENU_ICON_SIZE,
+ MENU_ICON_SIZE);
launcher_tooltip_icon_size = gtk_icon_size_from_name ("panel-launcher-tooltip");
if (launcher_tooltip_icon_size == GTK_ICON_SIZE_INVALID)
@@ -1516,6 +1519,7 @@ launcher_plugin_menu_construct (LauncherPlugin *plugin)
GtkWidget *mi, *image;
const gchar *name, *icon_name;
GSList *li;
+ gint w, h, size;
panel_return_if_fail (XFCE_IS_LAUNCHER_PLUGIN (plugin));
panel_return_if_fail (plugin->menu == NULL);
@@ -1529,6 +1533,12 @@ launcher_plugin_menu_construct (LauncherPlugin *plugin)
/* get the arrow type of the plugin */
arrow_type = xfce_arrow_button_get_arrow_type (XFCE_ARROW_BUTTON (plugin->arrow));
+ /* size of the menu items */
+ if (gtk_icon_size_lookup (launcher_menu_icon_size, &w, &h))
+ size = MIN (w, h);
+ else
+ size = MENU_ICON_SIZE;
+
/* walk through the menu entries */
for (li = plugin->items, n = 0; li != NULL; li = li->next, n++)
{
@@ -1572,7 +1582,8 @@ launcher_plugin_menu_construct (LauncherPlugin *plugin)
icon_name = garcon_menu_item_get_icon_name (item);
if (!exo_str_is_empty (icon_name))
{
- image = gtk_image_new_from_icon_name (icon_name, launcher_menu_icon_size);
+ image = xfce_panel_image_new_from_source (icon_name);
+ xfce_panel_image_set_size (XFCE_PANEL_IMAGE (image), size);
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (mi), image);
gtk_widget_show (image);
}
More information about the Xfce4-commits
mailing list