diff options
author | michael <michael@e2bd861d-eb25-0410-b326-f6ed22b6b98c> | 2002-01-11 17:00:10 +0000 |
---|---|---|
committer | michael <michael@e2bd861d-eb25-0410-b326-f6ed22b6b98c> | 2002-01-11 17:00:10 +0000 |
commit | 1fb3c4bc6ba863a4dec09c0b1097b9e6c752d766 (patch) | |
tree | d42425a69cb3e93a27094b8ad81d1597d76955ec /registryd/deviceeventcontroller.h | |
parent | 1827ea39981abc5bcc9ee60b2ec7daf4836b6798 (diff) | |
download | at-spi2-core-1fb3c4bc6ba863a4dec09c0b1097b9e6c752d766.tar.gz |
2002-01-11 Michael Meeks <michael@ximian.com>
* registryd/deviceeventcontroller.c
(spi_device_event_controller_forward_key_event): kill
XUngrabKey / XKeyGrab race.
(spi_controller_grab_keyboard): rename to
(spi_controller_update_key_grabs): this, and deal
with incremental adding / removing grabs more
sensibly.
(_register_keygrab): ensure we're not pending a remove.
(spi_grab_mask_free): impl.
(spi_controller_register_global_keygrabs): split out
common code into:
(handle_keygrab): impl.
(_deregister_keygrab): impl.
(spi_controller_deregister_global_keygrabs): impl.
(spi_controller_update_key_grabs): re-issue the grab if
we just recieved a notification.
* test/test-simple.c (key_listener_cb): remove debug.
* registryd/deviceeventcontroller.c
(spi_controller_register_device_listener): after
registering a global keygrab, actualy register it !
don't wait for a timeout; doh !
* registryd/deviceeventcontroller.[ch]: s/DeviceEvent/DE/
to make it more readable / manipulable.
s/grabmask/grab_mask/ s/refcount/ref_count/
s/keyval/key_val/ s/modmask/mod_mask
2002-01-08 Michael Meeks <michael@ximian.com>
* registryd/deviceeventcontroller.c
(spi_controller_register_with_devices): use gdk calls to
setup a filter.
(global_filter_fn): implement the filter.
(spi_device_event_controller_check_key_event): rename to
(spi_device_event_controller_forward_key_event): this & upd.
(spi_get_display): replace with GDK_DISPLAY.
* registryd/deviceeventcontroller.c
(spi_controller_deregister_device_listener): unroll into
(impl_deregister_keystroke_listener): here to simplify.
(spi_controller_register_global_keygrabs): split cut and
paste (!) out into (_register_keygrab): here, shorter & sweeter.
(spi_controller_deregister_device_listener): remove.
(impl_register_mouse_listener): remove, no mouse listener
support in at-spi-1.0
* registryd/registry.c
(_device_event_controller_hook): kill.
(spi_registry_init): upd.
* registryd/deviceeventcontroller.c
(spi_device_event_controller_class_init): upd.
(spi_check_key_event): merge into.
(spi_device_event_controller_check_key_event):
here and kill strange static ev init, don't leak
the x_event - nor dynamicaly allocate it.
* registryd/registry-main.c (main): re-direct
timeout to remove strange vtable mess.
* registryd/deviceeventcontroller.c
(remove_listener_cb): impl.
(spi_controller_deregister_device_listener):
fix re-enterancy hazard.
2002-01-07 Michael Meeks <michael@ximian.com>
* registryd/deviceeventcontroller.c
(spi_device_event_controller_new): upd.
(impl_notify_listeners_sync): upd. debug.
(spi_notify_keylisteners): fix re-enterancy hazards,
prettify, remove O(n*n) iteration.
(spi_controller_grab_keyboard): fix iteration.
(spi_check_key_event): re-format to suit coding style.
Clean all the warnings - we're warning free.
* registryd/deviceeventcontroller.h:
* registryd/registry.h: make mutualy referential with
typesafe forward references instead of (!) void pointer
hacks.
git-svn-id: http://svn.gnome.org/svn/at-spi/trunk@219 e2bd861d-eb25-0410-b326-f6ed22b6b98c
Diffstat (limited to 'registryd/deviceeventcontroller.h')
-rw-r--r-- | registryd/deviceeventcontroller.h | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/registryd/deviceeventcontroller.h b/registryd/deviceeventcontroller.h index a9430631..8431193a 100644 --- a/registryd/deviceeventcontroller.h +++ b/registryd/deviceeventcontroller.h @@ -27,32 +27,36 @@ #include <libspi/Accessibility.h> #include <libspi/keystrokelistener.h> +typedef struct _SpiDEController SpiDEController; + +#include "registry.h" + G_BEGIN_DECLS #define SPI_DEVICE_EVENT_CONTROLLER_TYPE (spi_device_event_controller_get_type ()) -#define SPI_DEVICE_EVENT_CONTROLLER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_DEVICE_EVENT_CONTROLLER_TYPE, SpiDeviceEventController)) -#define SPI_DEVICE_EVENT_CONTROLLER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SPI_DEVICE_EVENT_CONTROLLER_TYPE, SpiDeviceEventControllerClass)) +#define SPI_DEVICE_EVENT_CONTROLLER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_DEVICE_EVENT_CONTROLLER_TYPE, SpiDEController)) +#define SPI_DEVICE_EVENT_CONTROLLER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SPI_DEVICE_EVENT_CONTROLLER_TYPE, SpiDEControllerClass)) #define SPI_IS_DEVICE_EVENT_CONTROLLER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SPI_DEVICE_EVENT_CONTROLLER_TYPE)) #define SPI_IS_DEVICE_EVENT_CONTROLLER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_DEVICE_EVENT_CONTROLLER_TYPE)) -#define SPI_DEVICE_EVENT_CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SPI_DEVICE_EVENT_CONTROLLER_TYPE, SpiDeviceEventControllerClass)) +#define SPI_DEVICE_EVENT_CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SPI_DEVICE_EVENT_CONTROLLER_TYPE, SpiDEControllerClass)) -typedef struct { +struct _SpiDEController { BonoboObject parent; - void *registry; - GList *key_listeners; - GList *mouse_listeners; - GList *keygrabs_list; -} SpiDeviceEventController; + + SpiRegistry *registry; + GList *key_listeners; + GList *mouse_listeners; + GList *keygrabs_list; +}; typedef struct { BonoboObjectClass parent_class; + POA_Accessibility_DeviceEventController__epv epv; - gboolean (*check_key_event) (SpiDeviceEventController *controller); -} SpiDeviceEventControllerClass; +} SpiDEControllerClass; -GType spi_device_event_controller_get_type (void); -SpiDeviceEventController *spi_device_event_controller_new (void *registry); -gboolean spi_device_event_controller_check_key_event (SpiDeviceEventController *controller); +GType spi_device_event_controller_get_type (void); +SpiDEController *spi_device_event_controller_new (SpiRegistry *registry); G_END_DECLS |