X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=atk-adaptor%2Faccessible-adaptor.c;h=8c115f1af3b6187a24046bdc1eda67f08919e1e6;hb=b81654c1ff0e2602963d8cdec23f910458486801;hp=1c24e92d97598bab1183141498b7073020affd39;hpb=9eb5bf8c3ebea61c1b1907738bc6cc193839326c;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/atk-adaptor/accessible-adaptor.c b/atk-adaptor/accessible-adaptor.c index 1c24e92..8c115f1 100644 --- a/atk-adaptor/accessible-adaptor.c +++ b/atk-adaptor/accessible-adaptor.c @@ -31,7 +31,7 @@ #include "accessible-register.h" static dbus_bool_t -impl_get_name (DBusMessageIter *iter, void *user_data) +impl_get_Name (DBusMessageIter *iter, void *user_data) { AtkObject *object = (AtkObject *) user_data; @@ -41,7 +41,7 @@ impl_get_name (DBusMessageIter *iter, void *user_data) } static dbus_bool_t -impl_set_name (DBusMessageIter *iter, void *user_data) +impl_set_Name (DBusMessageIter *iter, void *user_data) { AtkObject *object = (AtkObject *) user_data; const char *name = droute_get_v_string (iter); @@ -53,7 +53,7 @@ impl_set_name (DBusMessageIter *iter, void *user_data) } static dbus_bool_t -impl_get_description (DBusMessageIter *iter, void *user_data) +impl_get_Description (DBusMessageIter *iter, void *user_data) { AtkObject *object = (AtkObject *) user_data; @@ -63,7 +63,7 @@ impl_get_description (DBusMessageIter *iter, void *user_data) } static dbus_bool_t -impl_set_description (DBusMessageIter *iter, void *user_data) +impl_set_Description (DBusMessageIter *iter, void *user_data) { AtkObject *object = (AtkObject *) user_data; const char *description = droute_get_v_string (iter); @@ -75,7 +75,7 @@ impl_set_description (DBusMessageIter *iter, void *user_data) } static dbus_bool_t -impl_get_parent (DBusMessageIter *iter, void *user_data) +impl_get_Parent (DBusMessageIter *iter, void *user_data) { AtkObject *object = (AtkObject *) user_data; @@ -87,7 +87,7 @@ impl_get_parent (DBusMessageIter *iter, void *user_data) } static dbus_bool_t -impl_get_childCount (DBusMessageIter *iter, void *user_data) +impl_get_ChildCount (DBusMessageIter *iter, void *user_data) { AtkObject *object = (AtkObject *) user_data; @@ -99,7 +99,7 @@ impl_get_childCount (DBusMessageIter *iter, void *user_data) } static DBusMessage * -impl_getChildAtIndex (DBusConnection *bus, +impl_GetChildAtIndex (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -114,11 +114,11 @@ impl_getChildAtIndex (DBusConnection *bus, if (!dbus_message_get_args (message, &error, DBUS_TYPE_INT32, &i, DBUS_TYPE_INVALID)) return spi_dbus_general_error (message); child = atk_object_ref_accessible_child (object, i); - return spi_dbus_return_object (message, child, FALSE); + return spi_dbus_return_object (message, child, FALSE, FALSE); } static DBusMessage * -impl_getChildren (DBusConnection *bus, +impl_GetChildren (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -140,7 +140,7 @@ impl_getChildren (DBusConnection *bus, for (i = 0; i < count; i++) { AtkObject *child = atk_object_ref_accessible_child (object, i); - char *path = atk_dbus_object_to_path (child); + char *path = atk_dbus_object_to_path (child, FALSE); if (path) { dbus_message_iter_append_basic (&iter_array, DBUS_TYPE_OBJECT_PATH, @@ -159,7 +159,7 @@ oom: } static DBusMessage * -impl_getIndexInParent (DBusConnection *bus, +impl_GetIndexInParent (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -224,7 +224,7 @@ spi_relation_type_from_atk_relation_type (AtkRelationType type) } static DBusMessage * -impl_getRelationSet (DBusConnection *bus, +impl_GetRelationSet (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -241,7 +241,7 @@ impl_getRelationSet (DBusConnection *bus, if (!reply) return NULL; set = atk_object_ref_relation_set (object); dbus_message_iter_init_append (reply, &iter); - if (!dbus_message_iter_open_container (&iter, DBUS_TYPE_ARRAY, "(uao)", &iter_array)) + if (!dbus_message_iter_open_container (&iter, DBUS_TYPE_ARRAY, "(ua(so))", &iter_array)) { goto oom; } @@ -261,7 +261,7 @@ impl_getRelationSet (DBusConnection *bus, goto oom; } dbus_message_iter_append_basic (&iter_struct, DBUS_TYPE_UINT32, &type); - if (!dbus_message_iter_open_container (&iter_struct, DBUS_TYPE_ARRAY, "o", &iter_targets)) + if (!dbus_message_iter_open_container (&iter_struct, DBUS_TYPE_ARRAY, "(so)", &iter_targets)) { goto oom; } @@ -270,8 +270,13 @@ impl_getRelationSet (DBusConnection *bus, AtkObject *obj = target->pdata[j]; char *path; if (!obj) continue; - path = atk_dbus_object_to_path (obj); - dbus_message_iter_append_basic (&iter_targets, DBUS_TYPE_OBJECT_PATH, &path); + path = atk_dbus_object_to_path (obj, FALSE); + if (!path) + { + g_warning ("Unknown object in relation type %d\n", type); + continue; + } + spi_dbus_append_name_and_path_inner (&iter_targets, NULL, path); } dbus_message_iter_close_container (&iter_struct, &iter_targets); dbus_message_iter_close_container (&iter_array, &iter_struct); @@ -410,7 +415,7 @@ spi_accessible_role_from_atk_role (AtkRole role) } static DBusMessage * -impl_getRole (DBusConnection *bus, DBusMessage *message, void *user_data) +impl_GetRole (DBusConnection *bus, DBusMessage *message, void *user_data) { AtkObject *object = (AtkObject *) user_data; gint role; @@ -440,7 +445,7 @@ impl_get_role_str (void *datum) } static DBusMessage * -impl_getRoleName (DBusConnection *bus, +impl_GetRoleName (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -465,7 +470,7 @@ impl_getRoleName (DBusConnection *bus, } static DBusMessage * -impl_getLocalizedRoleName (DBusConnection *bus, +impl_GetLocalizedRoleName (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -490,7 +495,7 @@ impl_getLocalizedRoleName (DBusConnection *bus, } static DBusMessage * -impl_getState (DBusConnection *bus, +impl_GetState (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -512,7 +517,7 @@ impl_getState (DBusConnection *bus, } static DBusMessage * -impl_getAttributes (DBusConnection *bus, +impl_GetAttributes (DBusConnection *bus, DBusMessage *message, void *user_data) { @@ -538,33 +543,58 @@ impl_getAttributes (DBusConnection *bus, } static DBusMessage * -impl_getApplication (DBusConnection *bus, +impl_GetApplication (DBusConnection *bus, DBusMessage *message, void *user_data) { AtkObject *root = atk_get_root (); - return spi_dbus_return_object (message, root, FALSE); + return spi_dbus_return_object (message, root, FALSE, FALSE); +} + +static DBusMessage * +impl_GetInterfaces (DBusConnection *bus, + DBusMessage *message, + void *user_data) +{ + AtkObject *object = (AtkObject *) user_data; + gint role; + const char *role_name; + DBusMessage *reply; + DBusMessageIter iter, iter_array; + + g_return_val_if_fail (ATK_IS_OBJECT (user_data), + droute_not_yet_handled_error (message)); + reply = dbus_message_new_method_return (message); + if (reply) + { + dbus_message_iter_init_append (reply, &iter); + dbus_message_iter_open_container (&iter, DBUS_TYPE_ARRAY, "s", &iter_array); + append_atk_object_interfaces (object, &iter_array); + dbus_message_iter_close_container (&iter, &iter_array); + } + return reply; } static DRouteMethod methods[] = { - {impl_getChildAtIndex, "getChildAtIndex"}, - {impl_getChildren, "getChildren"}, - {impl_getIndexInParent, "getIndexInParent"}, - {impl_getRelationSet, "getRelationSet"}, - {impl_getRole, "getRole"}, - {impl_getRoleName, "getRoleName"}, - {impl_getLocalizedRoleName, "getLocalizedRoleName"}, - {impl_getState, "getState"}, - {impl_getAttributes, "getAttributes"}, - {impl_getApplication, "getApplication"}, + {impl_GetChildAtIndex, "GetChildAtIndex"}, + {impl_GetChildren, "GetChildren"}, + {impl_GetIndexInParent, "GetIndexInParent"}, + {impl_GetRelationSet, "GetRelationSet"}, + {impl_GetRole, "GetRole"}, + {impl_GetRoleName, "GetRoleName"}, + {impl_GetLocalizedRoleName, "GetLocalizedRoleName"}, + {impl_GetState, "GetState"}, + {impl_GetAttributes, "GetAttributes"}, + {impl_GetApplication, "GetApplication"}, + {impl_GetInterfaces, "GetInterfaces"}, {NULL, NULL} }; static DRouteProperty properties[] = { - {impl_get_name, impl_set_name, "name"}, - {impl_get_description, impl_set_description, "description"}, - {impl_get_parent, NULL, "parent"}, - {impl_get_childCount, NULL, "childCount"}, + {impl_get_Name, impl_set_Name, "Name"}, + {impl_get_Description, impl_set_Description, "Description"}, + {impl_get_Parent, NULL, "Parent"}, + {impl_get_ChildCount, NULL, "ChildCount"}, {NULL, NULL, NULL} };