diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/app-indicator.c | 10 | ||||
-rw-r--r-- | src/application-service-appstore.c | 16 |
2 files changed, 20 insertions, 6 deletions
diff --git a/src/app-indicator.c b/src/app-indicator.c index 6c2a8d9..32f512f 100644 --- a/src/app-indicator.c +++ b/src/app-indicator.c @@ -229,7 +229,7 @@ app_indicator_class_init (AppIndicatorClass *klass) "An icon for the indicator", "The default icon that is shown for the indicator.", NULL, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT)); + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); /** AppIndicator:attention-icon-name: @@ -1408,12 +1408,12 @@ container_iterate (GtkWidget *widget, container_iterate, child); g_signal_connect_object (submenu, - "add", + "child-added", G_CALLBACK (submenu_changed), child, 0); g_signal_connect_object (submenu, - "remove", + "child-removed", G_CALLBACK (submenu_changed), child, 0); @@ -1552,11 +1552,11 @@ app_indicator_set_menu (AppIndicator *self, GtkMenu *menu) check_connect (self); g_signal_connect (menu, - "add", + "child-added", G_CALLBACK (client_menu_changed), self); g_signal_connect (menu, - "remove", + "child-removed", G_CALLBACK (client_menu_changed), self); } diff --git a/src/application-service-appstore.c b/src/application-service-appstore.c index 66943b5..15abea3 100644 --- a/src/application-service-appstore.c +++ b/src/application-service-appstore.c @@ -243,7 +243,21 @@ get_all_properties_cb (DBusGProxy * proxy, GHashTable * properties, GError * err static AppIndicatorStatus string_to_status(const gchar * status_string) { - return (AppIndicatorStatus) g_enum_get_value_by_nick((GEnumClass *)g_type_class_ref (APP_INDICATOR_TYPE_INDICATOR_STATUS), status_string); + GEnumClass * klass = G_ENUM_CLASS(g_type_class_ref(APP_INDICATOR_TYPE_INDICATOR_STATUS)); + g_return_val_if_fail(klass != NULL, APP_INDICATOR_STATUS_PASSIVE); + + AppIndicatorStatus retval = APP_INDICATOR_STATUS_PASSIVE; + + GEnumValue * val = g_enum_get_value_by_nick(klass, status_string); + if (val == NULL) { + g_warning("Unrecognized status '%s' assuming passive.", status_string); + } else { + retval = (AppIndicatorStatus)val->value; + } + + g_type_class_unref(klass); + + return retval; } /* A small helper function to get the position of an application |