This is an automated email from the git hooks/post-receive script. andrzejr pushed a commit to branch master in repository xfce/xfce4-panel.
commit b0782dc2bf199613aa93433f01a5af07f196ff96 Author: Andrzej <ndrwr...@gmail.com> Date: Wed May 28 23:06:58 2014 +0100 ApplicationsMenu: fixed wrong initial icon size in some themes --- plugins/applicationsmenu/applicationsmenu.c | 35 +++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/plugins/applicationsmenu/applicationsmenu.c b/plugins/applicationsmenu/applicationsmenu.c index 90757b9..f1afb4a 100644 --- a/plugins/applicationsmenu/applicationsmenu.c +++ b/plugins/applicationsmenu/applicationsmenu.c @@ -67,6 +67,9 @@ struct _ApplicationsMenuPlugin /* temp item we store here when the * properties dialog is opened */ GtkWidget *dialog_icon; + + gulong style_set_id; + gulong screen_changed_id; }; enum @@ -108,6 +111,7 @@ static gboolean applications_menu_plugin_menu (GtkWidget static void applications_menu_plugin_menu_deactivate (GtkWidget *menu, GtkWidget *button); static void applications_menu_plugin_set_garcon_menu (ApplicationsMenuPlugin *plugin); +static void applications_menu_button_theme_changed (ApplicationsMenuPlugin *plugin); @@ -224,6 +228,11 @@ applications_menu_plugin_init (ApplicationsMenuPlugin *plugin) plugin->menu = garcon_gtk_menu_new (NULL); g_signal_connect (G_OBJECT (plugin->menu), "selection-done", G_CALLBACK (applications_menu_plugin_menu_deactivate), plugin->button); + + plugin->style_set_id = g_signal_connect_swapped (G_OBJECT (plugin->button), "style-set", + G_CALLBACK (applications_menu_button_theme_changed), plugin); + plugin->screen_changed_id = g_signal_connect_swapped (G_OBJECT (plugin->button), "screen-changed", + G_CALLBACK (applications_menu_button_theme_changed), plugin); } @@ -400,6 +409,8 @@ applications_menu_plugin_construct (XfcePanelPlugin *panel_plugin) gtk_widget_show (plugin->button); + applications_menu_plugin_size_changed (panel_plugin, + xfce_panel_plugin_get_size (panel_plugin)); plugin->is_constructed = TRUE; } @@ -413,6 +424,18 @@ applications_menu_plugin_free_data (XfcePanelPlugin *panel_plugin) if (plugin->menu != NULL) gtk_widget_destroy (plugin->menu); + if (plugin->style_set_id != 0) + { + g_signal_handler_disconnect (plugin->button, plugin->style_set_id); + plugin->style_set_id = 0; + } + + if (plugin->screen_changed_id != 0) + { + g_signal_handler_disconnect (plugin->button, plugin->screen_changed_id); + plugin->screen_changed_id = 0; + } + g_free (plugin->button_title); g_free (plugin->button_icon); g_free (plugin->custom_menu_file); @@ -798,3 +821,15 @@ applications_menu_plugin_menu (GtkWidget *button, return TRUE; } + + + +static void +applications_menu_button_theme_changed (ApplicationsMenuPlugin *plugin) +{ + XfcePanelPlugin *panel_plugin = XFCE_PANEL_PLUGIN (plugin); + + applications_menu_plugin_size_changed (panel_plugin, + xfce_panel_plugin_get_size (panel_plugin)); +} + -- To stop receiving notification emails like this one, please contact the administrator of this repository. _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org https://mail.xfce.org/mailman/listinfo/xfce4-commits