spi_atk_append_accessible (ATK_OBJECT(obj_data), iter);
}
-/* For use as a GFunc */
-static void
-append_accessible_lf (gpointer obj_data, gpointer iter)
-{
- spi_atk_append_accessible (ATK_OBJECT(obj_data), iter);
-}
-
/*---------------------------------------------------------------------------*/
void
}
void
-spi_emit_cache_update (const GList *accessibles, DBusConnection *bus)
+spi_emit_cache_update (AtkObject *accessible, DBusConnection *bus)
{
DBusMessage *message;
DBusMessageIter iter;
- DBusMessageIter iter_array;
message = dbus_message_new_signal ("/org/freedesktop/atspi/tree", SPI_DBUS_INTERFACE_TREE, "updateAccessible");
dbus_message_iter_init_append (message, &iter);
- dbus_message_iter_open_container (&iter, DBUS_TYPE_ARRAY, "(ooaoassusau)", &iter_array);
- g_list_foreach ((GList *)accessibles, append_accessible_lf, &iter_array);
- dbus_message_iter_close_container(&iter, &iter_array);
+ spi_atk_append_accessible (accessible, &iter);
dbus_connection_send(bus, message, NULL);
}
AtkObject *root = atk_get_root();
char *path;
DBusMessage *reply;
+ gchar *errmsg;
if (!root)
- return spi_dbus_general_error (message);
+ {
+ reply = dbus_message_new_error (message,
+ DBUS_ERROR_FAILED,
+ "No root accessible available");
+ }
path = atk_dbus_object_to_path (root);
if (!path)
- return spi_dbus_general_error (message);
+ {
+ reply = dbus_message_new_error (message,
+ DBUS_ERROR_FAILED,
+ "No root accessible available");
+ }
reply = dbus_message_new_method_return (message);
dbus_message_append_args (reply, DBUS_TYPE_OBJECT_PATH, &path, DBUS_TYPE_INVALID);
g_free (path);