From 5775c75c1098ae723b9a9f4cdb0ec88a2d2d70fd Mon Sep 17 00:00:00 2001 From: padraigo Date: Mon, 19 Aug 2002 09:33:55 +0000 Subject: [PATCH] * atk-bridge/bridge.c (spi_atk_bridge_signal_listener): If signal has detail add it to the type of the event. (bug #90838) git-svn-id: http://svn.gnome.org/svn/at-spi/trunk@332 e2bd861d-eb25-0410-b326-f6ed22b6b98c --- ChangeLog | 6 ++++++ atk-bridge/bridge.c | 18 +++++++++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index b7f6f0c..6487a92 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2002-08-19 Padraig O'Briain + + * atk-bridge/bridge.c (spi_atk_bridge_signal_listener): + If signal has detail add it to the type of the event. + (bug #90838) + 2002-08-12 Michael Meeks * test/test-simple.c (global_listener_cb): bin bogosity. diff --git a/atk-bridge/bridge.c b/atk-bridge/bridge.c index cb46eaa..1731497 100644 --- a/atk-bridge/bridge.c +++ b/atk-bridge/bridge.c @@ -591,6 +591,8 @@ spi_atk_bridge_signal_listener (GSignalInvocationHint *signal_hint, GObject *gobject; GSignalQuery signal_query; const gchar *name; + const gchar *detail; + gint detail1 = 0, detail2 = 0; #ifdef SPI_BRIDGE_DEBUG const gchar *s, *s2; @@ -599,12 +601,17 @@ spi_atk_bridge_signal_listener (GSignalInvocationHint *signal_hint, g_signal_query (signal_hint->signal_id, &signal_query); name = signal_query.signal_name; + if (signal_hint->detail) + detail = g_quark_to_string (signal_hint->detail); + else + detail = NULL; #ifdef SPI_BRIDGE_DEBUG s2 = g_type_name (G_OBJECT_TYPE (g_value_get_object (param_values + 0))); s = atk_object_get_name (ATK_OBJECT (g_value_get_object (param_values + 0))); - fprintf (stderr, "Received signal %s:%s from object %s (gail %s)\n", - g_type_name (signal_query.itype), name, s ? s : "" , s2); + fprintf (stderr, "Received signal %s:%s detail: %s from object %s (gail %s)\n", + g_type_name (signal_query.itype), name, + detail ? detail : "", s ? s : "" , s2); #endif gobject = g_value_get_object (param_values + 0); @@ -613,13 +620,14 @@ spi_atk_bridge_signal_listener (GSignalInvocationHint *signal_hint, if (G_VALUE_TYPE (param_values + 2) == G_TYPE_INT) detail2 = g_value_get_int (param_values + 2); - spi_atk_emit_eventv (gobject, detail1, detail2, "object:%s", name); + if (detail) + spi_atk_emit_eventv (gobject, detail1, detail2, "object:%s:%s", name, detail); + else + spi_atk_emit_eventv (gobject, detail1, detail2, "object:%s", name); return TRUE; } - - static gboolean spi_atk_bridge_window_event_listener (GSignalInvocationHint *signal_hint, guint n_param_values, -- 2.7.4