...
 
Commits (19)
What's new in at-spi2-core 2.0.2:
* Fixed a seg fault in at-spi-bus-launcher when ending a session (BGO#648942).
* Fixed a possible crash when an application is short-lived.
* FIxed memory leaks in atspi_accessible_get_toolkit_(name|version).
* AT-SPI will now call g_error if it is unable to find the accessibility bus.
This results in aborting but with a somewhat less cryptic error than before.
* Fix atspi_table_get_caption|summary.
* Fix introspection for atspi_table_get_row_column_at_index.
* Copy match rule attributes, rather than just ref counting the hash, for
compatibility with pygi.
* Rework atspi_accessible_set_cache_mask to make it usable.
* Fix a crash that might happen if a method call times out.
* Disable caching if atspi_event_main has not been called to run the main loop.
* Fix atspi_accessible_get_toolkit_version.
* Add atspi_accessible_get_atspi_version to fetch the version of the AT-SPI
specification provided by an application.
What's new in at-spi2-core 2.0.1:
* Fix a memory leak when sending events.
......
......@@ -307,7 +307,7 @@ gchar *
atspi_accessible_get_name (AtspiAccessible *obj, GError **error)
{
g_return_val_if_fail (obj != NULL, g_strdup (""));
if (!(obj->cached_properties & ATSPI_CACHE_NAME))
if (!_atspi_accessible_test_cache (obj, ATSPI_CACHE_NAME))
{
if (!_atspi_dbus_get_property (obj, atspi_interface_accessible, "Name", error,
"s", &obj->name))
......@@ -331,7 +331,7 @@ atspi_accessible_get_description (AtspiAccessible *obj, GError **error)
{
g_return_val_if_fail (obj != NULL, g_strdup (""));
if (!(obj->cached_properties & ATSPI_CACHE_DESCRIPTION))
if (!_atspi_accessible_test_cache (obj, ATSPI_CACHE_DESCRIPTION))
{
if (!_atspi_dbus_get_property (obj, atspi_interface_accessible,
"Description", error, "s",
......@@ -360,7 +360,8 @@ atspi_accessible_get_parent (AtspiAccessible *obj, GError **error)
{
g_return_val_if_fail (obj != NULL, NULL);
if (obj->parent.app && !(obj->cached_properties & ATSPI_CACHE_PARENT))
if (obj->parent.app &&
!_atspi_accessible_test_cache (obj, ATSPI_CACHE_PARENT))
{
DBusMessage *message, *reply;
DBusMessageIter iter, iter_variant;
......@@ -406,7 +407,7 @@ atspi_accessible_get_child_count (AtspiAccessible *obj, GError **error)
{
g_return_val_if_fail (obj != NULL, -1);
if (!(obj->cached_properties & ATSPI_CACHE_CHILDREN))
if (!_atspi_accessible_test_cache (obj, ATSPI_CACHE_CHILDREN))
{
dbus_int32_t ret;
if (!_atspi_dbus_get_property (obj, atspi_interface_accessible,
......@@ -437,7 +438,7 @@ atspi_accessible_get_child_at_index (AtspiAccessible *obj,
g_return_val_if_fail (obj != NULL, NULL);
if (!(obj->cached_properties & ATSPI_CACHE_CHILDREN))
if (!_atspi_accessible_test_cache (obj, ATSPI_CACHE_CHILDREN))
{
DBusMessage *reply;
reply = _atspi_dbus_call_partial (obj, atspi_interface_accessible,
......@@ -470,7 +471,8 @@ atspi_accessible_get_index_in_parent (AtspiAccessible *obj, GError **error)
g_return_val_if_fail (obj != NULL, -1);
if (!obj->accessible_parent) return -1;
if (!(obj->accessible_parent->cached_properties & ATSPI_CACHE_CHILDREN))
if (!_atspi_accessible_test_cache (obj->accessible_parent,
ATSPI_CACHE_CHILDREN))
{
dbus_uint32_t ret = -1;
_atspi_dbus_call (obj, atspi_interface_accessible,
......@@ -550,7 +552,7 @@ atspi_accessible_get_role (AtspiAccessible *obj, GError **error)
{
g_return_val_if_fail (obj != NULL, ATSPI_ROLE_INVALID);
if (!(obj->cached_properties & ATSPI_CACHE_ROLE))
if (!_atspi_accessible_test_cache (obj, ATSPI_CACHE_ROLE))
{
dbus_uint32_t role;
/* TODO: Make this a property */
......@@ -639,7 +641,7 @@ atspi_accessible_get_state_set (AtspiAccessible *obj)
return defunct_set ();
if (!(obj->cached_properties & ATSPI_CACHE_STATES))
if (!_atspi_accessible_test_cache (obj, ATSPI_CACHE_STATES))
{
DBusMessage *reply;
DBusMessageIter iter;
......@@ -763,7 +765,7 @@ atspi_accessible_get_toolkit_name (AtspiAccessible *obj, GError **error)
if (!_atspi_dbus_get_property (obj, atspi_interface_application, "ToolkitName", error, "s", &ret))
return NULL;
return g_strdup (ret);
return ret;
}
/**
......@@ -783,9 +785,32 @@ atspi_accessible_get_toolkit_version (AtspiAccessible *obj, GError **error)
g_return_val_if_fail (obj != NULL, NULL);
if (!_atspi_dbus_get_property (obj, atspi_interface_application, "ToolkitVersion", error, "s", &ret))
if (!_atspi_dbus_get_property (obj, atspi_interface_application, "Version", error, "s", &ret))
return NULL;
return g_strdup (ret);
return ret;
}
/**
* atspi_accessible_get_atspi_version:
* @obj: a pointer to the #AtspiAccessible object on which to operate.
*
* Get the AT-SPI IPC specification version supported by the application
* pointed to by the #AtspiAccessible object.
* Only works on application root objects.
*
* Returns: a UTF-8 string indicating the AT-SPI ersion for the #AtspiAccessible object.
* or NULL on exception
**/
gchar *
atspi_accessible_get_atspi_version (AtspiAccessible *obj, GError **error)
{
gchar *ret = NULL;
g_return_val_if_fail (obj != NULL, NULL);
if (!_atspi_dbus_get_property (obj, atspi_interface_application, "AtspiVersion", error, "s", &ret))
return NULL;
return ret;
}
/**
* atspi_accessible_get_toolkit_version:
......@@ -823,7 +848,7 @@ _atspi_accessible_is_a (AtspiAccessible *accessible,
return FALSE;
}
if (!(accessible->cached_properties & ATSPI_CACHE_INTERFACES))
if (!_atspi_accessible_test_cache (accessible, ATSPI_CACHE_INTERFACES))
{
DBusMessage *reply;
DBusMessageIter iter;
......@@ -1356,7 +1381,7 @@ atspi_accessible_new (AtspiApplication *app, const gchar *path)
*
* @accessible: The #AtspiAccessible to operate on. Must be the desktop or
* the root of an application.
* @mask: An #AtspiCache specifying a bit mask of the types of data to cache.
* @mask: (type int): An #AtspiCache specifying a bit mask of the types of data to cache.
*
* Sets the type of data to cache for accessibles.
* If this is not set for an application or is reset to ATSPI_CACHE_UNDEFINED,
......@@ -1365,8 +1390,6 @@ atspi_accessible_new (AtspiApplication *app, const gchar *path)
* be cached.
* This function is intended to work around bugs in toolkits where the proper
* events are not raised / to aid in testing for such bugs.
*
* Note: This function has no effect on data that has already been cached.
**/
void
atspi_accessible_set_cache_mask (AtspiAccessible *accessible, AtspiCache mask)
......@@ -1377,11 +1400,15 @@ atspi_accessible_set_cache_mask (AtspiAccessible *accessible, AtspiCache mask)
accessible->parent.app->cache = mask;
}
void
_atspi_accessible_add_cache (AtspiAccessible *accessible, AtspiCache flag)
static AtspiCache
_atspi_accessible_get_cache_mask (AtspiAccessible *accessible)
{
AtspiCache mask = accessible->parent.app->cache;
AtspiCache mask;
if (!accessible->parent.app)
return ATSPI_CACHE_NONE;
mask = accessible->parent.app->cache;
if (mask == ATSPI_CACHE_UNDEFINED &&
accessible->parent.app->root &&
accessible->parent.app->root->accessible_parent)
......@@ -1394,5 +1421,21 @@ _atspi_accessible_add_cache (AtspiAccessible *accessible, AtspiCache flag)
if (mask == ATSPI_CACHE_UNDEFINED)
mask = ATSPI_CACHE_ALL;
return mask;
}
gboolean
_atspi_accessible_test_cache (AtspiAccessible *accessible, AtspiCache flag)
{
AtspiCache mask = _atspi_accessible_get_cache_mask (accessible);
AtspiCache result = accessible->cached_properties & mask & flag;
return (result != 0 && atspi_main_loop);
}
void
_atspi_accessible_add_cache (AtspiAccessible *accessible, AtspiCache flag)
{
AtspiCache mask = _atspi_accessible_get_cache_mask (accessible);
accessible->cached_properties |= flag & mask;
}
......@@ -97,6 +97,8 @@ gchar * atspi_accessible_get_toolkit_name (AtspiAccessible *obj, GError **error)
gchar * atspi_accessible_get_toolkit_version (AtspiAccessible *obj, GError **error);
gchar * atspi_accessible_get_atspi_version (AtspiAccessible *obj, GError **error);
gint atspi_accessible_get_id (AtspiAccessible *obj, GError **error);
AtspiAccessible * atspi_accessible_get_application (AtspiAccessible *obj, GError **error);
......@@ -131,4 +133,5 @@ void atspi_accessible_set_cache_mask (AtspiAccessible *accessible, AtspiCache ma
/* private */
void _atspi_accessible_add_cache (AtspiAccessible *accessible, AtspiCache flag);
gboolean _atspi_accessible_test_cache (AtspiAccessible *accessible, AtspiCache flag);
#endif /* _ATSPI_ACCESSIBLE_H_ */
......@@ -761,7 +761,7 @@ typedef enum {
typedef enum
{
ATSPI_CACHE_NONE = 0x0001,
ATSPI_CACHE_NONE = 0x0000,
ATSPI_CACHE_PARENT = 0x0001,
ATSPI_CACHE_CHILDREN = 0x0002,
ATSPI_CACHE_NAME = 0x0004,
......
......@@ -60,6 +60,9 @@ atspi_match_rule_finalize (GObject *object)
if (rule->interfaces)
g_array_free (rule->interfaces, TRUE);
if (rule->attributes)
g_hash_table_unref (rule->attributes);
G_OBJECT_CLASS (atspi_match_rule_parent_class)->finalize (object);
}
......@@ -119,8 +122,19 @@ atspi_match_rule_new (AtspiStateSet *states,
rule->statematchtype = statematchtype;
if (attributes)
rule->attributes = g_hash_table_ref (attributes);
rule->attributematchtype = attributematchtype;
{
GHashTableIter hash_table_iter;
gchar *key, *value;
rule->attributes = g_hash_table_new_full (g_str_hash, g_str_equal,
(GDestroyNotify) g_free,
(GDestroyNotify) g_free);
g_hash_table_iter_init (&hash_table_iter, attributes);
while (g_hash_table_iter_next (&hash_table_iter, (gpointer *)&key,
(gpointer *)&value))
g_hash_table_insert (rule->attributes, g_strdup (key), g_strdup (value));
} else
rule->attributes = NULL;
rule->attributematchtype = attributematchtype;
if (interfaces)
rule->interfaces = g_array_ref (interfaces);
......@@ -147,7 +161,7 @@ atspi_match_rule_new (AtspiStateSet *states,
}
static void
append_entry (gpointer *key, gpointer *val, gpointer data)
append_entry (gpointer key, gpointer val, gpointer data)
{
DBusMessageIter *iter = data;
DBusMessageIter iter_entry;
......
......@@ -181,4 +181,6 @@ typedef enum
ATSPI_ERROR_APPLICATION_GONE,
ATSPI_ERROR_IPC
} AtspiError;
extern GMainLoop *atspi_main_loop;
#endif /* _ATSPI_MISC_PRIVATE_H_ */
......@@ -39,6 +39,8 @@ static void handle_get_items (DBusPendingCall *pending, void *user_data);
static DBusConnection *bus = NULL;
static GHashTable *live_refs = NULL;
GMainLoop *atspi_main_loop;
const char *atspi_path_dec = ATSPI_DBUS_PATH_DEC;
const char *atspi_path_registry = ATSPI_DBUS_PATH_REGISTRY;
const char *atspi_path_root = ATSPI_DBUS_PATH_ROOT;
......@@ -859,8 +861,6 @@ atspi_init (void)
return 0;
}
static GMainLoop *mainloop;
/**
* atspi_event_main:
*
......@@ -873,8 +873,9 @@ atspi_init (void)
void
atspi_event_main (void)
{
mainloop = g_main_loop_new (NULL, FALSE);
g_main_loop_run (mainloop);
atspi_main_loop = g_main_loop_new (NULL, FALSE);
g_main_loop_run (atspi_main_loop);
atspi_main_loop = NULL;
}
/**
......@@ -886,7 +887,7 @@ atspi_event_main (void)
void
atspi_event_quit (void)
{
g_main_loop_quit (mainloop);
g_main_loop_quit (atspi_main_loop);
}
/**
......@@ -1019,6 +1020,7 @@ _atspi_dbus_get_property (gpointer obj, const char *interface, const char *name,
DBusError err;
dbus_bool_t retval = FALSE;
AtspiObject *aobj = ATSPI_OBJECT (obj);
char expected_type = (type [0] == '(' ? 'r' : type [0]);
if (!aobj)
return FALSE;
......@@ -1066,7 +1068,7 @@ _atspi_dbus_get_property (gpointer obj, const char *interface, const char *name,
goto done;
}
dbus_message_iter_recurse (&iter, &iter_variant);
if (dbus_message_iter_get_arg_type (&iter_variant) != type[0])
if (dbus_message_iter_get_arg_type (&iter_variant) != expected_type)
{
g_warning (_("atspi_dbus_get_property: Wrong type: expected %s, got %c\n"), type, dbus_message_iter_get_arg_type (&iter_variant));
goto done;
......
......@@ -618,15 +618,15 @@ atspi_table_remove_column_selection (AtspiTable *obj,
* @obj: a pointer to the #AtspiTable implementor on which to operate.
* @index: the index of the Table child whose row/column
* extents are requested.
* @row: back-filled with the first table row associated with
* @row: (out): back-filled with the first table row associated with
* the cell with child index \c index.
* @col: back-filled with the first table column associated
* @col: (out): back-filled with the first table column associated
* with the cell with child index \c index.
* @row_extents: back-filled with the number of table rows
* @row_extents: (out): back-filled with the number of table rows
* across which child \c i extends.
* @col_extents: back-filled with the number of table columns
* @col_extents: (out): back-filled with the number of table columns
* across which child \c i extends.
* @is_selected: a boolean which is back-filled with \c True
* @is_selected: (out): a boolean which is back-filled with \c True
* if the child at index \c i corresponds to a selected table cell,
* \c False otherwise.
*
......
AC_INIT([at-spi2-core], [2.0.1], [accessibility-atspi@lists.linux-foundation.org])
AC_INIT([at-spi2-core], [2.0.2], [accessibility-atspi@lists.linux-foundation.org])
AC_PREREQ([2.59])
AC_CONFIG_AUX_DIR(config)
AC_CONFIG_MACRO_DIR([m4])
......
......@@ -63,34 +63,41 @@ DBusMessage *
dbind_send_and_allow_reentry (DBusConnection * bus, DBusMessage * message, DBusError *error)
{
DBusPendingCall *pending;
SpiReentrantCallClosure closure;
SpiReentrantCallClosure *closure;
const char *unique_name = dbus_bus_get_unique_name (bus);
const char *destination = dbus_message_get_destination (message);
struct timeval tv;
DBusMessage *ret;
if (unique_name && destination &&
strcmp (destination, unique_name) != 0)
return dbus_connection_send_with_reply_and_block (bus, message, dbind_timeout, error);
closure.reply = NULL;
closure = g_new0 (SpiReentrantCallClosure, 1);
closure->reply = NULL;
atspi_dbus_connection_setup_with_g_main(bus, NULL);
if (!dbus_connection_send_with_reply (bus, message, &pending, dbind_timeout))
return NULL;
if (!pending)
return NULL;
dbus_pending_call_set_notify (pending, set_reply, (void *) &closure, NULL);
dbus_pending_call_set_notify (pending, set_reply, (void *) closure, g_free);
closure.reply = NULL;
closure->reply = NULL;
gettimeofday (&tv, NULL);
while (!closure.reply)
dbus_pending_call_ref (pending);
while (!closure->reply)
{
if (!dbus_connection_read_write_dispatch (bus, dbind_timeout))
return NULL;
if (time_elapsed (&tv) > dbind_timeout)
return NULL;
if (!dbus_connection_read_write_dispatch (bus, dbind_timeout) ||
time_elapsed (&tv) > dbind_timeout)
{
dbus_pending_call_unref (pending);
return NULL;
}
}
return closure.reply;
ret = closure->reply;
dbus_pending_call_unref (pending);
return ret;
}
dbus_bool_t
......
......@@ -11,6 +11,10 @@ interface org.freestandards.atspi.Application {
/* A string indicating the version of the applications accessibility bridge. */
read property string Version;
/* A string indicating the version of the AT-SPI specification
supported by the application */
read property string AtspiVersion;
/* Gets the locale in which the application is currently running. */
method GetLocale {
LocaleType locale_type;
......
......@@ -3,6 +3,7 @@ ast
bg
bn_IN
ca
ca@valencia
cs
da
de
......@@ -25,6 +26,7 @@ lv
mr
nb
nl
oc
or
pa
pl
......@@ -37,6 +39,7 @@ sr
sr@latin
sq
sv
te
tr
ug
uk
......
# Catalan translation for at-spi2-core.
# Copyright (C) 2011 at-spi2-core's COPYRIGHT HOLDER
# This file is distributed under the same license as the at-spi2-core package.
# David Planella <david.planella@gmail.com>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: at-spi2-core master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-05-29 13:57+0200\n"
"PO-Revision-Date: 2011-04-02 20:16+0200\n"
"Last-Translator: David Planella <david.planella@gmail.com>\n"
"Language-Team: Catalan <gnome-dl@llistes.softcatala.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../atspi/atspi-misc.c:295
#, c-format
msgid "AT-SPI: Unknown signature %s for RemoveAccessible"
msgstr "AT-SPI: es desconeix la signatura %s per RemoveAccessible"
#: ../atspi/atspi-misc.c:332
#, c-format
msgid "AT-SPI: Error calling getRoot for %s: %s"
msgstr "AT-SPI: s'ha produït un error en cridar getRoot per %s: %s"
#: ../atspi/atspi-misc.c:490
#, c-format
msgid "AT-SPI: Error in GetItems, sender=%s, error=%s"
msgstr "AT-SPI: s'ha produït un error a GetItems, remitent=%s, error=%s"
#: ../atspi/atspi-misc.c:592
#, c-format
msgid ""
"AT-SPI: Called _atspi_dbus_return_accessible_from_message with strange "
"signature %s"
msgstr ""
"AT-SPI: s'ha cridat _atspi_dbus_return_accessible_from_message amb una "
"signatura estranya: %s"
#: ../atspi/atspi-misc.c:621
#, c-format
msgid ""
"AT-SPI: Called _atspi_dbus_return_hyperlink_from_message with strange "
"signature %s"
msgstr ""
"AT-SPI: s'ha cridat _atspi_dbus_return_hyperlink_from_message amb una "
"signatura estranya: %s"
#: ../atspi/atspi-misc.c:646
#, c-format
msgid "AT-SPI: AddAccessible with unknown signature %s\n"
msgstr "AT-SPI: AddAccessible té una signatura desconeguda: %s\n"
#: ../atspi/atspi-misc.c:938 ../atspi/atspi-misc.c:989
#: ../atspi/atspi-misc.c:1031
msgid "The application no longer exists"
msgstr "L'aplicació ja no existeix"
#: ../atspi/atspi-misc.c:1067
#, c-format
msgid "AT-SPI: expected a variant when fetching %s from interface %s; got %s\n"
msgstr ""
"AT-SPI: s'esperava una variant en recollir %s a la interfície %s, però s'ha "
"obtingut %s\n"
#: ../atspi/atspi-misc.c:1073
#, c-format
msgid "atspi_dbus_get_property: Wrong type: expected %s, got %c\n"
msgstr ""
"atspi_dbus_get_property: tipus incorrecte: s'esperava un %s, però s'ha "
"obtingut un %c\n"
#: ../atspi/atspi-misc.c:1216
#, c-format
msgid "AT-SPI: Unknown interface %s"
msgstr "AT-SPI: interfície desconeguda %s"
#: ../atspi/atspi-misc.c:1236
#, c-format
msgid "AT-SPI: expected 2 values in states array; got %d\n"
msgstr ""
"AT-SPI: s'esperaven 2 valors a la matriu d'estats, però se n'han obtingut "
"%d\n"
#: ../atspi/atspi-accessible.c:1060
msgid "Streamable content not implemented"
msgstr "No s'ha implementat el contingut en flux"
#: ../atspi/atspi-event-listener.c:510
msgid ""
"called atspi_event_listener_register_from_callback with a NULL event_type"
msgstr ""
"s'ha cridat la funció «atspi_event_listener_register_from_callback» amb un "
"«event_type» nul"
#: ../atspi/atspi-event-listener.c:777
#, c-format
msgid "Got invalid signature %s for signal %s from interface %s\n"
msgstr ""
"S'ha obtingut una signatura no vàlida (%s) per al senyal %s de la interfície "
"%s\n"
#~ msgid "AT-SPI: Could not get the display\n"
#~ msgstr "AT-SPI: no s'ha pogut obtenir la pantalla\n"
#~ msgid "AT-SPI: Accessibility bus not found - Using session bus.\n"
#~ msgstr ""
#~ "AT-SPI: no s'ha trobat el bus d'accessibilitat - s'utilitzarà el bus de "
#~ "la sessió.\n"
#~ msgid "AT-SPI: Couldn't connect to bus: %s\n"
#~ msgstr "AT-SPI: no s'ha pogut connectar al bus: %s\n"
#~ msgid "AT-SPI: Couldn't register with bus: %s\n"
#~ msgstr "AT-SPI: no s'ha pogut registrar al bus: %s\n"
#~ msgid "AT-SPI: Got error: %s\n"
#~ msgstr "AT-SPI: s'ha obtingut l'error: %s\n"
# Occitan translation for at-spi2-core.
# Copyright (C) 2011 Listed translators
# This file is distributed under the same license as the at-spi2-core package.
# Claude Paroz <claude@2xlibre.net>, 2011.
# Cédric Valmary (Tot en òc) <cvalmary@yahoo.fr>, 2015.
# Cédric VALMARY <cvalmary@yahoo.fr>, 2016.
msgid ""
msgstr ""
"Project-Id-Version: at-spi2-core master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=at-"
"spi&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-05-19 14:55+0000\n"
"PO-Revision-Date: 2016-10-03 09:52+0200\n"
"Last-Translator: Cédric VALMARY <cvalmary@yahoo.fr>\n"
"Language-Team: Tot en òc (totenoc.eu)\n"
"Language: oc\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../atspi/atspi-misc.c:295
#, c-format
msgid "AT-SPI: Unknown signature %s for RemoveAccessible"
msgstr "AT-SPI : signatura %s desconeguda per RemoveAccessible"
#: ../atspi/atspi-misc.c:332
#, c-format
msgid "AT-SPI: Error calling getRoot for %s: %s"
msgstr "AT-SPI : error al moment de l'apèl a getRoot per %s : %s"
#: ../atspi/atspi-misc.c:490
#, c-format
msgid "AT-SPI: Error in GetItems, sender=%s, error=%s"
msgstr "AT-SPI : error dins GetItems, expeditor=%s, error=%s"
#: ../atspi/atspi-misc.c:592
#, c-format
msgid ""
"AT-SPI: Called _atspi_dbus_return_accessible_from_message with strange "
"signature %s"
msgstr ""
"AT-SPI : apèl a _atspi_dbus_return_accessible_from_message amb una signatura "
"%s estranha"
#: ../atspi/atspi-misc.c:621
#, c-format
msgid ""
"AT-SPI: Called _atspi_dbus_return_hyperlink_from_message with strange "
"signature %s"
msgstr ""
"AT-SPI : apèl a _atspi_dbus_return_hyperlink_from_message amb una signatura %"
"s estranha"
#: ../atspi/atspi-misc.c:646
#, c-format
msgid "AT-SPI: AddAccessible with unknown signature %s\n"
msgstr "AT-SPI : AddAccessible amb una signatura %s desconeguda\n"
#: ../atspi/atspi-misc.c:938 ../atspi/atspi-misc.c:989
#: ../atspi/atspi-misc.c:1031
msgid "The application no longer exists"
msgstr "L'aplicacion existís pas mai"
#: ../atspi/atspi-misc.c:1067
#, c-format
msgid "AT-SPI: expected a variant when fetching %s from interface %s; got %s\n"
msgstr ""
"AT-SPI : un tipe variant èra esperat al moment de l'obtencion de %s sus "
"l'interfàcia %s ; %s obtengut\n"
#: ../atspi/atspi-misc.c:1073
#, c-format
msgid "atspi_dbus_get_property: Wrong type: expected %s, got %c\n"
msgstr "atspi_dbus_get_property : tipe erronèu : %s esperat, %c obtengut\n"
#: ../atspi/atspi-misc.c:1216
#, c-format
msgid "AT-SPI: Unknown interface %s"
msgstr "AT-SPI : interfàcia %s desconeguda"
#: ../atspi/atspi-misc.c:1236
#, c-format
msgid "AT-SPI: expected 2 values in states array; got %d\n"
msgstr ""
"AT-SPI : 2 valors èran esperadas dins lo tablèu « states » ; %d obtenguts\n"
#: ../atspi/atspi-accessible.c:1060
msgid "Streamable content not implemented"
msgstr "Contengut de tipe flux non implementat"
#: ../atspi/atspi-event-listener.c:510
msgid ""
"called atspi_event_listener_register_from_callback with a NULL event_type"
msgstr ""
"atspi_event_listener_register_from_callback apelat amb un event_type de "
"valor NULL"
#: ../atspi/atspi-event-listener.c:777
#, c-format
msgid "Got invalid signature %s for signal %s from interface %s\n"
msgstr ""
"Signatura %s invalida obtenguda pel senhal %s a partir de l'interfàcia %s\n"
#~ msgid "AT-SPI: Could not get the display\n"
#~ msgstr "AT-SPI : impossible d'accedir a l'afichatge\n"
#~ msgid "AT-SPI: Accessibility bus not found - Using session bus.\n"
#~ msgstr ""
#~ "AT-SPI : bus d'accessibilitat introbable, utilizacion del bus de session.\n"
#~ msgid "AT-SPI: Couldn't connect to bus: %s\n"
#~ msgstr "AT-SPI : impossible de se connectar al bus : %s\n"
#~ msgid "AT-SPI: Couldn't register with bus: %s\n"
#~ msgstr "AT-SPI : impossible de s'enregistrar sul bus : %s\n"
......@@ -3,20 +3,22 @@
# This file is distributed under the same license as the at-spi2-core package.
#
# Krishnababu Krothapalli <kkrothap@redhat.com>, 2011.
# Praveen Illa <mail2ipn@gmail.com>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: at-spi2-core master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
"cgi?product=at-spi&component=general\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=at-"
"spi&component=general\n"
"POT-Creation-Date: 2011-02-08 18:33+0000\n"
"PO-Revision-Date: 2011-02-09 16:16+0530\n"
"Last-Translator: Krishnababu Krothapalli <kkrothap@redhat.com>\n"
"Language-Team: Telugu <te@li.org>\n"
"PO-Revision-Date: 2011-11-26 20:14+0530\n"
"Last-Translator: Praveen Illa <mail2ipn@gmail.com>\n"
"Language-Team: Telugu <indlinux-telugu@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 1.1\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
#: ../atspi/atspi-misc.c:290
#, c-format
......@@ -39,8 +41,7 @@ msgid ""
"AT-SPI: Called _atspi_dbus_return_accessible_from_message with strange "
"signature %s"
msgstr ""
"AT-SPI: కొత్త సంతకం %sతో _atspi_dbus_return_accessible_from_message "
"పిలువబడింది"
"AT-SPI: కొత్త సంతకం %sతో _atspi_dbus_return_accessible_from_message పిలువబడింది"
#: ../atspi/atspi-misc.c:616
#, c-format
......@@ -48,8 +49,7 @@ msgid ""
"AT-SPI: Called _atspi_dbus_return_hyperlink_from_message with strange "
"signature %s"
msgstr ""
"AT-SPI: కొత్త సంతకం %s తో _atspi_dbus_return_hyperlink_from_message "
"పిలువబడింది"
"AT-SPI: కొత్త సంతకం %s తో _atspi_dbus_return_hyperlink_from_message పిలువబడింది"
#: ../atspi/atspi-misc.c:641
#, c-format
......@@ -77,24 +77,22 @@ msgstr "AT-SPI: బస్‌తో నమోదు కాలేకపోయి
#: ../atspi/atspi-misc.c:1002 ../atspi/atspi-misc.c:1053
#: ../atspi/atspi-misc.c:1094
msgid "The application no longer exists"
msgstr "అనువర్తనము యింక లేదు"
msgstr "అనువర్తనం ఇక ఏమాత్రం లేదు"
#: ../atspi/atspi-misc.c:1130
#, c-format
msgid "AT-SPI: expected a variant when fetching %s from interface %s; got %s\n"
msgstr ""
"AT-SPI: %sను ఇంటర్ఫేస్ %s నుండి తెస్తున్నప్పుడు వేరియంట్‌ను వూహించడమైంది; "
"పొందినది %s\n"
msgstr "AT-SPI: %sను ఇంటర్ఫేస్ %s నుండి తెస్తున్నప్పుడు వేరియంట్‌ను వూహించడమైంది; పొందినది %s\n"
#: ../atspi/atspi-misc.c:1136
#, c-format
msgid "atspi_dbus_get_property: Wrong type: expected %s, got %c\n"
msgstr "atspi_dbus_get_property: సరికాని రకం: వూహించినది %s, పొందినది %c\n"
msgstr "atspi_dbus_get_property: తప్పుడు రకం: %s ఊహించినది, %c పొందినది\n"
#: ../atspi/atspi-misc.c:1279
#, c-format
msgid "AT-SPI: Unknown interface %s"
msgstr "AT-SPI: తెలియని యింటర్ఫేస్ %s"
msgstr "AT-SPI: తెలియని అంతరవర్తి %s"
#: ../atspi/atspi-misc.c:1299
#, c-format
......@@ -103,7 +101,7 @@ msgstr "AT-SPI: స్టేట్స్ యెరేనందు 2 విలు
#: ../atspi/atspi-accessible.c:997
msgid "Streamable content not implemented"
msgstr "స్ట్రీమ్ చేయదగు సారము వృద్దిపరచలేదు"
msgstr "ప్రవహించదగిన విషయం అమలుపరుచలేదు"
#: ../atspi/atspi-event-listener.c:510
msgid ""
......@@ -114,5 +112,4 @@ msgstr ""
#: ../atspi/atspi-event-listener.c:777
#, c-format
msgid "Got invalid signature %s for signal %s from interface %s\n"
msgstr "చెల్లని సంతకం %s ను సంకేతం %s కొరకు యింటర్ఫేస్ %s నుంది పొందింది\n"
msgstr "చెల్లని సంతకం %s ను సంకేతం %s కొరకు %s అంతరవర్తి నుండి పొందింది \n"
......@@ -6,10 +6,11 @@
msgid ""
msgstr ""
"Project-Id-Version: at-spi2-core master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=at-spi&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-25 19:34+0000\n"
"PO-Revision-Date: 2011-03-26 16:40+0700\n"
"Last-Translator: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=at-"
"spi&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-05-22 23:37+0000\n"
"PO-Revision-Date: 2011-05-22 23:00+0700\n"
"Last-Translator: Trương Ứng Minh <jushin1993@gmail.com>\n"
"Language-Team: Vietnamese <gnomevi-list@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
......@@ -19,12 +20,12 @@ msgstr ""
#: ../atspi/atspi-misc.c:290
#, c-format
msgid "AT-SPI: Unknown signature %s for RemoveAccessible"
msgstr "AT-SPI: Chữ ký lạ %s đối với RemoveAccessible"
msgstr "AT-SPI: Ký hiệu lạ %s đối với RemoveAccessible"
#: ../atspi/atspi-misc.c:327
#, c-format
msgid "AT-SPI: Error calling getRoot for %s: %s"
msgstr "AT-SPI: Lỗi gọi getRoot cho %s: %s"
msgstr "AT-SPI: Lỗi khi gọi getRoot cho %s: %s"
#: ../atspi/atspi-misc.c:485
#, c-format
......@@ -48,7 +49,7 @@ msgstr "AT-SPI: _atspi_dbus_return_hyperlink_from_message được gọi với c
#: ../atspi/atspi-misc.c:641
#, c-format
msgid "AT-SPI: AddAccessible with unknown signature %s\n"
msgstr "AT-SPI: AddAccessible với chữ ký lạ %s\n"
msgstr "AT-SPI: AddAccessible với ký hiệu lạ %s\n"
#: ../atspi/atspi-misc.c:934 ../atspi/atspi-misc.c:985
#: ../atspi/atspi-misc.c:1026
......@@ -59,6 +60,7 @@ msgstr "Ứng dụng không còn tồn tại"
#, c-format
msgid "AT-SPI: expected a variant when fetching %s from interface %s; got %s\n"
msgstr ""
"AT-SPI: chờ một biến thể xuất hiện khi lấy %s từ giao diện %s; lấy %s\n"
#: ../atspi/atspi-misc.c:1068
#, c-format
......@@ -68,7 +70,7 @@ msgstr "atspi_dbus_get_property: Sai kiểu: muốn %s, được %c\n"
#: ../atspi/atspi-misc.c:1211
#, c-format
msgid "AT-SPI: Unknown interface %s"
msgstr "AT-SPI: Giao tiếp lạ %s"
msgstr "AT-SPI: Giao diện không rõ %s"
#: ../atspi/atspi-misc.c:1231
#, c-format
......
......@@ -6,6 +6,7 @@
<property name="Version" type="s" access="read"/>
<property name="AtspiVersion" type="s" access="read"/>
<property name="Id" type="i" access="read"/>
<method name="GetLocale">
......