Index: plugins/launcher/launcher.c =================================================================== --- plugins/launcher/launcher.c (revision 19959) +++ plugins/launcher/launcher.c (working copy) @@ -50,6 +50,8 @@ static void launcher_write_rc_file (XfcePanelPlugin *plugin, LauncherPlugin *launcher); + +static gboolean update_panel_entry_idle (LauncherPlugin *launcher); static void launcher_construct (XfcePanelPlugin *plugin); @@ -84,6 +86,8 @@ launcher_set_size (XfcePanelPlugin *plugin, int size, LauncherPlugin *launcher) { gtk_widget_set_size_request (launcher->iconbutton, size, size); + + g_idle_add ((GSourceFunc)update_panel_entry_idle, launcher); return TRUE; } @@ -607,14 +611,17 @@ { GdkPixbuf *pb; char *tip = NULL; + int size; LauncherEntry *entry; if (launcher->entries->len == 0) return; + size = xfce_panel_plugin_get_size (XFCE_PANEL_PLUGIN(launcher->plugin)); + entry = g_ptr_array_index (launcher->entries, 0); - pb = launcher_icon_load_pixbuf (&(entry->icon), PANEL_ICON_SIZE); + pb = launcher_icon_load_pixbuf (&(entry->icon), size); xfce_iconbutton_set_pixbuf (XFCE_ICONBUTTON (launcher->iconbutton), pb); g_object_unref (pb); @@ -901,7 +908,6 @@ xfce_rc_close (rc); - g_idle_add ((GSourceFunc)update_panel_entry_idle, launcher); launcher_recreate_menu (launcher); } @@ -1158,8 +1164,6 @@ entry->comment = g_strdup (_("This item has not yet been configured")); g_ptr_array_add (launcher->entries, entry); - - g_idle_add ((GSourceFunc)update_panel_entry_idle, launcher); } else if (launcher->entries->len > 1) { Index: plugins/launcher/launcher.h =================================================================== --- plugins/launcher/launcher.h (revision 19959) +++ plugins/launcher/launcher.h (working copy) @@ -27,7 +27,6 @@ #define W_ARROW 16 #define MENU_ICON_SIZE 24 #define DLG_ICON_SIZE 32 -#define PANEL_ICON_SIZE 48 /* A bit of a hack: Don't use icons without xfce- default */ #define NUM_CATEGORIES (XFCE_N_BUILTIN_ICON_CATEGORIES - 4)