aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2013-08-20 09:39:27 -0500
committerTed Gould <ted@gould.cx>2013-08-20 09:39:27 -0500
commitb929a0f22e0835b519be7b1811214dbcce40d0b2 (patch)
tree77bb1f771e9c505e8a1894a4c6e6d08dd0f397ac /src
parent0d5c6bf1e1fa56fcd562a66493f1123c2904f2b0 (diff)
downloadayatana-indicator-messages-b929a0f22e0835b519be7b1811214dbcce40d0b2.tar.gz
ayatana-indicator-messages-b929a0f22e0835b519be7b1811214dbcce40d0b2.tar.bz2
ayatana-indicator-messages-b929a0f22e0835b519be7b1811214dbcce40d0b2.zip
Track the old draw_attention and look for updates
Diffstat (limited to 'src')
-rw-r--r--src/im-application-list.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/im-application-list.c b/src/im-application-list.c
index bba7972..39e10e7 100644
--- a/src/im-application-list.c
+++ b/src/im-application-list.c
@@ -713,15 +713,21 @@ im_application_list_source_changed (Application *app,
gint64 time;
const gchar *string;
gboolean draws_attention;
+ gboolean old_draw;
g_variant_get (source, "(&s&s&sux&sb)",
&id, &label, &iconstr, &count, &time, &string, &draws_attention);
+ old_draw = app_source_action_check_draw(app, id);
+
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);
+ if (!old_draw && draws_attention)
+ app->draws_attention = TRUE;
+
im_application_list_update_draws_attention (app->list);
}