- guint listener_id =
- atk_add_global_event_listener (toolkit_listener, g_strconcat (etype->minor, etype->detail, NULL));
+ gint n_desktops;
+ gint n_apps;
+ gint i, j;
+ Accessibility_Desktop desktop;
+ Accessibility_Application app;
+ Accessibility_Registry registry;
+ registry = BONOBO_OBJREF (spi_registry_bonobo_object);
+
+ /* for each app in each desktop, call ...Application_registerToolkitEventListener */
+
+ n_desktops = Accessibility_Registry_getDesktopCount (registry, ev);
+
+ for (i=0; i<n_desktops; ++i)
+ {
+ desktop = Accessibility_Registry_getDesktop (registry, i, ev);
+ n_apps = Accessibility_Desktop__get_childCount (desktop, ev);
+ for (j=0; j<n_apps; ++j)
+ {
+ app = (Accessibility_Application) Accessibility_Desktop_getChildAtIndex (desktop,
+ j,
+ ev);
+ Accessibility_Application_registerToolkitEventListener (app,
+ registry,
+ CORBA_string_dup (etype->event_name),
+
+ ev);
+ }
+ }