diff options
author | Mike Gorse <mgorse@suse.com> | 2014-02-18 12:07:33 -0600 |
---|---|---|
committer | Mike Gorse <mgorse@suse.com> | 2014-02-18 12:22:45 -0600 |
commit | 50b78a502d8fe0e8ec7bf932d87151461bcecc2b (patch) | |
tree | 53f189f1ddf5e4e8bcb4e7eaec02f6cc6c4c9afb | |
parent | 2aa20b33e2c8ed64b7d7fd877c10b74730e6f0b5 (diff) | |
download | at-spi2-atk-50b78a502d8fe0e8ec7bf932d87151461bcecc2b.tar.gz |
Add AtspitableCell, tracking the new atk interface
-rw-r--r-- | atk-adaptor/adaptors/Makefile.am | 1 | ||||
-rw-r--r-- | atk-adaptor/adaptors/adaptors.h | 1 | ||||
-rw-r--r-- | atk-adaptor/adaptors/table-cell-adaptor.c | 191 | ||||
-rw-r--r-- | atk-adaptor/bridge.c | 1 | ||||
-rw-r--r-- | atk-adaptor/introspection.c | 171 | ||||
-rw-r--r-- | atk-adaptor/introspection.h | 4 | ||||
-rw-r--r-- | atk-adaptor/object.c | 6 | ||||
-rw-r--r-- | configure.ac | 2 |
8 files changed, 333 insertions, 44 deletions
diff --git a/atk-adaptor/adaptors/Makefile.am b/atk-adaptor/adaptors/Makefile.am index 66f7ba7..7624b57 100644 --- a/atk-adaptor/adaptors/Makefile.am +++ b/atk-adaptor/adaptors/Makefile.am @@ -29,5 +29,6 @@ libatk_bridge_adaptors_la_SOURCES =\ selection-adaptor.c \ socket-adaptor.c \ table-adaptor.c \ + table-cell-adaptor.c \ text-adaptor.c \ value-adaptor.c diff --git a/atk-adaptor/adaptors/adaptors.h b/atk-adaptor/adaptors/adaptors.h index 84d2ef4..395114b 100644 --- a/atk-adaptor/adaptors/adaptors.h +++ b/atk-adaptor/adaptors/adaptors.h @@ -42,6 +42,7 @@ void spi_initialize_image (DRoutePath * path); void spi_initialize_selection (DRoutePath * path); void spi_initialize_socket (DRoutePath * path); void spi_initialize_table (DRoutePath * path); +void spi_initialize_table_cell (DRoutePath * path); void spi_initialize_text (DRoutePath * path); void spi_initialize_value (DRoutePath * path); void spi_initialize_cache (DRoutePath * path); diff --git a/atk-adaptor/adaptors/table-cell-adaptor.c b/atk-adaptor/adaptors/table-cell-adaptor.c new file mode 100644 index 0000000..c557ed5 --- /dev/null +++ b/atk-adaptor/adaptors/table-cell-adaptor.c @@ -0,0 +1,191 @@ +/* + * AT-SPI - Assistive Technology Service Provider Interface + * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap) + * + * Copyright 2013 SUSE LLC. + * Copyright 2001, 2002 Sun Microsystems Inc., + * Copyright 2001, 2002 Ximian, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include <atk/atk.h> +#include <droute/droute.h> + +#include "spi-dbus.h" +#include "object.h" +#include "introspection.h" + +static dbus_bool_t +impl_get_ColumnSpan (DBusMessageIter * iter, void *user_data) +{ + AtkTableCell *cell = (AtkTableCell *) user_data; + g_return_val_if_fail (ATK_IS_TABLE_CELL (user_data), FALSE); + return droute_return_v_int32 (iter, atk_table_cell_get_column_span (cell)); +} + +static DBusMessage * +message_from_object_array (DBusMessage *message, GPtrArray *array) +{ + DBusMessage *reply; + DBusMessageIter iter, iter_array; + gint len; + gint i; + + reply = dbus_message_new_method_return (message); + if (!reply) + return NULL; + + dbus_message_iter_init_append (reply, &iter); + + if (!dbus_message_iter_open_container + (&iter, DBUS_TYPE_ARRAY, "(so)", &iter_array)) + return reply; /* TODO: handle out of memory */ + len = (array? array->len: 0); + for (i = 0; i < len; i++) + { + spi_object_append_reference (&iter_array, g_ptr_array_index (array, i)); + } + dbus_message_iter_close_container (&iter, &iter_array); + g_ptr_array_unref (array); + return message; +} + +static DBusMessage * +impl_GetColumnHeaderCells (DBusConnection * bus, DBusMessage * message, + void *user_data) +{ + AtkTableCell *cell = user_data; + GPtrArray *array; + + g_return_val_if_fail (ATK_IS_TABLE_CELL (user_data), + droute_not_yet_handled_error (message)); + + array = atk_table_cell_get_column_header_cells (cell); + return message_from_object_array (message, array); +} + +static dbus_bool_t +impl_get_RowSpan (DBusMessageIter * iter, void *user_data) +{ + AtkTableCell *cell = (AtkTableCell *) user_data; + g_return_val_if_fail (ATK_IS_TABLE_CELL (user_data), FALSE); + return droute_return_v_int32 (iter, atk_table_cell_get_row_span (cell)); +} + +static DBusMessage * +impl_GetRowHeaderCells (DBusConnection * bus, DBusMessage * message, + void *user_data) +{ + AtkTableCell *cell = user_data; + GPtrArray *array; + + g_return_val_if_fail (ATK_IS_TABLE_CELL (user_data), + droute_not_yet_handled_error (message)); + + array = atk_table_cell_get_row_header_cells (cell); + return message_from_object_array (message, array); +} + +static dbus_bool_t +impl_get_Position (DBusMessageIter * iter, void *user_data) +{ + AtkTableCell *cell = (AtkTableCell *) user_data; + gint row = -1, column = -1; + dbus_int32_t d_row, d_column; + DBusMessageIter iter_struct, iter_variant; + + g_return_val_if_fail (ATK_IS_TABLE_CELL (user_data), FALSE); + if (!atk_table_cell_get_position (cell, &row, &column)) + return FALSE; + + d_row = row; + d_column = column; + dbus_message_iter_open_container (iter, DBUS_TYPE_STRUCT, "(ii)", &iter_variant); + dbus_message_iter_open_container (&iter_struct, DBUS_TYPE_STRUCT, NULL, &iter_struct); + dbus_message_iter_append_basic (&iter_struct, DBUS_TYPE_INT32, &row); + dbus_message_iter_append_basic (&iter_struct, DBUS_TYPE_INT32, &column); + dbus_message_iter_close_container (&iter_variant, &iter_struct); + dbus_message_iter_close_container (iter, &iter_variant); + return TRUE; +} + +static dbus_bool_t +impl_get_Table (DBusMessageIter * iter, void *user_data) +{ + AtkTableCell *cell = (AtkTableCell *) user_data; + AtkObject *table; + + g_return_val_if_fail (ATK_IS_TABLE_CELL (user_data), FALSE); + + table = atk_table_cell_get_table (cell); + if (!table) + return FALSE; + spi_object_append_reference (iter, table); + return TRUE; +} + +static DBusMessage * +impl_GetRowColumnSpan (DBusConnection * bus, DBusMessage * message, + void *user_data) +{ + AtkTableCell *cell = (AtkTableCell *) user_data; + gint row, column, row_span, column_span; + dbus_int32_t d_row, d_column, d_row_span, d_column_span; + DBusMessage *reply; + + g_return_val_if_fail (ATK_IS_TABLE (user_data), + droute_not_yet_handled_error (message)); + atk_table_cell_get_row_column_span (cell, &row, &column, &row_span, + &column_span); + d_row = row; + d_column = column; + d_row_span = row_span; + d_column_span = column_span; + reply = dbus_message_new_method_return (message); + if (reply) + { + dbus_message_append_args (reply, DBUS_TYPE_INT32, &d_row, DBUS_TYPE_INT32, + &d_column, DBUS_TYPE_INT32, &d_row_span, + DBUS_TYPE_INT32, &d_column_span, + DBUS_TYPE_INVALID); + } + return reply; +} + +static DRouteMethod methods[] = { + {impl_GetRowHeaderCells, "GetRowHeaderCells"}, + {impl_GetColumnHeaderCells, "GetColumnHeaderCells"}, + {impl_GetRowColumnSpan, "GetRowColumnSpan"}, + {NULL, NULL} +}; + +static DRouteProperty properties[] = { + {impl_get_ColumnSpan, NULL, "ColumnSpan"}, + {impl_get_Position, NULL, "Position"}, + {impl_get_RowSpan, NULL, "RowSpan"}, + {impl_get_Table, NULL, "Table"}, + {NULL, NULL, NULL} +}; + +void +spi_initialize_table_cell (DRoutePath * path) +{ + droute_path_add_interface (path, + ATSPI_DBUS_INTERFACE_TABLE_CELL, + spi_org_a11y_atspi_TableCell, + methods, properties); +}; diff --git a/atk-adaptor/bridge.c b/atk-adaptor/bridge.c index 9f5977b..e7b3bab 100644 --- a/atk-adaptor/bridge.c +++ b/atk-adaptor/bridge.c @@ -1066,6 +1066,7 @@ atk_bridge_adaptor_init (gint * argc, gchar ** argv[]) spi_initialize_selection (accpath); spi_initialize_socket (accpath); spi_initialize_table (accpath); + spi_initialize_table_cell (accpath); spi_initialize_text (accpath); spi_initialize_value (accpath); diff --git a/atk-adaptor/introspection.c b/atk-adaptor/introspection.c index 7d0658d..0ce7cfa 100644 --- a/atk-adaptor/introspection.c +++ b/atk-adaptor/introspection.c @@ -13,15 +13,17 @@ const char *spi_org_a11y_atspi_Accessible = "<interface name=\"org.a11y.atspi.Accessible\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"name\" type=\"s\" />" +" <property access=\"read\" name=\"Name\" type=\"s\" />" "" -" <property access=\"read\" name=\"description\" type=\"s\" />" +" <property access=\"read\" name=\"Description\" type=\"s\" />" "" -" <property access=\"read\" name=\"parent\" type=\"(so)\">" +" <property access=\"read\" name=\"Parent\" type=\"(so)\">" " " " </property>" "" -" <property access=\"read\" name=\"childCount\" type=\"i\" />" +" <property access=\"read\" name=\"ChildCount\" type=\"i\" />" +"" +" <property access=\"read\" name=\"Locale\" type=\"s\" />" "" " <method name=\"GetChildAtIndex\">" " <arg direction=\"in\" name=\"index\" type=\"i\" />" @@ -76,7 +78,7 @@ const char *spi_org_a11y_atspi_Accessible = const char *spi_org_a11y_atspi_Action = "<interface name=\"org.a11y.atspi.Action\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"nActions\" type=\"i\" />" +" <property access=\"read\" name=\"NActions\" type=\"i\" />" "" " <method name=\"GetDescription\">" " <arg direction=\"in\" name=\"index\" type=\"i\" />" @@ -99,7 +101,7 @@ const char *spi_org_a11y_atspi_Action = " </method>" "" " <method name=\"GetActions\">" -" <arg direction=\"out\" name=\"index\" type=\"a(ssss)\" />" +" <arg direction=\"out\" type=\"a(sss)\" />" " " " </method>" "" @@ -114,19 +116,24 @@ const char *spi_org_a11y_atspi_Action = const char *spi_org_a11y_atspi_Application = "<interface name=\"org.a11y.atspi.Application\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"toolkitName\" type=\"s\" />" +" <property access=\"read\" name=\"ToolkitName\" type=\"s\" />" "" -" <property access=\"read\" name=\"version\" type=\"s\" />" +" <property access=\"read\" name=\"Version\" type=\"s\" />" "" -" <property access=\"read\" name=\"id\" type=\"i\" />" +" <property access=\"read\" name=\"AtspiVersion\" type=\"s\" />" +" <property access=\"read\" name=\"Id\" type=\"i\" />" "" " <method name=\"GetLocale\">" " <arg direction=\"in\" name=\"lctype\" type=\"u\" />" " <arg direction=\"out\" type=\"s\" />" " </method>" "" -" <method name=\"GetApplicationBusAddress\">" -" <arg direction=\"out\" type=\"s\" />" +" <method name=\"RegisterEventListener\">" +" <arg direction=\"in\" name=\"event\" type=\"s\" />" +" </method>" +"" +" <method name=\"DeregisterEventListener\">" +" <arg direction=\"in\" name=\"event\" type=\"s\" />" " </method>" "" "</interface>" @@ -152,7 +159,7 @@ const char *spi_org_a11y_atspi_Collection = " " " <arg direction=\"in\" name=\"sortby\" type=\"u\" />" " <arg direction=\"in\" name=\"tree\" type=\"u\" />" -" <arg direction=\"in\" name=\"recurse\" type=\"b\" />" +" <arg direction=\"in\" name=\"limit_scope\" type=\"b\" />" " <arg direction=\"in\" name=\"count\" type=\"i\" />" " <arg direction=\"in\" name=\"traverse\" type=\"b\" />" " <arg direction=\"out\" type=\"a(so)\" />" @@ -231,12 +238,38 @@ const char *spi_org_a11y_atspi_Component = " <arg direction=\"out\" type=\"d\" />" " </method>" "" +" <method name=\"SetExtents\">" +" <arg direction=\"in\" name=\"x\" type=\"i\" />" +" <arg direction=\"in\" name=\"y\" type=\"i\" />" +" <arg direction=\"in\" name=\"width\" type=\"i\" />" +" <arg direction=\"in\" name=\"height\" type=\"i\" />" +" <arg direction=\"in\" name=\"coord_type\" type=\"u\" />" +" <arg direction=\"out\" type=\"b\" />" +" </method>" +"" +" <method name=\"SetPosition\">" +" <arg direction=\"in\" name=\"x\" type=\"i\" />" +" <arg direction=\"in\" name=\"y\" type=\"i\" />" +" <arg direction=\"in\" name=\"coord_type\" type=\"u\" />" +" <arg direction=\"out\" type=\"b\" />" +" </method>" +"" +" <method name=\"SetSize\">" +" <arg direction=\"in\" name=\"width\" type=\"i\" />" +" <arg direction=\"in\" name=\"height\" type=\"i\" />" +" <arg direction=\"out\" type=\"b\" />" +" </method>" +"" "</interface>" ""; const char *spi_org_a11y_atspi_Document = "<interface name=\"org.a11y.atspi.Document\" version=\"0.1.7\">" "" +" <property access=\"read\" name=\"CurrentPageNumber\" type=\"i\" />" +"" +" <property access=\"read\" name=\"PageCount\" type=\"i\" />" +"" " <method name=\"GetLocale\">" " <arg direction=\"out\" type=\"s\" />" " </method>" @@ -278,11 +311,11 @@ const char *spi_org_a11y_atspi_Hypertext = const char *spi_org_a11y_atspi_Hyperlink = "<interface name=\"org.a11y.atspi.Hyperlink\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"nAnchors\" type=\"n\" />" +" <property access=\"read\" name=\"NAnchors\" type=\"n\" />" "" -" <property access=\"read\" name=\"startIndex\" type=\"i\" />" +" <property access=\"read\" name=\"StartIndex\" type=\"i\" />" "" -" <property access=\"read\" name=\"endIndex\" type=\"i\" />" +" <property access=\"read\" name=\"EndIndex\" type=\"i\" />" "" " <method name=\"GetObject\">" " <arg direction=\"in\" name=\"i\" type=\"i\" />" @@ -305,9 +338,9 @@ const char *spi_org_a11y_atspi_Hyperlink = const char *spi_org_a11y_atspi_Image = "<interface name=\"org.a11y.atspi.Image\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"imageDescription\" type=\"s\" />" +" <property access=\"read\" name=\"ImageDescription\" type=\"s\" />" "" -" <property access=\"read\" name=\"imageLocale\" type=\"s\" />" +" <property access=\"read\" name=\"ImageLocale\" type=\"s\" />" "" " <method name=\"GetImageExtents\">" " <arg direction=\"in\" name=\"coordType\" type=\"u\" />" @@ -332,7 +365,7 @@ const char *spi_org_a11y_atspi_Image = const char *spi_org_a11y_atspi_Selection = "<interface name=\"org.a11y.atspi.Selection\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"nSelectedChildren\" type=\"i\" />" +" <property access=\"read\" name=\"NSelectedChildren\" type=\"i\" />" "" " <method name=\"GetSelectedChild\">" " <arg direction=\"in\" name=\"selectedChildIndex\" type=\"i\" />" @@ -363,7 +396,7 @@ const char *spi_org_a11y_atspi_Selection = " <arg direction=\"out\" type=\"b\" />" " </method>" "" -" <method name=\"deSelectChild\">" +" <method name=\"DeselectChild\">" " <arg direction=\"in\" name=\"childIndex\" type=\"i\" />" " <arg direction=\"out\" type=\"b\" />" " </method>" @@ -374,21 +407,21 @@ const char *spi_org_a11y_atspi_Selection = const char *spi_org_a11y_atspi_Table = "<interface name=\"org.a11y.atspi.Table\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"nRows\" type=\"i\" />" +" <property access=\"read\" name=\"NRows\" type=\"i\" />" "" -" <property access=\"read\" name=\"nColumns\" type=\"i\" />" +" <property access=\"read\" name=\"NColumns\" type=\"i\" />" "" -" <property access=\"read\" name=\"caption\" type=\"(so)\">" +" <property access=\"read\" name=\"Caption\" type=\"(so)\">" " " " </property>" "" -" <property access=\"read\" name=\"summary\" type=\"(so)\">" +" <property access=\"read\" name=\"Summary\" type=\"(so)\">" " " " </property>" "" -" <property access=\"read\" name=\"nSelectedRows\" type=\"i\" />" +" <property access=\"read\" name=\"NSelectedRows\" type=\"i\" />" "" -" <property access=\"read\" name=\"nSelectedColumns\" type=\"i\" />" +" <property access=\"read\" name=\"NSelectedColumns\" type=\"i\" />" "" " <method name=\"GetAccessibleAt\">" " <arg direction=\"in\" name=\"row\" type=\"i\" />" @@ -506,12 +539,42 @@ const char *spi_org_a11y_atspi_Table = "</interface>" ""; +const char *spi_org_a11y_atspi_TableCell = +"<interface name=\"org.a11y.atspi.TableCell\" version=\"0.1.7\">" +"" +" <property access=\"read\" name=\"ColumnSpan\" type=\"i\" />" +"" +" <property access=\"read\" name=\"Position\" type=\"(ii)\" />" +"" +" <property access=\"read\" name=\"RowSpan\" type=\"i\" />" +"" +" <property access=\"read\" name=\"Table\" type=\"(so)\" />" +"" +" <method name=\"GetRowColumnSpan\">" +" <arg direction=\"out\" type=\"b\" />" +" <arg direction=\"out\" name=\"row\" type=\"i\" />" +" <arg direction=\"out\" name=\"col\" type=\"i\" />" +" <arg direction=\"out\" name=\"row_extents\" type=\"i\" />" +" <arg direction=\"out\" name=\"col_extents\" type=\"i\" />" +" </method>" +"" +"</interface>" +""; + const char *spi_org_a11y_atspi_Text = "<interface name=\"org.a11y.atspi.Text\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"characterCount\" type=\"i\" />" +" <property access=\"read\" name=\"CharacterCount\" type=\"i\" />" "" -" <property access=\"read\" name=\"caretOffset\" type=\"i\" />" +" <property access=\"read\" name=\"CaretOffset\" type=\"i\" />" +"" +" <method name=\"GetStringAtOffset\">" +" <arg direction=\"in\" name=\"offset\" type=\"i\" />" +" <arg direction=\"in\" name=\"granularity\" type=\"u\" />" +" <arg direction=\"out\" type=\"s\" />" +" <arg direction=\"out\" name=\"startOffset\" type=\"i\" />" +" <arg direction=\"out\" name=\"endOffset\" type=\"i\" />" +" </method>" "" " <method name=\"GetText\">" " <arg direction=\"in\" name=\"startOffset\" type=\"i\" />" @@ -548,14 +611,6 @@ const char *spi_org_a11y_atspi_Text = " <arg direction=\"out\" name=\"endOffset\" type=\"i\" />" " </method>" "" -" <method name=\"GetStringAtOffset\">" -" <arg direction=\"in\" name=\"offset\" type=\"i\" />" -" <arg direction=\"in\" name=\"granularity\" type=\"u\" />" -" <arg direction=\"out\" type=\"s\" />" -" <arg direction=\"out\" name=\"startOffset\" type=\"i\" />" -" <arg direction=\"out\" name=\"endOffset\" type=\"i\" />" -" </method>" -"" " <method name=\"GetCharacterAtOffset\">" " <arg direction=\"in\" name=\"offset\" type=\"i\" />" " <arg direction=\"out\" type=\"i\" />" @@ -659,7 +714,7 @@ const char *spi_org_a11y_atspi_Text = " </method>" "" " <method name=\"GetDefaultAttributeSet\">" -" <arg direction=\"out\" type=\"as\" />" +" <arg direction=\"out\" type=\"a{ss}\" />" " </method>" "" "</interface>" @@ -729,14 +784,44 @@ const char *spi_org_a11y_atspi_Cache = const char *spi_org_a11y_atspi_Value = "<interface name=\"org.a11y.atspi.Value\" version=\"0.1.7\">" "" -" <property access=\"read\" name=\"minimumValue\" type=\"d\" />" +" <property access=\"read\" name=\"MinimumValue\" type=\"d\" />" +"" +" <property access=\"read\" name=\"MaximumValue\" type=\"d\" />" +"" +" <property access=\"read\" name=\"MinimumIncrement\" type=\"d\" />" +"" +" <property access=\"readwrite\" name=\"CurrentValue\" type=\"d\" />" +"" +"</interface>" +""; + +const char *spi_org_a11y_atspi_Registry = +"<interface name=\"org.a11y.atspi.Registry\" version=\"0.1.7\">" +"" +" <method name=\"RegisterEvent\">" +" <arg direction=\"in\" name=\"event\" type=\"s\">" +" </arg>" +" </method>" "" -" <property access=\"read\" name=\"maximumValue\" type=\"d\" />" +" <method name=\"DeregisterEvent\">" +" <arg direction=\"in\" name=\"event\" type=\"s\">" +" </arg>" +" </method>" "" -" <property access=\"read\" name=\"minimumIncrement\" type=\"d\" />" +" <method name=\"GetRegisteredEvents\">" +" <arg direction=\"out\" name=\"events\" type=\"a(ss)\">" +" </arg>" +" </method>" "" -" <property access=\"readwrite\" name=\"currentValue\" type=\"d\" />" +" <signal name=\"EventListenerRegistered\">" +" <arg direction=\"out\" name=\"bus\" type=\"s\" />" +" <arg direction=\"out\" name=\"path\" type=\"s\" />" +" </signal>" "" +" <signal name=\"EventListenerDeregistered\">" +" <arg direction=\"out\" name=\"bus\" type=\"s\" />" +" <arg direction=\"out\" name=\"path\" type=\"s\" />" +" </signal>" "</interface>" ""; @@ -791,13 +876,13 @@ const char *spi_org_a11y_atspi_DeviceEventController = " </method>" "" " <method name=\"NotifyListenersSync\">" -" <arg direction=\"in\" name=\"event\" type=\"(uinnisb)\" />" +" <arg direction=\"in\" name=\"event\" type=\"(uiuuisb)\" />" " <arg direction=\"out\" type=\"b\" />" " " " </method>" "" " <method name=\"NotifyListenersAsync\">" -" <arg direction=\"in\" name=\"event\" type=\"(uinnisb)\" />" +" <arg direction=\"in\" name=\"event\" type=\"(uiuuisb)\" />" " " " </method>" "" @@ -808,7 +893,7 @@ const char *spi_org_a11y_atspi_DeviceEventListener = "<interface name=\"org.a11y.atspi.DeviceEventListener\" version=\"0.1.7\">" "" " <method name=\"NotifyEvent\">" -" <arg direction=\"in\" name=\"event\" type=\"(uinnisb)\" />" +" <arg direction=\"in\" name=\"event\" type=\"(uiuuisb)\" />" " " " <arg direction=\"out\" type=\"b\" />" " </method>" diff --git a/atk-adaptor/introspection.h b/atk-adaptor/introspection.h index 5392870..2210483 100644 --- a/atk-adaptor/introspection.h +++ b/atk-adaptor/introspection.h @@ -35,6 +35,8 @@ extern const char *spi_org_a11y_atspi_Selection; extern const char *spi_org_a11y_atspi_Table; +extern const char *spi_org_a11y_atspi_TableCell; + extern const char *spi_org_a11y_atspi_Text; extern const char *spi_org_a11y_atspi_EditableText; @@ -43,6 +45,8 @@ extern const char *spi_org_a11y_atspi_Cache; extern const char *spi_org_a11y_atspi_Value; +extern const char *spi_org_a11y_atspi_Registry; + extern const char *spi_org_a11y_atspi_DeviceEventController; extern const char *spi_org_a11y_atspi_DeviceEventListener; diff --git a/atk-adaptor/object.c b/atk-adaptor/object.c index cf15cc1..404fb24 100644 --- a/atk-adaptor/object.c +++ b/atk-adaptor/object.c @@ -272,6 +272,12 @@ spi_object_append_interfaces (DBusMessageIter * iter, AtkObject * obj) dbus_message_iter_append_basic (iter, DBUS_TYPE_STRING, &itf); } + if (ATK_IS_TABLE_CELL (obj)) + { + itf = ATSPI_DBUS_INTERFACE_TABLE_CELL; + dbus_message_iter_append_basic (iter, DBUS_TYPE_STRING, &itf); + } + if (ATK_IS_VALUE (obj)) { itf = ATSPI_DBUS_INTERFACE_VALUE; diff --git a/configure.ac b/configure.ac index 3e82cf9..829aef7 100644 --- a/configure.ac +++ b/configure.ac @@ -51,7 +51,7 @@ PKG_CHECK_MODULES(GMODULE, [gmodule-2.0 >= 2.0.0]) AC_SUBST(GMODULE_LIBS) AC_SUBST(GMODULE_CFLAGS) -PKG_CHECK_MODULES(ATK, [atk >= 2.11.3]) +PKG_CHECK_MODULES(ATK, [atk >= 2.11.90]) AC_SUBST(ATK_LIBS) AC_SUBST(ATK_CFLAGS) |