diff options
author | Mike Gorse <mgorse@novell.com> | 2010-04-29 17:35:24 -0400 |
---|---|---|
committer | Mike Gorse <mgorse@novell.com> | 2010-04-29 17:45:23 -0400 |
commit | b98c53f5082b3bc164d692e4e4fc7574d7764e8e (patch) | |
tree | 25e6395e7e0359184e80e557b619665266290575 | |
parent | bf756ad608f849159b6d338fe6bb26798dabafc9 (diff) | |
download | at-spi2-core-b98c53f5082b3bc164d692e4e4fc7574d7764e8e.tar.gz |
Set an application's id when registering it
-rw-r--r-- | registryd/registry.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/registryd/registry.c b/registryd/registry.c index 7940dad2..822fa6cb 100644 --- a/registryd/registry.c +++ b/registryd/registry.c @@ -182,6 +182,30 @@ FILE *fp=fopen("/home/mgorse/xx","r");if(!fp)return;fclose(fp); } static void +set_id (SpiRegistry *reg, DBusConnection *bus, const gchar *name, const gchar *path) +{ + DBusMessage *message; + DBusMessageIter iter, iter_variant; + const char *iface_application = "org.a11y.atspi.Application"; + const char *id = "Id"; + + message = dbus_message_new_method_call (name, path, + DBUS_INTERFACE_PROPERTIES, "Set"); + if (!message) + return; + dbus_message_iter_init_append (message, &iter); + dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &iface_application); + dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &id); + dbus_message_iter_open_container (&iter, DBUS_TYPE_VARIANT, "i", &iter_variant); + dbus_message_iter_append_basic (&iter_variant, DBUS_TYPE_INT32, ®->id); + /* TODO: This will cause problems if we cycle through 2^31 ids */ + reg->id++; + dbus_message_iter_close_container (&iter, &iter_variant); + dbus_connection_send (bus, message, NULL); + dbus_message_unref (message); +} + +static void remove_application (SpiRegistry *reg, DBusConnection *bus, guint index) { const gchar *name = ""; |