aboutsummaryrefslogtreecommitdiff
path: root/libmessaging-menu/messaging-menu-app.c
diff options
context:
space:
mode:
authorLars Uebernickel <lars.uebernickel@canonical.com>2012-11-26 20:32:48 +0000
committerTarmac <Unknown>2012-11-26 20:32:48 +0000
commitefe27b122bc3fef166a7f5f62cdfd81d45495426 (patch)
treeb5c87bcc747acd9cc8f261c6d3d62c7cf8a8daf4 /libmessaging-menu/messaging-menu-app.c
parent4a6fa0a418b899667988d25b7f8922a031f72f38 (diff)
parent9287c2e6577e71d8f68d9c9e7d393a4f8524ab10 (diff)
downloadayatana-indicator-messages-efe27b122bc3fef166a7f5f62cdfd81d45495426.tar.gz
ayatana-indicator-messages-efe27b122bc3fef166a7f5f62cdfd81d45495426.tar.bz2
ayatana-indicator-messages-efe27b122bc3fef166a7f5f62cdfd81d45495426.zip
Implement more of the phone spec.
Approved by Renato Araujo Oliveira Filho, PS Jenkins bot.
Diffstat (limited to 'libmessaging-menu/messaging-menu-app.c')
-rw-r--r--libmessaging-menu/messaging-menu-app.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/libmessaging-menu/messaging-menu-app.c b/libmessaging-menu/messaging-menu-app.c
index 61547c5..d037da9 100644
--- a/libmessaging-menu/messaging-menu-app.c
+++ b/libmessaging-menu/messaging-menu-app.c
@@ -607,6 +607,25 @@ messaging_menu_app_activate_message (IndicatorMessagesApplication *app_interface
return TRUE;
}
+static gboolean
+messaging_menu_app_dismiss (IndicatorMessagesApplication *app_interface,
+ GDBusMethodInvocation *invocation,
+ const gchar * const *sources,
+ const gchar * const *messages,
+ gpointer user_data)
+{
+ MessagingMenuApp *app = user_data;
+ const gchar * const *it;
+
+ for (it = sources; *it; it++)
+ messaging_menu_app_remove_source_internal (app, *it);
+
+ for (it = messages; *it; it++)
+ messaging_menu_app_remove_message_internal (app, *it);
+
+ return TRUE;
+}
+
static void
messaging_menu_app_init (MessagingMenuApp *app)
{
@@ -625,6 +644,8 @@ messaging_menu_app_init (MessagingMenuApp *app)
G_CALLBACK (messaging_menu_app_list_messages), app);
g_signal_connect (app->app_interface, "handle-activate-message",
G_CALLBACK (messaging_menu_app_activate_message), app);
+ g_signal_connect (app->app_interface, "handle-dismiss",
+ G_CALLBACK (messaging_menu_app_dismiss), app);
app->messages = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);