X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=atk-adaptor%2Fevent.c;h=efd9c205a07b5778d925279cf96baec631e702a1;hb=c74fce065b40f0fb2e82bf740bf7f2744eda4466;hp=6cf19faf202bf1327c24d1e6c244385c4abb5655;hpb=7787ad5cbdf4b1f130008a2506463b6d824db8df;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/atk-adaptor/event.c b/atk-adaptor/event.c index 6cf19fa..efd9c20 100644 --- a/atk-adaptor/event.c +++ b/atk-adaptor/event.c @@ -64,9 +64,8 @@ switch_main_context (GMainContext *cnx) { GList *list; -#ifndef DISABLE_P2P - atspi_dbus_server_setup_with_g_main (spi_global_app_data->server, cnx); -#endif + if (spi_global_app_data->server) + atspi_dbus_server_setup_with_g_main (spi_global_app_data->server, cnx); atspi_dbus_connection_setup_with_g_main (spi_global_app_data->bus, cnx); for (list = spi_global_app_data->direct_connections; list; list = list->next) atspi_dbus_connection_setup_with_g_main (list->data, cnx); @@ -233,23 +232,6 @@ spi_atk_bridge_key_listener (AtkKeyEventStruct * event, gpointer data) /*---------------------------------------------------------------------------*/ -static gchar * -convert_signal_name (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; -} - static const void * validate_for_dbus (const gint type, const void *val) @@ -373,7 +355,6 @@ static gboolean signal_is_needed (const gchar *klass, const gchar *major, const gchar *minor) { gchar *data [4]; - GList *iter; event_data *evdata; gboolean ret = FALSE; GList *list; @@ -390,7 +371,11 @@ signal_is_needed (const gchar *klass, const gchar *major, const gchar *minor) * TODO: FOr 2.2, have at-spi2-core define a special "cache listener" for * this instead, so that we don't send these if no one is listening */ if (!g_strcmp0 (data [1], "ChildrenChanged") || - !g_strcmp0 (data [1], "PropertyChange") || + ((!g_strcmp0 (data [1], "PropertyChange")) && + (!g_strcmp0 (data [2], "accessible-name") || + !g_strcmp0 (data [2], "accessible-description") || + !g_strcmp0 (data [2], "accessible-parent") || + !g_strcmp0 (data [2], "accessible-role"))) || !g_strcmp0 (data [1], "StateChanged")) { g_free (data [2]); @@ -455,12 +440,12 @@ emit_event (AtkObject *obj, void (*append_variant) (DBusMessageIter *, const char *, const void *)) { DBusConnection *bus = spi_global_app_data->bus; - const char *path; + char *path; char *minor_dbus; - gchar *cname, *t; + gchar *cname; DBusMessage *sig; - DBusMessageIter iter, iter_struct; + DBusMessageIter iter; if (!klass) klass = ""; if (!major) major = ""; @@ -471,6 +456,7 @@ emit_event (AtkObject *obj, return; path = spi_register_object_to_path (spi_global_register, G_OBJECT (obj)); + g_return_if_fail (path != NULL); /* * This is very annoying, but as '-' isn't a legal signal @@ -536,7 +522,7 @@ property_event_listener (GSignalInvocationHint * signal_hint, const gchar *pname = NULL; AtkObject *otemp; - const gchar *s1, s2; + const gchar *s1; gint i; accessible = g_value_get_object (¶m_values[0]); @@ -640,7 +626,7 @@ state_event_listener (GSignalInvocationHint * signal_hint, const GValue * param_values, gpointer data) { AtkObject *accessible; - gchar *pname; + const gchar *pname; guint detail1; accessible = ATK_OBJECT (g_value_get_object (¶m_values[0])); @@ -733,7 +719,7 @@ bounds_event_listener (GSignalInvocationHint * signal_hint, AtkObject *accessible; AtkRectangle *atk_rect; GSignalQuery signal_query; - const gchar *name, *s; + const gchar *name; g_signal_query (signal_hint->signal_id, &signal_query); name = signal_query.signal_name; @@ -765,7 +751,7 @@ active_descendant_event_listener (GSignalInvocationHint * signal_hint, AtkObject *accessible; AtkObject *child; GSignalQuery signal_query; - const gchar *name, *minor; + const gchar *name; gint detail1; g_signal_query (signal_hint->signal_id, &signal_query); @@ -774,7 +760,6 @@ active_descendant_event_listener (GSignalInvocationHint * signal_hint, accessible = ATK_OBJECT (g_value_get_object (¶m_values[0])); child = ATK_OBJECT (g_value_get_pointer (¶m_values[1])); g_return_val_if_fail (ATK_IS_OBJECT (child), TRUE); - minor = g_quark_to_string (signal_hint->detail); detail1 = atk_object_get_index_in_parent (child); @@ -870,7 +855,8 @@ text_insert_event_listener (GSignalInvocationHint * signal_hint, guint text_changed_signal_id; GSignalQuery signal_query; const gchar *name; - gchar *minor, *text; + const gchar *minor_raw, *text; + gchar *minor; gint detail1 = 0, detail2 = 0; accessible = ATK_OBJECT (g_value_get_object (¶m_values[0])); @@ -883,9 +869,9 @@ text_insert_event_listener (GSignalInvocationHint * signal_hint, /* Add the insert and keep any detail coming from atk */ - minor = g_quark_to_string (signal_hint->detail); - if (minor) - minor = g_strconcat ("insert:", minor, NULL); + minor_raw = g_quark_to_string (signal_hint->detail); + if (minor_raw) + minor = g_strconcat ("insert:", minor_raw, NULL); else minor = g_strdup ("insert"); @@ -918,7 +904,8 @@ text_remove_event_listener (GSignalInvocationHint * signal_hint, guint text_changed_signal_id; GSignalQuery signal_query; const gchar *name; - gchar *minor, *text; + const gchar *minor_raw, *text; + gchar *minor; gint detail1 = 0, detail2 = 0; accessible = ATK_OBJECT (g_value_get_object (¶m_values[0])); @@ -929,12 +916,11 @@ text_remove_event_listener (GSignalInvocationHint * signal_hint, g_signal_query (text_changed_signal_id, &signal_query); name = signal_query.signal_name; - minor = g_quark_to_string (signal_hint->detail); + minor_raw = g_quark_to_string (signal_hint->detail); /* Add the delete and keep any detail coming from atk */ - minor = g_quark_to_string (signal_hint->detail); - if (minor) - minor = g_strconcat ("delete:", minor, NULL); + if (minor_raw) + minor = g_strconcat ("delete:", minor_raw, NULL); else minor = g_strdup ("delete"); @@ -1034,6 +1020,7 @@ children_changed_event_listener (GSignalInvocationHint * signal_hint, detail1); emit_event (accessible, ITF_EVENT_OBJECT, name, minor, detail1, detail2, "(so)", ao, append_object); + g_object_unref (ao); } else { @@ -1046,24 +1033,6 @@ children_changed_event_listener (GSignalInvocationHint * signal_hint, /*---------------------------------------------------------------------------*/ -static void -toplevel_added_event_listener (AtkObject * accessible, - guint index, AtkObject * child) -{ - emit_event (accessible, ITF_EVENT_OBJECT, "children-changed", "add", index, 0, - "(so)", child, append_object); -} - -static void -toplevel_removed_event_listener (AtkObject * accessible, - guint index, AtkObject * child) -{ - emit_event (accessible, ITF_EVENT_OBJECT, "children-changed", "remove", index, 0, - "(so)", child, append_object); -} - -/*---------------------------------------------------------------------------*/ - /* * Generic signal converter and forwarder. *