aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2012-03-21 14:25:55 -0500
committerTed Gould <ted@gould.cx>2012-03-21 14:25:55 -0500
commitebab055ed741101f59c320367eb8be7484555a48 (patch)
tree6002f164a459a7f149728c5bef71bfe94ccc1c82 /libdbusmenu-glib
parent890165c74783d1771e0a391987630481885cbe4a (diff)
parent4dd014ca94bd0a47cece8fcc1cf978431adc2888 (diff)
downloadlibdbusmenu-ebab055ed741101f59c320367eb8be7484555a48.tar.gz
libdbusmenu-ebab055ed741101f59c320367eb8be7484555a48.tar.bz2
libdbusmenu-ebab055ed741101f59c320367eb8be7484555a48.zip
Import upstream version 0.5.95
Diffstat (limited to 'libdbusmenu-glib')
-rw-r--r--libdbusmenu-glib/client.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/libdbusmenu-glib/client.c b/libdbusmenu-glib/client.c
index 01f063d..7d96db3 100644
--- a/libdbusmenu-glib/client.c
+++ b/libdbusmenu-glib/client.c
@@ -1540,6 +1540,18 @@ dbusmenu_client_send_event (DbusmenuClient * client, gint id, const gchar * name
variant = g_variant_new_int32(0);
}
+ /* Don't bother with the reply handling if nobody is watching... */
+ if (!g_signal_has_handler_pending (client, signals[EVENT_RESULT], 0, TRUE)) {
+ g_dbus_proxy_call(priv->menuproxy,
+ "Event",
+ g_variant_new("(isvu)", id, name, variant, timestamp),
+ G_DBUS_CALL_FLAGS_NONE,
+ 1000, /* timeout */
+ NULL, /* cancellable */
+ NULL, NULL);
+ return;
+ }
+
event_data_t * edata = g_new0(event_data_t, 1);
edata->client = client;
g_object_ref(client);