X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=libspi%2Flistener.c;h=372e86562feee447774b6c9266d20febb9360fa3;hb=fb1e8ce4bd1b97a4029321017b414bd04cef087d;hp=5e6fb41c0097dcf7d7c6fa66d23b4ccf75008184;hpb=5d480319bfc6e106a9cfda9cd4509ec626e9f50d;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/libspi/listener.c b/libspi/listener.c index 5e6fb41..372e865 100644 --- a/libspi/listener.c +++ b/libspi/listener.c @@ -24,13 +24,14 @@ * listener.c: test for accessibility implementation * */ -#define DEBUG_PRINTSTUFF -#ifdef DEBUG_PRINTSTUFF + +#ifdef SPI_DEBUG #include #endif + #include #include -#include +#include /* * This pulls the definition for the BonoboObject (GType) @@ -40,24 +41,25 @@ /* * Our parent Gtk object type */ -#define PARENT_TYPE BONOBO_X_OBJECT_TYPE +#define PARENT_TYPE BONOBO_OBJECT_TYPE /* * A pointer to our parent object class */ -static GObjectClass *listener_parent_class; +static GObjectClass *spi_listener_parent_class; /* * Implemented GObject::finalize */ static void -listener_object_finalize (GObject *object) +spi_listener_object_finalize (GObject *object) { -/* Listener *listener = LISTENER (object); */ - - printf("listener_object_finalize called\n"); +/* SpiListener *listener = SPI_LISTENER (object); */ - listener_parent_class->finalize (object); +#ifdef SPI_DEBUG + fprintf(stderr, "spi_listener_object_finalize called\n"); +#endif + spi_listener_parent_class->finalize (object); } /* @@ -69,68 +71,84 @@ impl_notify_event (PortableServer_Servant servant, const Accessibility_Event *e, CORBA_Environment *ev) { - fprintf (stderr, "notify...\n"); +#ifdef SPI_DEBUG + fprintf (stderr, "notify %s...\n", e->type); fprintf (stderr, "source name: '%s'\n", - Accessibility_Accessible__get_name(e->target, ev)); + Accessibility_Accessible__get_name(e->source, ev)); + if (ev->_major != CORBA_NO_EXCEPTION) { + fprintf(stderr, + ("Accessibility app error: exception during event notification: %s\n"), + CORBA_exception_id(ev)); + exit(-1); + } + /* + fprintf (stderr, "source is component ? : %s\n", + Accessibility_Accessible_queryInterface (e->source, + "IDL:Accessibility/Component:1.0", + ev) + ? "yes" : "no"); + */ +#endif + Accessibility_Accessible_unref (e->source, ev); } static void -listener_class_init (ListenerClass *klass) +spi_listener_class_init (SpiListenerClass *klass) { GObjectClass * object_class = (GObjectClass *) klass; POA_Accessibility_EventListener__epv *epv = &klass->epv; - listener_parent_class = g_type_class_ref (BONOBO_X_OBJECT_TYPE); + spi_listener_parent_class = g_type_class_ref (BONOBO_OBJECT_TYPE); - object_class->finalize = listener_object_finalize; + object_class->finalize = spi_listener_object_finalize; epv->notifyEvent = impl_notify_event; } static void -listener_init (Listener *listener) +spi_listener_init (SpiListener *listener) { } GType -listener_get_type (void) +spi_listener_get_type (void) { static GType type = 0; if (!type) { static const GTypeInfo tinfo = { - sizeof (ListenerClass), + sizeof (SpiListenerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, - (GClassInitFunc) listener_class_init, + (GClassInitFunc) spi_listener_class_init, (GClassFinalizeFunc) NULL, NULL, /* class data */ - sizeof (Listener), + sizeof (SpiListener), 0, /* n preallocs */ - (GInstanceInitFunc) listener_init, + (GInstanceInitFunc) spi_listener_init, NULL /* value table */ }; /* - * Here we use bonobo_x_type_unique instead of + * Here we use bonobo_type_unique instead of * gtk_type_unique, this auto-generates a load of * CORBA structures for us. All derived types must - * use bonobo_x_type_unique. + * use bonobo_type_unique. */ - type = bonobo_x_type_unique ( + type = bonobo_type_unique ( PARENT_TYPE, POA_Accessibility_EventListener__init, NULL, - G_STRUCT_OFFSET (ListenerClass, epv), + G_STRUCT_OFFSET (SpiListenerClass, epv), &tinfo, - "Listener"); + "SpiListener"); } return type; } -Listener * -listener_new (void) +SpiListener * +spi_listener_new (void) { - Listener *retval = - LISTENER (g_object_new (listener_get_type (), NULL)); + SpiListener *retval = + SPI_LISTENER (g_object_new (spi_listener_get_type (), NULL)); return retval; }