#ifndef SPI_REGISTRY_H_
#define SPI_REGISTRY_H_
-#include <glib/gmain.h>
-#include <gdk/gdk.h>
-#include <libspi/listener.h>
+#include <glib.h>
+#include <glib-object.h>
-typedef struct _SpiRegistry SpiRegistry;
+#include <droute/droute.h>
-#include "desktop.h"
-#include "deviceeventcontroller.h"
+typedef struct _SpiRegistry SpiRegistry;
+typedef struct _SpiRegistryClass SpiRegistryClass;
G_BEGIN_DECLS
#define SPI_IS_REGISTRY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_REGISTRY_TYPE))
struct _SpiRegistry {
- SpiListener parent;
+ GObject parent;
+ GSequence *apps;
- GList *object_listeners;
- GList *window_listeners;
- GList *toolkit_listeners;
- GQueue *deferred_event_queue;
- gboolean is_queueing;
- guint exit_notify_timeout;
- SpiDEController *de_controller;
- SpiDesktop *desktop;
+ DBusConnection *bus;
};
-typedef struct {
- SpiListenerClass parent_class;
-
- POA_Accessibility_Registry__epv epv;
-} SpiRegistryClass;
+struct _SpiRegistryClass {
+ GObjectClass parent_class;
+};
GType spi_registry_get_type (void);
-SpiRegistry *spi_registry_new (void);
+SpiRegistry *spi_registry_new (DBusConnection *bus,
+ DRouteContext *droute);
G_END_DECLS