aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/app-indicator.c10
-rw-r--r--src/application-service-appstore.c16
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