aboutsummaryrefslogtreecommitdiff
path: root/src/messages-service-dbus.c
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2011-08-11 09:29:30 -0500
committerTed Gould <ted@gould.cx>2011-08-11 09:29:30 -0500
commit52de3eb2a2a7cc6a1ed8272d85585f1463f836d9 (patch)
treef74f9f13dac6e58bfcd813a7ab2a20ef178b3db2 /src/messages-service-dbus.c
parentbfd668716a3702fbc27abee0bf609fc747b88f4e (diff)
parent6deeec596bef04ffaf469dfcf5197b36b41813cf (diff)
downloadayatana-indicator-messages-52de3eb2a2a7cc6a1ed8272d85585f1463f836d9.tar.gz
ayatana-indicator-messages-52de3eb2a2a7cc6a1ed8272d85585f1463f836d9.tar.bz2
ayatana-indicator-messages-52de3eb2a2a7cc6a1ed8272d85585f1463f836d9.zip
* New upstream release.
* Add an item to clear the alert * Choose mail applications based on the default application * Clear based on middle click
Diffstat (limited to 'src/messages-service-dbus.c')
-rw-r--r--src/messages-service-dbus.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/messages-service-dbus.c b/src/messages-service-dbus.c
index 6cc33e0..1585ac0 100644
--- a/src/messages-service-dbus.c
+++ b/src/messages-service-dbus.c
@@ -200,7 +200,10 @@ message_service_dbus_new (void)
static void
bus_method_call (GDBusConnection * connection, const gchar * sender, const gchar * path, const gchar * interface, const gchar * method, GVariant * params, GDBusMethodInvocation * invocation, gpointer user_data)
{
- MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(user_data);
+ MessageServiceDbus * ms = MESSAGE_SERVICE_DBUS(user_data);
+ if (ms == NULL) { return; }
+
+ MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(ms);
if (g_strcmp0("AttentionRequested", method) == 0) {
g_dbus_method_invocation_return_value(invocation, g_variant_new("(b)", priv->dot));
@@ -208,6 +211,10 @@ bus_method_call (GDBusConnection * connection, const gchar * sender, const gchar
} else if (g_strcmp0("IconShown", method) == 0) {
g_dbus_method_invocation_return_value(invocation, g_variant_new("(b)", priv->hidden));
return;
+ } else if (g_strcmp0("ClearAttention", method) == 0) {
+ message_service_dbus_set_attention(ms, FALSE);
+ g_dbus_method_invocation_return_value(invocation, NULL);
+ return;
} else {
g_warning("Unknown function call '%s'", method);
}