append_accessible_hf (gpointer key, gpointer obj_data, gpointer data)
{
/* Make sure it isn't a hyperlink */
- if (ATK_IS_OBJECT (obj_data))
- append_cache_item (ATK_OBJECT (obj_data), data);
+ if (ATK_IS_OBJECT (key))
+ append_cache_item (ATK_OBJECT (key), data);
}
/*---------------------------------------------------------------------------*/
spi_object_append_v_reference (iter, ATK_OBJECT (val));
}
+static gchar *
+signal_name_to_dbus (const gchar *s)
+{
+ gchar *ret = g_strdup (s);
+ gchar *t;
+
+ if (!ret)
+ return NULL;
+ ret [0] = toupper (ret [0]);
+ while ((t = strchr (ret, '-')) != NULL)
+ {
+ memmove (t, t + 1, strlen (t));
+ *t = toupper (*t);
+ }
+ return ret;
+}
+
/*
* Emits an AT-SPI event.
* AT-SPI events names are split into three parts:
* name in D-Bus (Why not??!?) The names need converting
* on this side, and again on the client side.
*/
- cname = g_strdup(major);
- while ((t = strchr(cname, '-')) != NULL) *t = '_';
+ cname = signal_name_to_dbus (major);
sig = dbus_message_new_signal(path, klass, cname);
g_free(cname);