From 0d54cdd2276dfd43af9b7849da8e214d76c306f3 Mon Sep 17 00:00:00 2001 From: Lars Uebernickel Date: Tue, 27 Aug 2013 11:05:40 +0200 Subject: im-application-list: use correct signal marshaller for app-stopped --- src/im-application-list.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/im-application-list.c') diff --git a/src/im-application-list.c b/src/im-application-list.c index 1493adf..ce88db0 100644 --- a/src/im-application-list.c +++ b/src/im-application-list.c @@ -539,7 +539,7 @@ im_application_list_class_init (ImApplicationListClass *klass) G_SIGNAL_RUN_FIRST, 0, NULL, NULL, - g_cclosure_marshal_VOID__OBJECT, + g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING); -- cgit v1.2.3 From e1050a9ceed9cfd0c31ebcaf1d4abb931c5d62ed Mon Sep 17 00:00:00 2001 From: Lars Uebernickel Date: Tue, 27 Aug 2013 12:35:02 +0200 Subject: desktop menu: don't show sources with a count of 0 --- src/im-application-list.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/im-application-list.c') diff --git a/src/im-application-list.c b/src/im-application-list.c index ce88db0..17fffdc 100644 --- a/src/im-application-list.c +++ b/src/im-application-list.c @@ -476,11 +476,12 @@ im_application_list_class_init (ImApplicationListClass *klass) NULL, NULL, g_cclosure_marshal_generic, G_TYPE_NONE, - 4, + 5, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, - G_TYPE_STRING); + G_TYPE_STRING, + G_TYPE_BOOLEAN); signals[SOURCE_REMOVED] = g_signal_new ("source-removed", IM_TYPE_APPLICATION_LIST, @@ -806,6 +807,7 @@ im_application_list_source_changed (Application *app, const gchar *string; gboolean draws_attention; gboolean old_draw; + gboolean visible; g_variant_get (source, "(&s&s&sux&sb)", &id, &label, &iconstr, &count, &time, &string, &draws_attention); @@ -815,9 +817,11 @@ im_application_list_source_changed (Application *app, g_action_group_change_action_state (G_ACTION_GROUP (app->source_actions), id, g_variant_new ("(uxsb)", count, time, string, draws_attention)); - g_signal_emit (app->list, signals[SOURCE_CHANGED], 0, app->id, id, label, iconstr); + visible = count > 0; + + g_signal_emit (app->list, signals[SOURCE_CHANGED], 0, app->id, id, label, iconstr, visible); - if (!old_draw && draws_attention) + if (visible && !old_draw && draws_attention) app->draws_attention = TRUE; im_application_list_update_draws_attention (app->list); -- cgit v1.2.3