[at-spi2-atk] Event fixes



commit b149f6ecf0651927a33cc3e4e4a95e886e60fd21
Author: Mike Gorse <mgorse novell com>
Date:   Tue Jan 19 10:13:05 2010 -0500

    Event fixes

 atk-adaptor/adaptors/cache-adaptor.c |    4 ++--
 atk-adaptor/event.c                  |   20 ++++++++++++++++++--
 2 files changed, 20 insertions(+), 4 deletions(-)
---
diff --git a/atk-adaptor/adaptors/cache-adaptor.c b/atk-adaptor/adaptors/cache-adaptor.c
index 265b0bc..31f39c8 100644
--- a/atk-adaptor/adaptors/cache-adaptor.c
+++ b/atk-adaptor/adaptors/cache-adaptor.c
@@ -218,8 +218,8 @@ static void
 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);
 }
 
 /*---------------------------------------------------------------------------*/
diff --git a/atk-adaptor/event.c b/atk-adaptor/event.c
index f9f78f2..3ba1ba8 100644
--- a/atk-adaptor/event.c
+++ b/atk-adaptor/event.c
@@ -258,6 +258,23 @@ append_object (DBusMessageIter *iter,
   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:
@@ -297,8 +314,7 @@ emit_event (AtkObject  *obj,
    * 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);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]