diff options
author | Ted Gould <ted@gould.cx> | 2010-12-03 21:40:11 -0600 |
---|---|---|
committer | Ted Gould <ted@gould.cx> | 2010-12-03 21:40:11 -0600 |
commit | 5265f39dd8fe1d8cfe9d3884f413b22fe29dac71 (patch) | |
tree | d254a64b31f5b996f811dc4ea7530a93d15664b8 /src/app-indicator.c | |
parent | 178f821b27fd31a5059d76a9ccc0cf9ff551e35b (diff) | |
parent | 671666f8ece765624fe6f2c94e6ece24688c5b8c (diff) | |
download | libayatana-appindicator-5265f39dd8fe1d8cfe9d3884f413b22fe29dac71.tar.gz libayatana-appindicator-5265f39dd8fe1d8cfe9d3884f413b22fe29dac71.tar.bz2 libayatana-appindicator-5265f39dd8fe1d8cfe9d3884f413b22fe29dac71.zip |
Merging in removing the service
Diffstat (limited to 'src/app-indicator.c')
-rw-r--r-- | src/app-indicator.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/app-indicator.c b/src/app-indicator.c index 78d784a..c326ea4 100644 --- a/src/app-indicator.c +++ b/src/app-indicator.c @@ -36,7 +36,11 @@ License version 3 and version 2.1 along with this program. If not, see #include <libdbusmenu-glib/menuitem.h> #include <libdbusmenu-glib/server.h> +#ifdef HAVE_GTK3 +#include <libdbusmenu-gtk3/client.h> +#else #include <libdbusmenu-gtk/client.h> +#endif #include "app-indicator.h" #include "app-indicator-enum-types.h" @@ -1577,13 +1581,17 @@ static void update_icon_name (DbusmenuMenuitem *menuitem, GtkImage *image) { + const gchar *icon_name = NULL; + if (gtk_image_get_storage_type (image) != GTK_IMAGE_ICON_NAME) return; + gtk_image_get_icon_name (image, &icon_name, NULL); + if (should_show_image (image)) dbusmenu_menuitem_property_set (menuitem, DBUSMENU_MENUITEM_PROP_ICON_NAME, - image->data.name.icon_name); + icon_name); else dbusmenu_menuitem_property_remove (menuitem, DBUSMENU_MENUITEM_PROP_ICON_NAME); @@ -1595,16 +1603,18 @@ update_stock_item (DbusmenuMenuitem *menuitem, GtkImage *image) { GtkStockItem stock; + gchar *stock_id = NULL; if (gtk_image_get_storage_type (image) != GTK_IMAGE_STOCK) return FALSE; - gtk_stock_lookup (image->data.stock.stock_id, &stock); + gtk_image_get_stock (image, &stock_id, NULL); + gtk_stock_lookup (stock_id, &stock); if (should_show_image (image)) dbusmenu_menuitem_property_set (menuitem, DBUSMENU_MENUITEM_PROP_ICON_NAME, - image->data.stock.stock_id); + stock_id); else dbusmenu_menuitem_property_remove (menuitem, DBUSMENU_MENUITEM_PROP_ICON_NAME); @@ -1653,7 +1663,7 @@ widget_notify_cb (GtkWidget *widget, { dbusmenu_menuitem_property_set_bool (child, DBUSMENU_MENUITEM_PROP_ENABLED, - GTK_WIDGET_IS_SENSITIVE (widget)); + gtk_widget_is_sensitive (widget)); } else if (pspec->name == g_intern_static_string ("label")) { @@ -1805,7 +1815,7 @@ container_iterate (GtkWidget *widget, dbusmenu_menuitem_property_set_bool (child, DBUSMENU_MENUITEM_PROP_ENABLED, - GTK_WIDGET_IS_SENSITIVE (widget)); + gtk_widget_is_sensitive (widget)); dbusmenu_menuitem_property_set_bool (child, DBUSMENU_MENUITEM_PROP_VISIBLE, gtk_widget_get_visible (widget)); |