aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2015-02-18 17:17:11 -0600
committerTed Gould <ted@gould.cx>2015-02-18 17:17:11 -0600
commitc0ffb83fb803dd5375000f20106efe30baa4b135 (patch)
treed0bca2977e2294a85aeb55893810b1145e8e3699 /src
parent051a469fee96bd9f48771a731a334b65468f907f (diff)
downloadayatana-indicator-messages-c0ffb83fb803dd5375000f20106efe30baa4b135.tar.gz
ayatana-indicator-messages-c0ffb83fb803dd5375000f20106efe30baa4b135.tar.bz2
ayatana-indicator-messages-c0ffb83fb803dd5375000f20106efe30baa4b135.zip
Make a version of the remove that doesn't escape
Diffstat (limited to 'src')
-rw-r--r--src/im-application-list.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/im-application-list.c b/src/im-application-list.c
index cbabc64..08c9730 100644
--- a/src/im-application-list.c
+++ b/src/im-application-list.c
@@ -395,13 +395,9 @@ im_application_list_source_activated (GSimpleAction *action,
}
static void
-im_application_list_message_removed (Application *app,
- const gchar *id)
+im_application_list_message_removed_action (Application *app,
+ const gchar *action_name)
{
- gchar *action_name;
-
- action_name = escape_action_name (id);
-
g_action_map_remove_action (G_ACTION_MAP(app->message_actions), action_name);
g_action_muxer_remove (app->message_sub_actions, action_name);
@@ -409,6 +405,17 @@ im_application_list_message_removed (Application *app,
im_application_list_update_root_action (app->list);
g_signal_emit (app->list, signals[MESSAGE_REMOVED], 0, app->id, action_name);
+}
+
+static void
+im_application_list_message_removed (Application *app,
+ const gchar *id)
+{
+ gchar *action_name;
+
+ action_name = escape_action_name (id);
+
+ im_application_list_message_removed_action(app, action_name);
g_free (action_name);
}
@@ -442,7 +449,7 @@ im_application_list_message_activated (GSimpleAction *action,
app->cancellable, NULL, NULL);
}
- im_application_list_message_removed (app, action_name);
+ im_application_list_message_removed_action (app, action_name);
g_free (message_id);
}
@@ -502,7 +509,7 @@ im_application_list_remove_all (GSimpleAction *action,
message_actions = g_action_group_list_actions (G_ACTION_GROUP (app->message_actions));
for (it = message_actions; *it; it++)
- im_application_list_message_removed (app, *it);
+ im_application_list_message_removed_action (app, *it);
if (app->proxy != NULL) /* If it is remote, we tell the app we've cleared */
{