90a8809af34b22b13d1537d2625a1e17bc6d0334
[platform/core/uifw/at-spi2-atk.git] / ChangeLog
1 2002-04-18  Michael Meeks  <michael@ximian.com>
2
3         * libspi/Makefile.am: fix stateset install.
4
5 2002-04-17  Bill Haneman <bill.haneman@sun.com>
6
7         * NEWS:
8         Started putting useful info in this file.
9         
10 2002-04-17  Marc Mulcahy <marc.mulcahy@sun.com>
11  
12         * atk-bridge/bridge.c: 
13         Propagate state-changed notifications to ATs
14  
15         * cspi/spi_registry.c: update docs to reflect actual behavior of
16         state-change events.
17
18 2002-04-17  Bill Haneman <bill.haneman@sun.com>
19
20         * configure.in:
21         Incremented version to 0.12.1
22         
23         * util/mag_client.h:
24         Add missing declaration for magnifier_exit, 
25         used by mag_control.c - Forte compiler didn't like
26         the implicit redeclaration of the function :-(
27
28
29 2002-04-16  Bill Haneman <bill.haneman@sun.com>
30
31         * configure.in:
32         Revved version to 0.12 due to API change (see below).
33
34         * cspi/spi-roletypes.h:
35         removed (obsolete) SPI_ROLE_FOCUS_TRAVERSABLE 
36         definition from the inline docs, and added docs
37         for SPI_ROLE_LAST_DEFINED.
38
39         * cspi/spi.h:
40         * cspi/spi_streamablecontent.c:
41         Added missing seek_type parameter to
42         (so far unused) method, 
43         AccessibleStreamableContent_seek().
44         [ RT approval JodyG. ]
45
46         * cspi/spi_event.c:
47         Fixed docs for SPI_createAccessibleKeystrokeListener.
48
49         * cspi/spi_registry.c:
50         Fixed docs for SPI_KEYSET_ALL_KEYS.
51         
52         * docs/reference/cspi/at-spi-cspi-sections.txt:
53         Added a number of missing APIs to SECTIONS.
54         
55 2002-04-16  Bill Haneman <bill.haneman@sun.com>
56
57         * registryd/Makefile.am:
58         * cspi/Makefile.am:
59         * cspi/bonobo/Makefile.am:
60         Add $(X_LIBS) to makefiles.
61
62 2002-04-15  Bill Haneman <bill.haneman@sun.com>
63
64         * configure.in:
65         Revved version to 0.11.
66
67         * libspi/component.c:
68         Added implementation for grabFocus.
69
70         * idl/Accessibility_Component.idl
71         (Accessibility_Component_grabFocus):
72         Made this method return boolean to indicate success or failure, to
73         be consistent with cspi and the corresponding ATK method.
74         
75         * idl/Accessibility_Selection.idl
76         (Accessibility_Selection_selectAll) :
77         Made these methods return boolean to indicate success or
78         failure, to be consistent with cspi and the corresponding ATK methods.
79         
80         * idl/Accessibility_EditableText.idl 
81         (Accessibility_EditableText_setTextContents,
82          Accessibility_EditableText_insertText,
83          Accessibility_EditableText_cutText,
84          Accessibility_EditableText_deleteText,
85          Accessibility_EditableText_pasteText):
86         Made these methods return boolean to indicate
87         success or failure.
88
89         * cspi/spi_editabletext.c:
90         Made these methods return booleans.
91
92         * libspi/selection.c:
93         * libspi/component.c:
94         * libspi/editabletext.c:
95         Connected the boolean returns from ATK
96         to the server-side code referenced above.
97         
98 2002-04-14  Bill Haneman <bill.haneman@sun.com>
99
100         * idl/Accessibility_Table.idl: Added missing methods,
101         Accessibility_Table_addRowSelection,
102         Accessibility_Table_addColumnSelection,
103         Accessibility_Table_removeRowSelection,
104         Accessibility_Table_removeColumnSelection.
105
106         * cspi/spi_table.c:
107         Added C wrappers for above IDL:
108         AccessibleTable_addRowSelection,
109         AccessibleTable_addColumnSelection,
110         AccessibleTable_removeRowSelection,
111         AccessibleTable_removeColumnSelection.
112         
113         * libspi/table.c:
114         Added server-side implementation code for IDL above, connecting
115         to pre-existing ATK api.
116         
117 2002-04-13  Marc Mulcahy <marc.mulcahy@sun.com>
118
119         * idl/Accessibility_State.idl: Made StateSet inherit from BonoboUnknown.
120
121         * libspi/accessible.c: Added implementation fo
122         Accessibility_Accessible_get_state.
123         
124         * libspi/libspi.h: Added stateset.h to the list of includes.
125
126         * libspi/stateset.c: Fixed broken implementation.
127
128 2002-04-13  Bill Haneman <bill.haneman@sun.com>
129
130         * util/magnifier.c:
131         Added implementation code for Accessibility_Magnifier_exit ().
132
133         * util/mag_control.c:
134         Added test code for above method; you can
135         now kill an existing magnifier via 
136         ./mag_control q, from the util directory.
137
138         * test/key-listener-test.c:
139         * test/Makefile.am:
140         Added a new test, for our key listener API.
141
142 2002-04-11  Bill Haneman <bill.haneman@sun.com>
143
144         * test/app.c, test/keysynth-demo.c:
145         * util/magnifier.c:
146         Replace use of snprintf with g_snprintf.
147         (fix for bugzilla 78249)
148
149 2002-03-27  Michael Meeks  <michael@ximian.com>
150
151         * Version 0.10.0
152
153         * util/Makefile.am (INCLUDES): fix.
154         (DONT_DIST_SOURCE): don't distribute the
155         generated files.
156
157         * libspi/Makefile.am (dist-hook): ditto.
158
159 2002-03-27  Padraig O'Briain  <padraig.obriain@sun.com>
160
161         * libspi/hypertext.c:
162         Fix warnings when yelp is used with atk-bridge
163
164 2002-03-21  Michael Meeks  <michael@ximian.com>
165
166         * libspi/application.c (spi_application_new):
167         use spi_accessible_construct so we use the AtkObject
168         cache correctly.
169
170 2002-03-19  Michael Meeks  <michael@ximian.com>
171
172         * registryd/registry.c (desktop_remove_application),
173         (desktop_add_application): clean coding style.
174
175         * registryd/desktop.c (spi_desktop_remove_application),
176         (spi_desktop_add_application): kill re-enterency hazards.
177         (spi_desktop_dispose): remove bogus redundant cast
178         obscuring bug; fix bug too.
179         (spi_desktop_init): make the desktop object immortal.
180
181 2002-03-16 Bill Haneman <bill.haneman@sun.com>
182
183         * test/simple-at.c:
184         Added a #define-guarded tree-traversal step
185         when enumerating the apps (diagnostic tool).
186
187 2002-03-15 Bill Haneman <bill.haneman@sun.com>
188
189         * idl/Accessibility_Role.idl:
190         Added ROLE_DRAWING_AREA which seemed to be missing from the
191         previous commit.
192
193 2002-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
194
195         * cspi/spi-roletypes.h cspi/spi_accessible.c
196         idl/Accessibility_Role.idl libspi/accessible.c: synched up role
197         types with ATK.
198
199         * registryd/desktop.c registryd/desktop.h registryd/registry.c:
200         Added signals to SpiDesktop and callbacks in SpiRegistry to notify
201         AT when applications are added and removed from the desktop.  This
202         reverts the previous broken implementation using the backing
203         AtkObject for the SpiDesktop.
204         
205         2002-03-14  Marc Mulcahy <marc.mulcahy@sun.com>
206
207         * registryd/desktop.c: emit the "children-changed::add" and
208         "children-changed::remove" signals on the backing ATK object for
209         the desktop so AT can tell when applications are started and shut
210         down.
211
212         2002-03-14  Marc Mulcahy <marc.mulcahy@sun.com>
213
214         * cspi/spi_accessible.c: Made role names freeable with SPI_freeString ()
215
216         2002-03-14  Marc Mulcahy <marc.mulcahy@sun.com>
217
218         * libspi/stateset.c: implemented Accessibility_StateSet_compare ()
219
220         * cspi/spi_accessible.c: Implemented c bindings for stateset support
221
222         * cspi/state-types.h: synched with IDL and ATK
223
224         2002-03-13  Bill Haneman <bill.haneman@sun.com>
225
226         * libspi/accessible.c 
227         (impl_accessibility_accessible_get_child_at_index):
228         Change return value for g_return_if_fail ()
229         to CORBA_OBJECT_NIL instead of "0" (!)
230
231         * registryd/Makefile.am:
232         * registryd/Accessibility_Register.server.in:
233         Changed name of executable, "registryd",
234         to something more informative:
235         "at-spi-registryd".
236
237 2002-03-13  Michael Meeks  <michael@ximian.com>
238
239         * atk-bridge/bridge.c (atk_bridge_init): don't register
240         if we're in a bonobo-component, rather than a bonobo app.
241
242 2002-03-13  Michael Meeks  <michael@ximian.com>
243
244         * atk-bridge/bridge.c (gtk_module_init): split
245         out body to (atk_bridge_init): here, since otherwise
246         we get symbol conflicts and oddness when invoked
247         from (gnome_accessibility_module_init): here (upd.)
248
249 2002-03-11  Bill Haneman  <bill.haneman@sun.com>
250
251         * HACKING:
252         New file.  Explicitly allow "build sheriff" putbacks provided
253         they are tested on Solaris.
254         
255         * docs/reference/cspi/Makefile.am:
256         Added '-' to the "cp" command for index.sgml.
257         ("patch by thomasvs, soon coming to a GUADEC near you")
258
259         * configure.in:
260         Incremented version number (0.9.0) for new release.
261         Changed macro that checks for popt, to better detect
262         obsolete versions of popt.
263         
264         * configure.in:
265         Added X_LIBS to AC_SUBST, for applications
266         that call Xlib API directly.
267         
268
269 2002-03-07  Bill Haneman  <bill.haneman@sun.com>
270
271         * configure.in:
272         Include gdk_pixbuf_x11-2.0 in UTILS_LIBS.
273
274         * util/Makefile.am:
275         Fix regression caused by hard-coding major
276         version of gdk_pixbuf_x11; now use $(UTILS_LIBS)
277         (see above change).
278         
279         * test/test-simple.c (test_editable_text),
280         (test_test): revert previous change (error was 
281         a regression in gail which is now fixed).
282         
283 2002-03-04  Michael Meeks  <michael@ximian.com>
284
285         * test/test-simple.c (test_editable_text),
286         (test_text): pass G_MAXINT instead of '-1' for
287         whole string - is this a good thing !?
288
289         * cspi/spi_accessible.c
290         (Accessible_getRelationSet): fix crasher bug
291         overwriting the end of the array.
292
293         * test/test-simple.c (validate_accessible): free,
294         not g_free returned relation set.
295
296 2002-02-26 Marc Mulcahy <marc.mulcahy@sun.com>
297
298         * libspi/stateset.c libspi/stateset.h libspi/Makefile.am:
299         implemented stateset support
300
301         * idl/Accessibility_State.idl: Made necessary changes to
302         the IDL to support state sets.
303
304 2002-02-12 Bill Haneman <bill.haneman@sun.com>
305
306         * registryd/deviceeventcontroller.c:
307         Added implementation for generateMouseEvent.
308
309         * cspi/spi_registry.c:
310         Connected new implementation for generateMouseEvent
311         to the C bindings.
312         
313 2002-02-12 Bill Haneman <bill.haneman@sun.com>
314
315         * configure.in: 0.8
316         Incremented revision (but no change in public API
317         outside of 'utils', which are not installed public yet.)
318
319         * libspi/component.c:
320         Changed to use atk_component API for layers and
321         mdi_zorder, instead of deprecated atk_object API.
322         
323         Magnification Utility Enhancements:
324         
325         * util/magnifier.c:
326         Added implementation of createZoomRegion, clearAllZoomRegions,
327         resizeZoomRegion.  Added new commandline argument
328         "--no-initial-region".  Note that clearAllZoomRegions doesn't
329         unmap the old '0' region as it should (yet), and the other
330         methods only work when creating/resizing a single region,
331         which is "region 0".  
332         (Code for multiple region support will be added later.)
333
334         * util/mag_image.c:
335         Now we raise the magnifier window each time it's refreshed;
336         this will help keep it on top.
337         
338         * util/mag_client.h:
339         Added simple wrappers for above, used by mag_control.
340         For general use, it's recommended to use the bonobo magnifier
341         control API directly instead of using these wrappers.
342
343         * util/mag_image.h:
344         Moved ZoomRegionData from magnifier.c to this file.
345         
346         * util/mag_control.c: 
347         Added some code to exercise new IDL implementations.
348         
349 2002-02-06 Marc Mulcahy <marc.mulcahy@sun.com>
350
351         * libspi/text.c: Provide implementation for getAttributes.
352
353 2002-02-04  Bill Haneman <bill.haneman@sun.com>
354         
355         * configure.in:
356         Incremented revision.
357
358         * test/test-simple.c:
359         Replaced use of deprecated g_main_iteration with 
360         g_main_context_iteration.
361         
362 2002-01-28  Padraig O'Briain <padraig.obriain@sun.com>
363
364         * configure.in:
365         Incremented revision for desktop alpha 2.
366
367 2002-01-28  Mark McLoughlin  <mark@skynet.ie>
368
369         * libspi/remoteobject.[ch]: make RemoteObject and interface rather
370         than an atk object.
371
372         * test/simple-at.c: include netinet/in.h.
373
374 2002-01-24  Mark McLoughlin  <mark@skynet.ie>
375
376         * cspi/spi_accessible.c: (Accessible_getRelationSet):
377         use NULL, not CORBA_OBJECT_NIL.
378
379         * libspi/accessible.c:
380         (impl_accessibility_accessible_get_relation_set):
381         allocate the sequence correctly.
382
383         * libspi/remoteobject.h: kill spi_remote_object_new.
384
385         * test/test-simple.c: (validate_accessible): add code
386         to test relation sets, now all we need is to figure
387         out how to excercise this code path :/
388
389 2002-01-18  Michael Meeks  <michael@ximian.com>
390
391         * test/test-simple.c
392         (key_listener_cb): consume the key.
393         (test_keylisteners): update.
394         (main): wait for any pending unrefs on events.
395
396         * registryd/deviceeventcontroller.c
397         (spi_controller_update_key_grabs): only re-issue the
398         grab on a key release.
399         (spi_device_event_controller_forward_key_event):
400         refresh the keygrabs before we notify the listeners,
401         to reduce the X ungrab / re-grab race.
402         (spi_controller_register_with_devices): remove
403         XSelectInput - we do that with the gdk_window_ call.
404         (_spi_controller_device_error_handler): return a value.
405         s/GDK_DISPLAY/spi_get_display/
406
407 2002-01-17  Michael Meeks  <michael@ximian.com>
408
409         * registryd/deviceeventcontroller.c
410         (_deregister_keygrab): don't blow out the later
411         assertion.
412
413         * test/test-simple.c (test_keylisteners): do a
414         more intelligent validation.
415
416 2002-01-14  Michael Meeks  <michael@ximian.com>
417
418         * atk-bridge/bridge.c
419         (gnome_accessibility_module_init),
420         (gnome_accessibility_module_shutdown): impl.
421         (gtk_module_init): protect vs. double inits.
422         (add_signal_listener): impl.
423         (spi_atk_bridge_state_event_listener): kill
424         (deregister_application): split out of
425         (spi_atk_bridge_exit_func): here.
426
427 2002-01-18  Bill Haneman <bill.haneman@sun.com>
428
429         * test/simple-at.c:
430         Added caret tracking when using magnifier, and 
431         now use text bounds for focus tracking of text elements, rather than
432         the component bounds - this is helpful for short text fields in long
433         table cells, at high magnification.
434         
435 2002-01-16  Bill Haneman <bill.haneman@sun.com>
436
437         * registryd/deviceeventcontroller.c:
438         Regression fix for keylistener de-registration; global keygrabs
439         were not being released when deregisterKeystrokeListener was
440         called in cspi, since 
441         Accessibility_DeviceEventController_deregisterKeystrokeListener
442         was called with a zero-length keyset.  That is because the cspi
443         method, SPI_deregisterKeystrokeListener, does not take a keyset
444         parameter but instead should remove all the key grabs held be a
445         keystroke listener.  
446         The code in impl_deregister_keystroke_listener was changed to copy
447         the keylist from the listener instance previously registered with
448         the DeviceEventController before releasing the grabs.
449
450         * registryd/registry.c:
451         * registryd/deviceeventcontroller.c:
452         * libspi/spi-private.h:
453         * libspi/util.c:
454         Changed spelling of "re-enterant" to "re-entrant" globally.
455
456 2002-01-16  Bill Haneman <bill.haneman@sun.com>
457
458         * test/test-simple.c:
459         Changed key listeners test - the test was slightly mis-using the
460         (admittedly poorly documented) SPI_generateKeyboardEvent API.
461         It now uses '=' as the key event listened to and generated,
462         relying on a keysym match rather than assuming that keycode 33 
463         is always equal to keysym '!'.
464
465 2002-01-15  Bill Haneman <bill.haneman@sun.com>
466
467         * test/simple-at.c:
468         Changed simple-at to use a specific keyset, rather than
469         SPI_KEYSET_ALL_KEYS - this helps minimize clashes with the window
470         manager, desktop, etc.
471         
472 2002-01-11  Bill Haneman <bill.haneman@sun.com>
473
474         * registryd/deviceeventcontroller.c:
475         Replaced standard X error handler with a special handler that 
476         is non-fatal for failed keygrabs.  This works around 
477         problems with keygrab clashes sometimes observed on 
478         Solaris using CDE.
479         Re-instated SPI_DEVICE_TYPE_MOUSE in enum (didn't reinstate 
480         mouse handling code as yet).
481         
482 2002-01-11  Bill Haneman <bill.haneman@sun.com>
483
484         * configure.in:
485         Incremented revision for desktop alpha release.
486
487         * README:
488         Fixed a couple of the more glaring errors (still not 
489         very up-to-date).
490
491 2002-01-11  Michael Meeks  <michael@ximian.com>
492
493         * registryd/deviceeventcontroller.c
494         (spi_device_event_controller_forward_key_event): kill
495         XUngrabKey / XKeyGrab race.
496         (spi_controller_grab_keyboard): rename to
497         (spi_controller_update_key_grabs): this, and deal
498         with incremental adding / removing grabs more
499         sensibly.
500         (_register_keygrab): ensure we're not pending a remove.
501         (spi_grab_mask_free): impl.
502         (spi_controller_register_global_keygrabs): split out
503         common code into:
504         (handle_keygrab): impl.
505         (_deregister_keygrab): impl.
506         (spi_controller_deregister_global_keygrabs): impl.
507         (spi_controller_update_key_grabs): re-issue the grab if
508         we just recieved a notification.
509
510         * test/test-simple.c (key_listener_cb): remove debug.
511
512         * registryd/deviceeventcontroller.c
513         (spi_controller_register_device_listener): after
514         registering a global keygrab, actualy register it !
515         don't wait for a timeout; doh !
516
517         * registryd/deviceeventcontroller.[ch]: s/DeviceEvent/DE/
518         to make it more readable / manipulable.
519         s/grabmask/grab_mask/ s/refcount/ref_count/
520         s/keyval/key_val/ s/modmask/mod_mask
521
522 2002-01-08  Michael Meeks  <michael@ximian.com>
523
524         * registryd/deviceeventcontroller.c
525         (spi_controller_register_with_devices): use gdk calls to
526         setup a filter.
527         (global_filter_fn): implement the filter.
528         (spi_device_event_controller_check_key_event): rename to
529         (spi_device_event_controller_forward_key_event): this & upd.
530         (spi_get_display): replace with GDK_DISPLAY.
531
532         * registryd/deviceeventcontroller.c
533         (spi_controller_deregister_device_listener): unroll into
534         (impl_deregister_keystroke_listener): here to simplify.
535         (spi_controller_register_global_keygrabs): split cut and
536         paste (!) out into (_register_keygrab): here, shorter & sweeter.
537         (spi_controller_deregister_device_listener): remove.
538         (impl_register_mouse_listener): remove, no mouse listener
539         support in at-spi-1.0
540
541         * registryd/registry.c
542         (_device_event_controller_hook): kill.
543         (spi_registry_init): upd.
544
545         * registryd/deviceeventcontroller.c
546         (spi_device_event_controller_class_init): upd.
547         (spi_check_key_event): merge into.
548         (spi_device_event_controller_check_key_event):
549         here and kill strange static ev init, don't leak
550         the x_event - nor dynamicaly allocate it.
551
552         * registryd/registry-main.c (main): re-direct
553         timeout to remove strange vtable mess.
554
555         * registryd/deviceeventcontroller.c
556         (remove_listener_cb): impl.
557         (spi_controller_deregister_device_listener):
558         fix re-enterancy hazard.
559
560 2002-01-07  Michael Meeks  <michael@ximian.com>
561
562         * registryd/deviceeventcontroller.c
563         (spi_device_event_controller_new): upd.
564         (impl_notify_listeners_sync): upd. debug.
565         (spi_notify_keylisteners): fix re-enterancy hazards,
566         prettify, remove O(n*n) iteration.
567         (spi_controller_grab_keyboard): fix iteration.
568         (spi_check_key_event): re-format to suit coding style.
569         Clean all the warnings - we're warning free.
570
571         * registryd/deviceeventcontroller.h:
572         * registryd/registry.h: make mutualy referential with
573         typesafe forward references instead of (!) void pointer
574         hacks.
575
576 2002-01-11  Michael Meeks  <michael@ximian.com>
577
578         * cspi/spi_accessible.c (role_names): add a role name
579         to sync this array with the enum; and make the regression
580         tests pass, sigh.
581
582 2002-01-10  Michael Meeks  <michael@ximian.com>
583
584         * cspi/spi_registry.c (SPI_generateKeyboardEvent): 
585         allow expansion of enumeration & kill warning.
586
587         * test/test-simple.c (key_listener_cb): impl.
588         (test_keylisteners): impl.
589
590         * cspi/spi-listener.h: make listener signatures const
591         on the provided (const) events.
592
593         * test/keysynth-demo.c: upd. to const events.
594
595         * test/simple-at.c: ditto.
596
597 2002-01-11  Bill Haneman <bill.haneman@sun.com>
598
599         * configure.in:
600         Rev the version to 0.5 (the previous tarball was named 0.4, 
601         even though the micro number was 3), so we need to rev upwards
602         again for beta2/"desktop-alpha" 
603  
604         * test/demo.csh:
605         Checked in a demo script, which requires editing before use!
606         Proceed with caution.
607         
608         * libspi/value.h:
609         Fixed typo in header which was redefining SPI_ACTION_CLASS.
610
611         * cspi/spi_accessible.c:
612         Add a couple of missing enum initializations, and fix some enum
613         comments.
614
615         * cspi/spi_registry.c:
616         Add comment describing keystring parameter to SPI_generateKeyboardEvent.
617         
618         * docs/reference/cspi/at-spi-cspi-sections.txt:
619         Remove/fix a couple of broken document references.
620
621         * test/simple-at.c:
622         Minor tweaks to the demo.  We now (sigh) use Alt-SHIFTLOCK as well
623         as Alt-Control to listen for commands, since on some systems
624         Control-Alt may already be grabbed.
625
626 2002-01-10  Bill Haneman <bill.haneman@sun.com>
627
628         * configure.in:
629         Update version number to 0.4 for Beta2.
630         
631         * libspi/accessible.c, libspi/accessible.h:
632         Expose spi_accessible_construct, to enable libgail-gnome
633         construction from spi_accessible subtype.
634
635         * utils/magnifier.c:
636         Workaround for bug in some non-gnome-compliant window managers
637         which made magnifier resize improperly.
638
639 2002-01-09  Bill Haneman <bill.haneman@sun.com>
640
641         * libspi/accessible.c: (spi_accessible_new) :
642         Move the test for SPI_IS_REMOTE_OBJECT to
643         spi_accessible_new_return, fixing a bug and compile time warning.
644         
645 2002-01-08  Michael Meeks  <michael@ximian.com>
646
647         * registryd/registry.c (parse_event_type): remove strndup.
648
649         * libspi/Makefile.am (libspi_la_SOURCES): remove
650         sources already included in the headers section.
651
652         * libspi/util.c: add.
653
654         * libspi/spi-private.h: add.
655
656         * registryd/registry.c: update to moved list iterators.
657
658 2002-01-05  Michael Meeks  <michael@ximian.com>
659
660         * test/simple-at.c (main): upd. auto-module set to atk-bridge
661
662         * test/test-simple.c (main): ditto.
663
664 2002-01-04  Michael Meeks  <michael@ximian.com>
665
666         * libspi/accessible.c (spi_accessible_new): remove 2nd,
667         redundant construct.
668
669         * registryd/registry.c
670         (get_listener_list): impl.
671         (impl_accessibility_registry_register_global_event_listener):
672         re-impl. to simplify using ~, remove dodgy const cast off.
673         (parse_event_type): constify.
674         (impl_accessibility_registry_deregister_global_event_listener_all): 
675         re-write, more efficiency and simplicity, kill re-enterancy
676         hazard.
677         (compare_listener_corbaref, compare_corba_objects),
678         (compare_listener_quarks): define out.
679         (impl_accessibility_registry_deregister_global_event_listener): 
680         re-write for effiency, and nail re-enterancy hazard.
681         (impl_accessibility_registry_get_desktop_list): impl.
682         (re_enterant_list_delete_link): impl.
683         (re_enterant_list_foreach): impl.
684         (remove_listener_cb): impl.
685         (_registry_notify_listeners): kill.
686         (notify_listeners_cb): impl.
687
688         * cspi/spi_registry.c (SPI_freeDesktopList): impl.
689         (SPI_getDesktopList): impl.
690
691         * test/test-simple.c (test_desktop): test the methods.
692
693 2002-01-03  Michael Meeks  <michael@ximian.com>
694
695         * cspi/spi_event.c (SPI_createAccessibleKeySet): dup the
696         keystrings since we free them
697         (SPI_freeAccessibleKeySet): in here.
698
699         * libspi/accessible.c (spi_accessible_new): kill warning,
700         wonder what is going on with the constructor here.
701
702 2002-03-01  Bill Haneman <bill.haneman@sun.com>
703
704         * libspi/accessible.c (spi_accessible_new ()) :
705         Added check to see if AtkObject is an SpiRemoteObject before
706         creating an SpiAccessible.
707         
708 2002-05-01  Bill Haneman <bill.haneman@sun.com>
709
710         * registryd/deviceeventcontroller.c (spi_controller_grab_keyboard):
711         Enable keygrabs using the Control modifier, now that they are
712         working properly (they were previously disabled).
713
714         * test/simple-at.c:
715         Change the command keygrab for this demo to "Control+Alt", so as
716         to conflict with fewer other key commands on the system; this
717         means that the quit command for "simple-at" is now "Ctrl-Alt-q".
718
719         Removed a pointlessly-chatty keylistener for unshifted keys
720         (shifted keys are still reported).
721         
722 2002-02-01  Bill Haneman <bill.haneman@sun.com>
723
724         * libspi/remoteobject.h:
725         * libspi/remoteobject.c:
726         Added definitions for special AtkObject subtype, required for
727         support of remote components (specifically, used by BonoboControl
728         accessibility implementation).
729         
730 2002-01-02 Marc Mulcahy  <marc.mulcahy@sun.com>
731
732         * cspi/spi.h: synched relation types with ATK
733
734         * cspi/spi_accessible.c: Added implementations of
735         AcccessibleRelation_* methods
736
737         * idl/Accessibility_Relation.idl: added getRelationTypeName
738         method.  Synched known relation types with ATK.  Allowed for
739         relation type extension with the RELATION_EXTENDED type.
740         
741         * libspi/relation.c: Provided implementations for
742         AccessibleRelation methods.
743
744 2002-01-01  Bill Haneman <bill.haneman@sun.com>
745
746         API tweaks for today's API 'freeze'.
747
748         * idl/*:
749         Added placeholder functions to allow future compatible expansion
750         of the IDL interfaces.
751
752         * idl/Accessibility_Registry.idl:
753         Changed generateKeyEvent to generateKeyboardEvent.  Changed
754         signature of this method to accept an optional keystring in
755         parameter (for complex text input synthesis) and changed use of
756         simple 'boolean' parameter in registerKeystrokeListener to a
757         struct, EventListenerMode.
758
759         * cspi/spi_accessible.c:
760         * cspi/spi.h:
761         * cspi/spi_streamablecontent.c:
762         Added references to AccessibleStreamableContent interface, and
763         definition and implementation of AccessibleStreamableContent 
764         C bindings.
765
766         * cspi/spi_registry.c:
767         * cspi/spi.h:
768         Changed generateKeyEvent API to generateKeyboardEvent,
769         taking a new (optional) keystring parameter to support complex
770         text input.
771         
772         * at-bridge/*:
773         * atk-bridge/*:
774         Renamed directory (to better reflect its actual purpose, bridging
775         from at-spi to ATK).  The .so module is also now named
776         libatk-bridge.so.
777
778         * idl/Accessibility_Hypertext.idl:
779         * libspi/accessible.c:
780         * libspi/hypertext.h:
781         * libspi/hypertext.c:
782         Changed Accessibility_Hypertext to *not* derive from
783         Accessibility_Text.
784
785         * cspi/spi_registry.c:
786         Added list of legal event type names for 'window' events, which
787         completes the registry event API.
788
789 2001-12-22  Marc Mulcahy  <marc.mulcahy@sun.com>
790
791         * at-bridge/bridge.c: Added registration for separate
792         "Atktext:text-changed::insert" and "AtkText:text-changed::delete"
793         signals.  If either of the first two parameters to the generic
794         bridge signal handler are ints, they are passed on as event
795         details.  This allows an AT to determine what text was inserted.
796
797 2001-12-21  Bill Haneman <bill.haneman@sun.com>
798
799         * registryd/deviceeventcontroller.c:
800         Fixed regressions in generateKeyEvent caused by the removal of
801         gdk_init from registryd; we now use pure X calls to connect to the
802         display, which makes sense because deviceeventcontroller already
803         uses a fair bit of X API (should eventually be migrated to a
804         'portability layer').
805
806         * registryd/desktop.c:
807         Fixed minor regression in spi_desktop_init, changed the way the
808         desktop name is being set to work with new spi_base API
809         (gobject-based, rather than AtkObject-based).
810
811         * registryd/Makefile.am:
812         Minor revision of makefile to use XTST_LIBS variable rather than
813         hard-wiring the Xtst LD_ADD element.
814
815         * test/keysynth-demo.c:
816         Tweaked an output message; added initialization of the
817         'keystrings' member of the "switch listener" key_set.
818
819         * libspi/relation.c:
820         Squashed compile-time warning.
821
822         * libspi/accessible.c:
823         Cosmetic and formatting fixes, renamed a static method.
824         
825 2001-12-18 Marc Mulcahy <marc.mulcahy@sun.com>
826
827         * libspi/accessible.c 
828         * libspi/action.c
829         * libspi/application.c 
830         * libspi/base.c 
831         * libspi/base.h
832         * libspi/component.c 
833         * libspi/editabletext.c
834         * libspi/hyperlink.c 
835         * libspi/hypertext.c
836         * libspi/image.c 
837         * libspi/selection.c 
838         * libspi/table.c
839         * libspi/text.c 
840         * libspi/value.c 
841         * registryd/desktop.c:
842         Changed SpiBase to contain a GObject pointer rather than an AtkObject
843
844 2001-12-17  Bill Haneman <bill.haneman@sun.com>
845
846         * idl/Accessibility_Registry.idl:
847         Added boolean member 'is_text' to DeviceEvent.  This is for the
848         use of key events, and helps prevent ambiguity between composed
849         key strings and keysym names, since both may potentially be
850         returned in the 'event_string' member.
851
852         * at-bridge/bridge.c:
853         * registryd/deviceeventcontroller.c:
854         Use the 'is_text' member when notifying device event listeners.
855         Knon issue: composed characters are not dealt with correctly by
856         the global key listener implementation yet.
857         
858 2001-12-17  Bill Haneman <bill.haneman@sun.com>
859
860         * at-bridge/bridge.c:
861         Namespaced local static methods to spi_atk_bridge_* where
862         previously named bridge_*, and spi_* elsewhere.
863
864         * at-bridge/bridge.c:
865         * cspi/bonobo/cspi-bonobo-listener.c:
866         Added demarshalling/conversion for string member of
867         Accessibility_DeviceEvent to AccessibleKeystroke.
868
869         * registryd/deviceeventcontroller.c:
870         Added code to fill the Accessibility_DeviceEvent key string value
871         member for global key events (i.e. from XGrabKey), to match
872         behavior of Accessibility_DeviceEvent from the toolkit key events
873         from the bridge.  Fixed timestamp in global key event notifications.
874
875         * test/simple-at.c:
876         Added printout of key event's string value to
877         report_ordinary_key_event, for demo/debugging purposes.
878
879 2001-12-15  Bill Haneman <bill.haneman@sun.com>
880
881         * idl/Accessibility_Registry.idl:
882         Removed Accessibility_KeyStroke structure in favor of generic
883         Accessibility_DeviceEvent structure.
884         Changed Accessibility_ControllerEventMask from a struct to an
885         unsigned long.
886
887         * at-bridge/bridge.c:
888         Changed APIs to use DeviceEvent structure as above, and removed
889         bogus casting between these event structures.
890
891         * cspi/spi-listener.h:
892         Added keystring member of AccessibleKeystroke structure, to enable
893         matching on event "names" rather than only hardware codes and
894         keysyms.
895
896         * cspi/spi.h:
897         Added keystrings member of AccessibleKeySet struct, to allow
898         matching on event names (as above).
899         Added declarations for SPI_createAccessibleKeySet and
900         SPI_freeAccessibleKeySet.  Due to changes in libspi, we now pass
901         event modmasks directly as unsigned ints rather than structs with
902         refcounts, in the DeviceEventController methods.
903
904         * cspi/spi_registry.c:
905         Add SPI_createAccessibleKeySet and SPI_freeAccessibleKeySet methods.
906
907         * cspi/spi-roletypes.h:
908         Added documentation of newly added SPI Roles.
909
910         * cspi/bonobo/cspi-bonobo-listener.c:
911         Changes in support of API changes above.
912         
913         * libspi/accessible.c:
914         Converted APIs to use DeviceEvent structure (see IDL changes
915         above). 
916
917         * registryd/deviceeventcontroller.c:
918         Added DEControllerGrabMask structure to track keygrabs not only by
919         modmask but by keyset as well; this allows us to do "global"
920         (i.e. X) keygrabs on a per-key or keyset basis rather than always
921         grabbing on AnyKey and then filtering after-the-fact.
922         Bugfixes for event filtration mean that we don't get false matches
923         on SPI_KEY_RELEASED, when only SPI_KEY_PRESSED was requested.
924
925         * registryd/deviceeventcontroller.c:
926         Namespaced a number of static methods to use spi_ prefix.  Major
927         revision to internals of global (i.e. X) key grabs.
928
929         * registryd/deviceeventcontroller.h:
930         Removed keymask_list and added keygrabs_list to
931         SpiDeviceEventController struct.
932
933         * test/simple-at.c:
934         Added use of SPI_createAccessibleKeySet API when creating a
935         listener for only one key.  Attach a listener to "shift spacebar
936         SPI_KEY_RELEASE" as a demonstration.  Changed (incorrect) usage of
937         X key event names to SPI key event names, so that listeners are
938         registered for (SPI_KEY_PRESSED | SPI_KEY_RELEASED), for instance.
939         
940         * test/keysynth-demo.c:
941         Changed (incorrect) use of X key event names (KeyPressed,
942         KeyReleased) to SPI enums SPI_KEY_PRESSED and SPI_KEY_RELEASED.
943         
944
945 2001-12-12  Bill Haneman <bill.haneman@sun.com>
946
947         * libspi/accessible.c:
948         Convert all AtkRole enumerations to Accessibility_Role enums when
949         getting a role from an AtkObject.
950         
951         * cspi/spi_accessible.c:
952         Complete the conversion of Accessibility_Role enums at runtime to
953         AccessibleRole (SPI_ROLE_*) roles in Accessible_getRole, so that
954         role enums correctly match those given in spi-roletypes.h.  
955         Re-synchronize the local names list for AccessibleRole_getName ().
956         AccessibleRole_getName is now deprecated, since it duplicates the
957         more reliable Accessible_getRoleName.
958         Added some role types from Accessibility_Role.idl.
959
960         * idl/Accessibility_Role.idl:
961         Added some role types used by AtkRole.
962
963 2001-12-12  Bill Haneman <bill.haneman@sun.com>
964         
965         * cspi/spi.h:
966         * cspi/spi_registry.c:
967         * cspi/spi_event.c:
968         * cspi/cspi-bonobo-listener.c:
969         Namespaced all methods that did not begin with an "SPI_" or
970         "Accessible" prefix to "SPI_".  
971
972         * cspi/spi_main.c:
973         Homogenized internal function namespace to "cspi_" for statics.
974         
975         * test/*.c:
976         Patched tests to use the new CSPI API.
977
978         * docs/reference/cspi/at-spi-cspi-sections.txt:
979         Updated docs to reflect namespace changes, and added a number of
980         methods to the documentation.
981         
982         * registryd/registry.c:
983         Changed use of strings and string hashes in listener event
984         matching and parse_event_string to use GQuark, which is guaranteed
985         unique.
986         
987         * registryd/registry.h:
988         Squashed annoying warning.
989
990         * idl/Accessibility_Role.idl:
991         Extended range of available Accessibility_Role values.
992
993         * cspi/spi_accessible.c:
994         Re-ordered role names. 
995
996 2001-12-12  Bill Haneman <bill.haneman@sun.com>
997
998         * idl/Accessibility_Value.idl:
999         Revert use of union back to CORBA_double, since the double type is
1000         more efficient and can contain the other types without loss of
1001         precision.
1002
1003         * idl/Accessibility_Accessible.idl:
1004         Added method Accessibility:Accessible:getRoleName, to complement
1005         Accessibility:Accessible:getRole.
1006
1007         * cspi/spi_accessible.c:
1008         * cspi/spi.h:
1009         Added C binding for above, Accessible_getRoleName (), and changed
1010         signature of Accessible_getRole () to return an AccessibleRole.
1011
1012         * cspi/spi-roletypes.h:
1013         Changed AccessibleRole_getName to return a char * instead of a
1014         const char *.  This method is now at least temporarily deprecated 
1015         in favor of asking Accessibles for their RoleNames directly.
1016
1017         * libspi/value.c:
1018         Revert to match Accessibility_Value.idl;
1019
1020         * cspi/spi_value.c:
1021         * cspi/spi.h:
1022         Change signature of AccessibleValue methods to use double rather
1023         than float.
1024
1025         * cspi/spi.h:
1026         * cspi/spi_accessible.c:
1027         Changed Accessible_getRole to return an AccessibleRole enum rather
1028         than a UTF-8 string.  The UTF-8 string can still be obtained via
1029         AccessibleRole_getName ().
1030         
1031         * test/test-simple.c:
1032         Add test_action.  Small fixup to match API change to Accessible_getRole.
1033
1034         * libspi/action.c:
1035         Bugfix for get_action_from_servant ().
1036
1037 2001-12-11  Michael Meeks  <michael@ximian.com>
1038
1039         * libspi/libspi.h: remove registry.h and
1040         desktop.h, deviceeventcontroller.h
1041
1042         * libspi/Makefile.am: remove registry.[ch],
1043         desktop.[ch], deviceeventcontroller.[ch]
1044
1045         * registryd/Makefile.am: add registry.[ch],
1046         desktop.[ch], rename registryd.c to registry-main.c.
1047         add deviceeventcontroller.[ch]
1048
1049 2001-12-11  Bill Haneman <bill.haneman@sun.com>
1050
1051         * test/simple-at.c:
1052         Replace setenv() call with putenv ().
1053
1054         * libspi/component.c:
1055         Bugfix in AccessibleComponent_getExtents (),
1056         (from Adi Dascal).
1057         
1058 2001-12-11  Michael Meeks  <michael@ximian.com>
1059
1060         * libspi/image.c (impl_getImageExtents): impl.
1061         (spi_image_class_init): upd.
1062
1063         * cspi/spi_image.c
1064         (AccessibleImage_getImageDescription): fix daft bug
1065         of mine (doh).
1066
1067         * test/test-simple.c (global_listener_cb): update
1068         to only quit if not --poke
1069         (main): catch --poke.
1070         (validate_accessible): upd. dumping, call test_image
1071         (test_image): impl.
1072
1073         * libspi/Makefile.am (IDL_DEPS): fixup the IDL
1074         dependencies.
1075
1076         * idl/Accessibility.idl: update all IDL includes.
1077
1078         * idl/*.idl - rename to namespace - this sucks, blame
1079         mjs' bad decision for oafd.
1080
1081         * test/test-simple.c (create_test_window): add more tests.
1082         (create_tree): split this out.
1083         (validate_accessible): bugfix.
1084
1085 2001-12-11  Michael Meeks  <michael@ximian.com>
1086
1087         * cspi/bonobo/cspi-bonobo-listener.c: 
1088         (cspi_kestroke_listener_unref),
1089         (cspi_event_listener_unref): impl. undoing previous
1090         homenous environment - for Bill.
1091
1092         * cspi/spi_table.c (long_seq_to_array): use
1093         malloc instead.
1094
1095         * cspi/spi_main.c: split out all bonoboish bits into
1096         bonobo/
1097
1098         * cspi/spi-impl.h: upd. typedefs.
1099
1100         * cspi/spi_registry.c: update to lowlevel API,
1101         return booleans to indicate success in some places.
1102
1103         * cspi/spi_event.c: update to lowlevel API.
1104
1105         * cspi/bonobo/Makefile.am: add.
1106
1107         * cspi/bonobo/cspi-lowlevel.h: add
1108
1109         * cspi/bonobo/cspi-bonobo.c: add
1110
1111         * cspi/bonobo/cspi-bonobo-listener.[ch]: impl.
1112
1113         * cspi/Makefile.am: remove spi-listener-impl.[ch],
1114         (SUBDIRS): add bonobo, link in the libs.
1115
1116         * cspi/spi-util.c: kill this file.
1117
1118         * TODO: merge in my bits.
1119
1120 2001-12-11  Michael Meeks  <michael@ximian.com>
1121
1122         * test/test-simple.c (test_value, test_table, main):
1123         remove unused variables causing warnings.
1124
1125         * configure.in: cleanup checks - require gail.
1126
1127 2001-12-11  Bill Haneman  <bill.haneman@sun.com>
1128
1129         * idl/Value.idl:
1130         Changed Value interface to use SValue (scalars) rather than
1131         assuming all values are floats.  This allows floats, doubles,
1132         longs, shorts, and unsigned values to be manipulated.
1133         Introduced Accessibility:SValue union.
1134
1135         * libspi/value.c:
1136         Updated to use new API above, and to work correctly with GValues
1137         of different types in AtkValue.
1138
1139         * cspi/spi_value.c:
1140         Updated to use new API above.  cspi's API is as yet unchanged.
1141
1142         * TODO: 
1143         Updated the Value revision action item.
1144         
1145 2001-12-10  Bill Haneman  <bill.haneman@sun.com>
1146
1147         * test/test-simple.c:
1148         Added test_table (GtkTreeView widget in test window to follow).
1149         Un-commented test_value, added GtkRange widget.
1150         Added GtkTreeView widget with GtkListStore.  It passes regression
1151         test but leaks one SPI object for some reason.
1152
1153         * libspi/value.c:
1154         Fixed bug in impl__set_currentValue.
1155
1156 2001-12-10  Michael Meeks  <michael@ximian.com>
1157
1158         * cspi/spi_text.c: audit for exception handling,
1159         tolerating NULL object references safely etc.
1160
1161         * cspi/spi_value.c: ditto.
1162
1163         * cspi/spi_table.c (AccessibleTable_getSummary),
1164         (AccessibleTable_getAccessibleAt),
1165         (AccessibleTable_getRowHeader),
1166         (AccessibleTable_getColumnHeader),
1167         (AccessibleTable_getCaption): fix bugs hidden by
1168         incorrect casts.
1169         (long_seq_to_array): impl.
1170         (AccessibleTable_getSelectedRows),
1171         (AccessibleTable_getSelectedColumns): use it.
1172
1173 2001-12-10  Bill Haneman  <bill.haneman@sun.com>
1174
1175         * TODO:
1176         Added a TODO list (rough and short for now).
1177
1178         * cspi/spi_hyperlink.c:
1179         * cspi/spi_hypertext.c:
1180         Fixed macro name typos, and remove use of obsolete macro in 
1181         AccessibleHyperlink_getLink.
1182
1183         * cspi/spi_action.c:
1184         * cspi/spi_accessible.c:
1185         * cspi/spi_application.c:
1186         * cspi/spi_component.c:
1187         * cspi/spi_selection.c:
1188         * cspi/spi_text.c:
1189         * cspi/spi_value.c:
1190         Documentation fixes (removed return values from ref/unref methods).
1191
1192 2001-12-10  Michael Meeks  <michael@ximian.com>
1193
1194         * cspi/spi_action.c: audit for exception handling,
1195         tolerating NULL object references safely etc.
1196
1197         * cspi/spi_accessible.c: ditto.
1198
1199         * cspi/spi_component.c: ditto.
1200
1201         * cspi/spi_editabletext.c: ditto.
1202
1203         * cspi/spi_hyperlink.c: ditto.
1204
1205         * cspi/spi_hypertext.c: ditto.
1206
1207         * cspi/spi_image.c: ditto.
1208
1209         * cspi/spi_selection.c: ditto.
1210
1211 2001-12-10  Michael Meeks  <michael@ximian.com>
1212
1213         * configure.in: use cspi/libspi.pc.in instead.
1214
1215         * Makefile.am (pkgconfig_DATA): upd. to match.
1216
1217         * test/simple-at.c (report_focus_event): kill hacks around
1218         bad return values, use putenv not setenv
1219
1220         * libspi/desktop.c (impl_desktop_get_child_at_index): don't
1221         fire ChildGone - I killed it.
1222
1223         * libspi/component.c
1224         (impl_accessibility_component_get_extents): remove
1225         bogus return.
1226
1227         * idl/Accessible.idl: kill ChildGone exception.
1228
1229         * cspi/*.[ch]: kill int return from ref / unref.
1230         
1231         * cspi/spi_main.c (cspi_object_add_check): fold into
1232         (cspi_object_add): here.
1233
1234         * cspi/spi_component.c (AccessibleComponent_getExtents):
1235         handle exceptions elegantly.
1236
1237         * cspi/spi-private.h (cspi_check_ev_return),
1238         (cspi_return_if_fail): impl.
1239
1240         * cspi/spi_accessible.c: use extensively.
1241         (AccessibleStateSet_equals): add direct compare check.
1242
1243         * cspi/spi_selection.c: tolerate NULL objs, and check
1244         exceptions before return.
1245
1246         * cspi/spi-util.c (cspi_warn_ev): rename to
1247         (cspi_check_ev): this & don't pass ev in; no point.
1248
1249 2001-12-10  Michael Meeks  <michael@ximian.com>
1250
1251         * test/test-simple.c: use putenv not setenv
1252         (get_environment_vars): more chatty if you're not using
1253         the fun bits.
1254
1255         * test/simple-at.c: do the setenv so more people see the
1256         nice demo easily.
1257
1258 2001-12-10  Bill Haneman <bill.haneman@sun.com>
1259
1260         * libspi/registry.c:
1261         Changed check of CORBA_environment on notification to be a warning
1262         instead of an error for the moment, since we can recover from this
1263         error when caused by a queued notification from a dead app.
1264         
1265         * libspi/value.c:
1266         Fixes for spi_value, use G_TYPE_DOUBLE for atk_value values (as
1267         used by all current implementors of AtkValue), and coerce to
1268         CORBA_float. (Proper general case fix may require change to Value.idl).
1269
1270 2001-12-09  Bill Haneman <bill.haneman@sun.com>
1271
1272         * cspi/spi.h:
1273         * cspi/spi_event.c:
1274         * cspi/spi_accessible.c:
1275         Documentation fixes: added user_data params to documentation for 
1276         listeners and callbacks.  
1277
1278         * cspi/spi_accessible.c: 
1279         Changed AccessibleStateSet_compare to return a
1280         StateSet rather than return the difference set into a third parameter.
1281         
1282         
1283 2001-12-09  Bill Haneman <bill.haneman@sun.com>
1284
1285         * configure.in:
1286         Replace use of AM_PROG_XML_I18N_TOOLS macro with AC_PROG_INTLTOOL.
1287         remove 'dnl' comment line from AC_OUTPUT (autoconf doesn't like
1288         it). 
1289
1290         * Makefile.am:
1291         Remove subdirectory po from SUBDIRS for now.
1292
1293         * at-bridge/bridge.c:
1294         Beefed up a couple of debug printouts.
1295         One-line fix for signal notification name formatting.
1296
1297         * libspi/accessible.c:
1298         Added assertion to spi_accessible_new ().
1299
1300         * libspi/application.c:
1301         Put #ifdef qualifiers around a printf.
1302
1303         * libspi/value.c:
1304         Fixed derivation (from BONOBO_OBJECT to SPI_BASE).
1305
1306         * registryd/Makefile.am:
1307         * util/Makefile.am:
1308         Replaces use of XML_I18N_MERGE_SERVER_RULE with
1309         INTLTOOL_SERVER_RULE macro.
1310
1311         * test/simple-at.c:
1312         Added an event listener for several ATK signals, for
1313         testing and debugging.  Removed a few g_warnings.
1314         Added test output if focussed item implements the Value interface.
1315
1316         * test/test-simple.c:
1317         Added test_value () function (known not to pass at the moment, so
1318         not actually called yet.
1319         
1320 2001-12-08  Michael Meeks  <michael@ximian.com>
1321
1322         * at-bridge/bridge.c (bridge_focus_tracker),
1323         (emit_eventv): fix the same ref. leak.
1324         (register_atk_event_listeners): don't leak.
1325
1326         * cspi/spi-listener-impl.c (cspi_event): more 
1327         protection from client code.
1328
1329         * test/test-simple.c (test_desktop): unref the app.
1330
1331         * test/Makefile.am: upd. TESTS.
1332
1333         * at-bridge/bridge.c (bridge_exit_func): release the registry.
1334
1335         * test/keysynth-demo.c (keysynth_exit): unref the listeners.
1336
1337         * cspi/spi_accessible.c (Accessible_queryInterface): constify.
1338
1339         * cspi/spi_registry.c: constify in strings.
1340         (deregisterGlobalEventListenerAll): don't release the ref.
1341
1342         * cspi/spi.h: start removing redundant / conflicting
1343         gtkdoc comments, making the API readable at a glance :-)
1344         
1345         * cspi/spi_event.c (AccessibleEventListener_unref): impl.
1346
1347         * test/keysynth-demo.c (keysynth_exit, main): upd.
1348
1349         * test/simple-at.c (main, simple_at_exit): upd.
1350
1351         * test/test-simple.c (unutterable_horror): kill.
1352         (utterable_normal_derefs): kill.
1353         (main): upd & do a setenv before gtk_init, so that we
1354         can use memprof - and to save the pain of remembering
1355         this, if we're running under memprof - don't exit.
1356
1357         * cspi/spi_main.c (SPI_exit): return exit status
1358         for cspi.
1359         (SPI_event_quit): impl.
1360         (SPI_event_main): simplify.
1361         (cspi_is_gnome_app): kill.
1362         (SPI_init): kill isGNOMEapp arg.
1363
1364         * at-bridge/bridge.c (register_atk_event_listeners):
1365         re-instate the unref.
1366         (bridge_exit_func): don't re-activate the registry,
1367         protect vs. theoretical re-entry, use the
1368         AT_BRIDGE_SHUTDOWN env. var to determine whether to
1369         assert a clean shutdown - for regression tests.
1370
1371 2001-12-08  Abel Cheung  <maddog@linux.org.hk>
1372
1373         * configure.in: Comment out dummy i18n support for now,
1374           otherwise it fails to build.
1375         * idl/Makefile.am: Add Selection.idl and Hypertext.idl to
1376           EXTRA_DIST. They are missing in tarball.
1377
1378 2001-12-07  Michael Meeks  <michael@ximian.com>
1379
1380         * util/magnifier.c: kill bonobo activation reg. race.
1381
1382         * libspi/component.c
1383         (impl_accessibility_component_get_extents): make it match
1384         it's sig.
1385
1386         * libspi/registry.c (_registry_notify_listeners):
1387         re-remove X headers & reconcile conflicts.
1388         (spi_listener_struct_free): bad conflict resolve.
1389         (impl_accessibility_registry_register_application):
1390         more bad merging fixed.
1391         (impl_accessibility_registry_deregister_application): ditto.
1392         (spi_registry_new): ditto.
1393         (spi_registry_init): don't have an applications field.
1394
1395 [ merge fixups2 branch to here ]
1396 2001-12-07  Michael Meeks  <michael@ximian.com>
1397
1398         * test/simple-at.c (report_focus_event),
1399         (report_focussed_accessible): remove g_warning debug.
1400
1401 2001-12-07  Michael Meeks  <michael@ximian.com>
1402
1403         * test/test-simple.c (validate_tree): comment out some checks.
1404         (test_desktop): app now not registered idly - horay.
1405
1406 2001-12-07  Michael Meeks  <michael@ximian.com>
1407
1408         * cspi/spi_registry.c
1409         (registerAccessibleKeystrokeListener): clean, stop it leaking
1410         great swathes of memory, and device event controller references.
1411         ensure we always pass valid sequences.
1412         (deregisterAccessibleKeystrokeListener): ditto.
1413         (generateKeyEvent): upd.
1414
1415         * at-bridge/bridge.c (bridge_key_listener): handle
1416         registry dead exception gracefully.
1417         (bridge_focus_tracker, emit_eventv): free ev.
1418
1419         * test/simple-at.c (report_focus_event): fix polarity.
1420
1421         * libspi/application.c (notify_listeners): kill the ev
1422         argument, and make sure we init the ev we use.
1423         (spi_application_object_event_listener): split out a chunk
1424         (get_atk_object_ref): here & fixup.
1425         (reverse_lookup_name_for_toolkit_event): make const.
1426         (spi_application_toolkit_event_listener): fixup, kill leaks
1427         ref problems etc.
1428
1429         * at-bridge/bridge.c (register_atk_event_listeners):
1430         don't unref the noop object - causes grief.
1431
1432         * libspi/registry.c: remove the X headers.
1433         turn off the debug churn.
1434
1435         * libspi/accessible.c (spi_accessible_new_return): only
1436         release the ref if we are supposed to [doh]
1437
1438         * test/simple-at.c (report_button_press, report_focus_event):
1439         guard vs. unexpected exit.
1440
1441         * at-bridge/bridge.c (gtk_module_init): prune printf.
1442         (bridge_exit_func): fix app unref.
1443
1444         * libspi/Makefile.am: don't install registry or desktop.h
1445
1446         * libspi/*.h: update includes.
1447
1448         * libspi/application.h: don't include ourself, or
1449         other redundant headers.
1450
1451 2001-12-06  Michael Meeks  <michael@ximian.com>
1452
1453         * libspi/accessible.c
1454         (get_accessible_from_servant): impl.
1455         Upd. all CORBA impl.s to use it killing cut and paste.
1456
1457         * cspi/spi_main.c (cspi_cleanup): guard vs. double
1458         invokes.
1459         (SPI_init): register atexit cleanup handler here.
1460
1461 2001-12-06  Michael Meeks  <michael@ximian.com>
1462
1463         * at-bridge/bridge.c (gtk_module_init): g_error on
1464         activation exception
1465
1466 2001-12-06  Michael Meeks  <michael@ximian.com>
1467
1468         * at-bridge/bridge.c (gtk_module_init): some sort of
1469         confusing merge clash - reverted.
1470         (bridge_idle_init): ditto.
1471
1472         * test/test-simple.c (main, utterable_normal_derefs):
1473         merge from Bill - somehow not committed.
1474
1475 2001-12-06  Michael Meeks  <michael@ximian.com>
1476
1477         * libspi/value.c (spi_value_class_init): upd.
1478         (spi_value_finalize): kill.
1479
1480         * libspi/table.c (spi_table_finalize): kill.
1481         (spi_table_interface_new): upd.
1482         (spi_table_class_init): upd.
1483         (get_table_from_servant): impl.
1484         Upd. all CORBA impl.s to use it killing yet more cut and paste.
1485
1486         * libspi/selection.c (spi_selection_finalize): kill.
1487         (spi_selection_interface_new): upd.
1488         (spi_selection_class_init): upd.
1489         (get_selection_from_servant): impl.
1490         Upd. all CORBA impl.s to use it killing yet more cut and paste.
1491
1492         * libspi/relation.c (spi_relation_finalize): kill.
1493         (spi_relation_class_init, spi_relation_new): upd
1494
1495         * libspi/image.c (spi_image_finalize): kill.
1496         (spi_image_class_init): upd.
1497         (spi_image_interface_new): upd.
1498         (get_image_from_servant): impl.
1499         Upd. all CORBA impl.s to use it killing yet more cut and paste.
1500
1501         * libspi/hyperlink.c (spi_hyperlink_class_init): upd.
1502         (spi_hyperlink_finalize): kill.
1503         (spi_hyperlink_new): upd.
1504         (get_hyperlink_from_servant): impl.
1505         Upd. all CORBA impl.s to use it killing yet more cut and paste.
1506
1507         * libspi/hypertext.c (spi_hypertext_interface_new): upd.
1508         (spi_hypertext_finalize): kill.
1509         (spi_hypertext_class_init): upd.
1510         (get_hypertext_from_servant): impl.
1511         Upd. all CORBA impl.s to use it killing yet more cut and paste.
1512
1513         * libspi/editabletext.c (spi_editable_text_finalize): kill.
1514         (spi_editable_text_interface_new): upd.
1515         (get_editable_text_from_servant): impl.
1516         Upd. all CORBA impl.s to use it killing yet more cut and paste.
1517         
1518         * libspi/text.c (get_text_from_servant): impl.
1519         All impls - update to use it killing more cut and paste,
1520         also fix bad string returns on duff args ( a somewhat
1521         impossible case to handle - but hey ).
1522         (spi_text_construct): impl.
1523         (spi_text_interface_new): upd.
1524         (spi_text_object_finalize): kill.
1525
1526         * libspi/component.c
1527         (accessibility_component_object_finalize): kill.
1528         (spi_component_class_init): upd.
1529         (get_component_from_servant): impl. helper to kill cut & paste.
1530         (impl_accessibility_component_contains): 
1531         (impl_accessibility_component_get_accessible_at_point): 
1532         (impl_accessibility_component_get_position): 
1533         (impl_accessibility_component_get_extents): 
1534         (impl_accessibility_component_get_mdi_z_order): 
1535         (impl_accessibility_component_get_layer): 
1536         (spi_component_interface_new): upd.
1537
1538         * libspi/action.c (spi_action_finalize): kill.
1539         (spi_action_class_init): upd. inherit from SpiObject.
1540         (spi_action_interface_new): upd.
1541         (get_action_from_servant): impl. helper to reduce cut & paste.
1542         (impl_getKeyBinding, impl_getName, impl_doAction),
1543         (impl_getDescription): Use it everywhere.
1544
1545         * cspi/spi_main.c (get_live_refs): a pointer hash.
1546         (spi_object_hash, spi_object_equal): comment out.
1547         There are issues with CORBA object hashing that need
1548         solving.
1549
1550         * libspi/application.c (spi_application_init),
1551         (spi_application_new): upd.
1552
1553         * libspi/accessible.c (spi_accessible_object_finalize): kill.
1554         (spi_accessible_class_init): upd.
1555         s/accessible/object/ in epv methods.
1556
1557 2001-12-05  Bill Haneman <bill.haneman@sun.com>
1558
1559         * at-bridge/bridge.c:
1560         Reorder the bridge initialization into the bridge gtk_module_init,
1561         an immediate call to bridge_register_app, and an idle_add for
1562         register_atk_event_listeners (the only code that *must* wait until
1563         GTK+ is initialized) via bridge_idle_add. Bridge_register_app does
1564         the activation, creates the application's Accessible object, and
1565         queues the bridge_idle_init function.  Restored call to
1566         Accessibility_Registry_deregisterApplication().  
1567         Prior to making this call we obtain a new reference to the
1568         registry, which is a temporary hack that helps us handle apps that
1569         shut down the bonobo mainloop before we get there.
1570
1571         * libspi/registry.c:
1572         Fix string leakage in debug block, and don't segv if a an app
1573         dies before its event notifications have been propagated.
1574
1575         * cpi/spi_util.c:
1576         Modify cspi_check_ev() to call g_warning() rather than g_error(),
1577         as stopgap measure until we get proper exception handling when 
1578         objects die during or before interrogation.  
1579
1580         * cspi/spi_main.c:
1581         * cspi/spi.h:
1582         Moved use of isGNOMEApp flag from SPI_event_main to SPI_init.
1583         Also changed default value of is_gnome_app to TRUE.
1584
1585         * test/simple-at.c:
1586         * test/keysynth-demo.c:
1587         Changed use of SPI_init and SPI_event_main to reflect API change above.
1588
1589         * test/simple-at.c:
1590         Made report_focus_event check the warning value from getName
1591         before reporting on focussed accessible; simplifies handling of
1592         notifications from dead objects.
1593
1594         * test/test-simple.c: (Changes not in this patch since source is
1595         not in CVS ?)
1596         
1597 2001-12-05  Michael Meeks  <michael@ximian.com>
1598
1599         * registryd/registryd.c (main): protect against
1600         bonobo-activation startup race condition.
1601
1602         * cspi/spi_main.c (cspi_object_add_check): cope
1603         with the exception elegantly.
1604
1605         * idl/Accessible.idl: decl. ChildGone
1606
1607         * libspi/desktop.c (spi_desktop_dispose): impl.
1608         (spi_desktop_class_init): upd.
1609         (spi_desktop_add_application),
1610         (spi_desktop_remove_application),
1611         (abnormal_application_termination): impl.
1612         (impl_desktop_get_child_at_index): re-impl.
1613
1614         * libspi/registry.c
1615         (impl_accessibility_registry_deregister_application),
1616         (impl_accessibility_registry_register_application): 
1617         kill excessive debug clutter.
1618
1619         * test/test-simple.c (test_misc): test some NULL
1620         tolerance. (main): upd.
1621
1622         * cspi/spi_main.c (cspi_accessible_is_a): a NULL
1623         implements no interfaces - so let's not crash.
1624
1625         * cspi/spi_accessible.c (Accessible_queryInterface): ditto.
1626
1627         * libspi/accessible.c (spi_accessible_new_return): impl.
1628         helper to calm the cut and paste, to cope with
1629         NULL AtkObjects effectively and efficiently, and to kill
1630         the referencing bugs.
1631
1632         * libspi/table.c (impl_getAccessibleAt),
1633         (impl_getRowHeader, impl_getColumnHeader): upd.
1634
1635         * libspi/hyperlink.c (impl_getObject): upd.
1636
1637         * libspi/accessible.c
1638         (impl_accessibility_accessible_get_child_at_index): upd.
1639
1640         * libspi/component.c
1641         (impl_accessibility_component_get_accessible_at_point): upd.
1642
1643         * test/test-simple.c (test_editable_text, test_text): impl.
1644         some simple tests.
1645
1646         * cspi/spi_editabletext.c
1647         (AccessibleEditableText_insertText): constify.
1648
1649         * test/test-simple.c (focus_me): make more robust.
1650
1651         * libspi/accessible.c: remove some printfs in methods that
1652         we test and work fine, so we can get a clean tree dump.
1653
1654         * test/test-simple.c (validate_accessible),
1655         (validate_tree): make tree dumping pretty too.
1656
1657         * at-bridge/bridge.c (bridge_signal_listener): upd. so
1658         it builds without debug on.
1659
1660         * test/test-simple.c (validate_accessible): fix the most
1661         ludicrous bug.
1662
1663         * cspi/spi_main.c (spi_object_release): leave the nicely
1664         blanked memory around if in debug mode.
1665
1666         * cspi/spi-listener-impl.c (cspi_event): use add_check.
1667
1668 [committed to fixups2]
1669 2001-12-05  Michael Meeks  <michael@ximian.com>
1670
1671         * libspi/editabletext.c
1672         (spi_editable_text_class_init): g_type_class_peek_parent,
1673         not interface peek - so we finalize cleanly.
1674
1675         * libspi/accessible.c (spi_accessible_new): kill debug.
1676
1677         * test/test-simple.c (validate_accessible): fix ref.
1678         leak, print strings before freeing them; sigh, comment a
1679         chunk out due to strangeness.
1680         (validate_tree): unref the child after use.
1681
1682         * cspi/spi_component.c (AccessibleComponent_getLayer):
1683         add missing break statement, switch on zlayer not the
1684         uninitialized retval.
1685
1686         * cspi/spi_main.c (cspi_object_add): add assert, local ref
1687         before (possibly re-entering) remote unref.
1688
1689         * test/simple-at.c (main): unref the desktop.
1690
1691         * cspi/spi_accessible.c (cspi_accessible_is_a): move 
1692         into:
1693         
1694         * cspi/spi_main.c (cspi_accessible_is_a): here to 
1695         isolate bonobo API usage more.
1696
1697         * libspi/registry.c (impl_accessibility_registry_register_application): 
1698         prune bogus comment.
1699
1700 2001-12-04  Michael Meeks  <michael@ximian.com>
1701
1702         * test/test-simple.c (validate_tree): upd.
1703         IndexInParent check to make it more lucid.
1704         (validate_accessible): dump the tree.
1705
1706         * libspi/accessible.c (de_register_public_ref),
1707         (get_public_refs): impl.
1708         (spi_accessible_new): make more efficient & intuitive.
1709         Now IndexInParent check works.
1710
1711 2001-12-04  Michael Meeks  <michael@ximian.com>
1712
1713         * cspi/spi-util.h: remove.
1714
1715         * cspi/spi.h: move SPI_freeString here
1716
1717         * libspi/component.c (impl_accessibility_component_get_layer): 
1718         warning fixage.
1719         (impl_accessibility_component_get_mdi_z_order): ditto,
1720         return -1 on error - is this ok ?
1721
1722         * test/test-simple.c (test_application): impl.
1723
1724         * cspi/spi_accessible.c (Accessible_getApplication),
1725         (Accessible_isApplication): impl.
1726
1727         * libspi/registry.c (spi_listener_struct_free): release
1728         the CORBA reference too.
1729
1730         * libspi/accessible.c
1731         (impl_accessibility_accessible_get_parent): fix ref leak.
1732
1733         * libspi/registry.c (spi_registry_new): make the registry
1734         immortal - we don't want it to go away ever.
1735
1736         * libspi/application.c
1737         (spi_accessible_application_finalize): impl. cleanup.
1738
1739         * cspi/spi_registry.c
1740         (deregisterGlobalEventListenerAll),
1741         (deregisterGlobalEventListener),
1742         (deregisterAccessibleKeystrokeListener): fix ref leak.
1743
1744         * cspi/spi_main.c (SPI_init): remove redundant ref.
1745
1746         * test/test-simple.c (unutterable_horror): impl. to force a
1747         clean shutdown.
1748         (main): use it.
1749
1750         * libspi/registry.c
1751         (impl_accessibility_registry_deregister_application): release
1752         the application when we de-register it.
1753
1754         * at-bridge/bridge.c (bridge_exit_func): comment out shutdown
1755         until we have the infastructure to get it right.
1756
1757 2001-12-03  Michael Meeks  <michael@ximian.com>
1758
1759         * libspi/Makefile.am: only build eventlistener.[ch]
1760
1761         * libspi/accessible.c
1762         (impl_accessibility_accessible_get_child_at_index): don't leak.
1763
1764         * at-bridge/bridge.c (bridge_exit_func): cope with an exit
1765         before we hit the idle handler.
1766
1767         * cspi/spi-util.c (cspi_check_ev): g_error is far nicer for
1768         debugging than exit.
1769
1770         * at-bridge/bridge.c (bridge_focus_tracker): fix ref issue.
1771
1772         * libspi/listener.c (impl_notify_event): check source
1773         not NIL before unref.
1774
1775         * libspi/registry.c (impl_registry_notify_event): ditto.
1776
1777         * libspi/eventlistener.c
1778         (impl_accessible_event_notify_event): unref the source.
1779
1780         * libspi/accessibleeventlistener.c
1781         (impl_accessible_event_notify_event): unref the source.
1782
1783         * idl/Event.idl: remove 'hash_id' attribute - of no
1784         concievable use.
1785
1786         * libspi/application.c (notify_listeners): upd list
1787         iteration & sig.
1788         (spi_application_object_event_listener), 
1789         (spi_application_toolkit_event_listener): upd to do correct
1790         CORBA ref counting.
1791
1792         * libspi/registry.c
1793         (_registry_notify_listeners): update.
1794         (parse_event_type): this method also leaks like a sieve.
1795         (impl_accessibility_registry_deregister_global_event_listener): 
1796         fix ETYPE_WINDOW case.
1797
1798         * libspi/application.c
1799         (impl_accessibility_application_register_object_event_listener): 
1800         kill leak.
1801
1802         * libspi/hyperlink.c (impl_getObject): fix ref mistake.
1803
1804         * libspi/hypertext.c (impl_getLink): ditto.
1805
1806         * cspi/spi_main.c (cspi_object_add): remove
1807         bogus CORBA_Object_duplicate.
1808
1809         * cspi/spi-listener-impl.c (cspi_event): dup/ref
1810         on the object_add.
1811
1812         * cspi/spi_accessible.c
1813         (Accessible_getRelationSet): fix leak / referencing issue.
1814
1815         * cspi/spi_main.c (spi_object_hash, spi_object_equal): impl.
1816         (cspi_object_add, cspi_object_unref): upd.
1817         (spi_object_release, get_live_refs): impl.
1818         (cspi_cleanup): simplify.
1819
1820         * *.[ch]: s/boolean/SpiBoolean/
1821
1822         * cspi/spi_accessible.c (role_names): actualy order so it
1823         corresponds with the enum !
1824
1825         * test/test-simple.c (test_roles): check some role strings
1826         vs. enums to detect offset errors.
1827
1828 2001-12-01  Michael Meeks  <michael@ximian.com>
1829
1830         * cspi/spi_main.c (cspi_object_add_check): impl. helper.
1831
1832         * cspi/spi_accessible.c (Accessible_getChildAtIndex):
1833         check ev before 
1834         (Accessible_getChildAtIndex): use cspi_add_check so we
1835         check the ev before using a (possibly) invalid value.
1836
1837         * libspi/accessible.c
1838         (impl_accessibility_accessible_get_parent): don't segv
1839         on a NULL parent.
1840
1841         * at-bridge/bridge.c (gtk_module_init): upd.
1842         (bridge_property_event_listener): don't leak strings
1843         and events !
1844         (bridge_state_event_listener),
1845         (bridge_property_event_listener): don't use a static
1846         buffer in case of recursive event emission &
1847         re-enterancy - split out the swathe of cut and paste
1848         into:
1849         (emit_eventv): and fix 2 ref leaks here & comply to the
1850         coding style.
1851         (bridge_register_app): rename to 
1852         (bridge_idle_init): this and kill arg parsing, split
1853         various inits & bonobo-activation registration to module
1854         init time, kill referencing error.
1855         (bridge_exit_func): fix the same leak.
1856         (bridge_focus_tracker): don't leak event structures
1857         and strings.
1858         (bridge_signal_listener): more leakage and cut & paste
1859         fixage.
1860         (bridge_key_listener): return the result - FIXME is
1861         this polarity correct ?
1862         (accessibility_keystroke_from_atk_key_event): rename
1863         (accessibility_init_keystroke_from_atk_key_event): and stop
1864         leakage.
1865         (gtk_module_init): return a value - not that it is checked by
1866         Gtk - but hey.
1867         (bridge_key_listener): register my horror at casting between
1868         IDL defined structs.
1869         (bridge_get_registry): kill - not used.
1870
1871         * cspi/spi_accessible.c (Accessible_getRole): make return const.
1872
1873         * test/test-simple.c (test_roles): impl.
1874         (test_desktop, validate_accessible, validate_tree): impl.
1875
1876         * cspi/spi_accessible.c (role_names): fixup bogus
1877         MAX_ROLES setup, make constants const for efficient linkage
1878         (AccessibleRole_getName): conform to coding style, make
1879         return 'const'
1880
1881 2001-11-30  Michael Meeks  <michael@ximian.com>
1882
1883         * cspi/spi.h: add missing prototype.
1884
1885         * libspi/registry.c (spi_listener_struct_new): fix sig.
1886
1887         * test/Makefile.am: add test-simple
1888
1889         * test/test-simple.c: add
1890
1891         * test/test.sh: add.
1892
1893         * cspi/spi_main.c (SPI_init): make SPI_inited module global,
1894
1895         * at-bridge/bridge.c (gtk_module_init): don't do an idle init,
1896         do it straight - since otherwise we often get an activation race.
1897
1898 [ work before Bill duplicated a chunk of it ... ]
1899 2001-11-30  Michael Meeks  <michael@ximian.com>
1900
1901         * libspi/keystrokelistener.c
1902         (spi_keystroke_listener_class_init): fixup arg
1903         count (doh).
1904
1905         * libspi/eventlistener.c
1906         (spi_event_listener_class_init): ditto.
1907
1908         * tests/test.sh: add.
1909
1910         * cspi/spi-listener-impl.h: update macros.
1911
1912         * cspi/spi-listener-impl.c
1913         (cspi_event_listener_remove_callback): add
1914         correct pre-conditions.
1915
1916         * cspi/spi_main.c (SPI_exit): guard vs. double
1917         exits, exit the mainloop nicely.
1918         (SPI_event_main): make more sense.
1919         (SPI_init): move the atexit evilness here so we
1920         always do it (yuck).
1921         (SPI_event_main): upd.
1922
1923         * test/simple-at.c: update for listener changes.
1924
1925         * registryd/registryd.c (main): prune kruft.
1926
1927         * libspi/libspi.h: upd.
1928
1929         * libspi/eventlistener.[ch]: rename broken macros.
1930
1931         * libspi/accessibleeventlistener.[ch]: remove.
1932
1933         * libspi/*.[ch]: IS_SPI_... -> SPI_IS_...
1934
1935         * test/test-simple.c: Add - automated tests.
1936
1937         * cspi/spi-listener-impl.c (cspi_event),
1938         (cspi_key_event): add user_data to invoke.
1939         (cspi_keystroke_listener_finalize): impl.
1940         (cspi_keystroke_listener_class_init): upd.
1941
1942         * cspi/spi_event.c
1943         (createAccessibleEventListener),
1944         (AccessibleEventListener_addCallback),
1945         (createAccessibleKeystrokeListener),
1946         (AccessibleKeystrokeListener_addCallback): upd.
1947
1948         * libspi/deviceeventcontroller.c
1949         (spi_device_event_controller_check_key_event): add public proto.
1950
1951         * libspi/registry.c
1952         (impl_accessibility_registry_deregister_global_event_listener): 
1953         always init listeners.
1954         (_registry_notify_listeners): yes it is.
1955
1956         * cspi/spi-listener-impl.c (cspi_key_event): 
1957         move debug to here.
1958         (cspi_event_listener_finalize): impl.
1959         (cspi_event_listener_class_init): hook up.
1960         (event_handler_new, event_handler_free),
1961         (event_list_remove_by_callback): impl.
1962         (cspi_event_listener_remove_callback),
1963         (cspi_keystroke_listener_remove_callback),
1964         (cspi_keystroke_listener_add_callback),
1965         (cspi_event_listener_add_callback): upd.
1966
1967         * libspi/keystrokelistener.c
1968         (keystroke_listener_object_finalize): kill
1969         (spi_keystroke_listener_class_init): upd.
1970         (spi_keystroke_listener_add_callback),
1971         (spi_keystroke_listener_remove_callback): kill,
1972         use signals.
1973         (impl_key_event): prune drasticaly.
1974
1975         * libspi/eventlistener.c
1976         (spi_event_listener_add_callback),
1977         (spi_event_listener_remove_callback): kill, use
1978         signals.
1979         (impl_accessible_event_notify_event): upd.
1980         (spi_event_listener_object_finalize): remove.
1981
1982         * libspi/Makefile.am: use eventlistener.[ch]
1983
1984 2001-12-04  Bill Haneman  <bill.haneman@sun.com>
1985
1986         * libspi/registry.c (_registry_notify_listeners):
1987         Changed listener loop iteration to use preferred convention.
1988         Got rid of string memory leaks caused be calling g_strconcat
1989         inside function calls.
1990
1991         * libspi/registry.c (parse_event_type):
1992         Stopped g_strconcat memory leaks, free the g_strsplit return,
1993         g_strdup the split pieces when used, etc.
1994
1995 2001-12-04  Bill Haneman  <bill.haneman@sun.com>
1996
1997         * idl/State.idl: 
1998         Change method 'compare' to return a 'difference set' rather than
1999         taking a StateSet as an out parameter (more Java-friendly).
2000
2001         * idl/Accessible.idl:
2002         Added CORBA struct 'BoundingBox', to faciliate API changes below:
2003         
2004         * idl/Component.idl:
2005         * idl/Image.idl:
2006         Changed methods 'getExtents' and 'getImageExtents' in these
2007         interfaces to return a BoundingBox structure.  
2008         (getPosition and getSize are redundant and possibly should be
2009         removed, rather than creating a corresponding Point struct.)
2010
2011         * cspi/spi_component.c:
2012         Modify implementation of getExtents to reflect the above IDL
2013         change.
2014         
2015         * cspi/spi_image.c:
2016         * cspi/spi.h:
2017         Add (missing) AccessibleImage_getExtents () API.
2018
2019         * docs/reference/cspi/at-spi-cspi-sections.txt:
2020         Added AccessibleImage_getImageExtents () to docs.
2021         
2022 2001-12-03  Bill Haneman  <bill.haneman@sun.com>
2023
2024         * idl/Component.idl:
2025         Added two methods, getLayer () and getMDIZOrder (), to reflect
2026         the new ATK methods atk_object_get_layer and
2027         atk_object_get_mdi_z_order. (Which arguably should be part of the
2028         AtkComponent API and AtkObject).  Also added an enum,
2029         ComponentLayer, for the first method's return value.
2030
2031         * libspi/component.c:
2032         Added implementations for these methods.
2033
2034         * cspi/spi_component.c:
2035         * cspi/spi.h:
2036         Added cspi binding methods for above, 
2037         AccessibleComponent_getLayer() and
2038         AccessibleComponent_getMDIZOrder().
2039         Added cspi enum 'AccessibleComponentLayer'.
2040
2041         * docs/reference/cspi/at-spi-cspi-sections.txt:
2042         Added above methods to docs.
2043
2044         * cspi/spi-impl.h:
2045         * cspi/spi*.[ch]:
2046         Changed typedef for 'boolean' type (and all references to it) to
2047         SPIBoolean, to avoid keyword clashes with C++.
2048
2049         * test/simple-at.c:
2050         Changed usages of 'boolean' to SPIBoolean.
2051
2052         * test/keysynth-demo.c:
2053         Changed usages of 'boolean' to 'gboolean' (since this is a gnome
2054         app), except where SPIBoolean is required by the callbacks API.
2055         
2056 2001-12-02  Bill Haneman  <bill.haneman@sun.com>
2057
2058         * cspi/spi_registry.c:
2059         Removed obsolete X event loop for passive keygrabs (which now
2060         lives in libspi).
2061
2062         * registryd/registryd.c:
2063         Removed unnecessary call to gdk_init() [cruft]. This also allows
2064         removal of requisite gdk-2.0 from REGISTRYD_LIBS/CFLAGS in
2065         * configure.in.
2066
2067 2001-11-28  Bill Haneman  <bill.haneman@sun.com>
2068
2069         * docs/reference/cspi:
2070         Included docs for SPI_freeString in generated documentation.
2071
2072         * cspi/spi-util.c:c
2073         Renamed spi_freeString to SPI_freeString, for consistency.  Added
2074         documentation for this function.
2075
2076         * cspi/spi-util.h:
2077         Renamed spi_freeString to SPI_freeString, for consistency.  
2078         Removed obsolete method declaration string_from_corba_string.
2079
2080         * test/keysynth-demo.c:
2081         Small tweak to comments.
2082
2083         * test/simple-at.c:
2084         Stopped leaking the strings returned from CSPI. 
2085
2086 2001-11-28  Bill Haneman  <bill.haneman@sun.com>
2087
2088         Merged Michael's branch (see his ChangeLog entries below).
2089         
2090         * at-bridge/bridge.c: Explicitly hold a ref to the registry while
2091         bridge is alive, release on exit.
2092         
2093         * cspi/spi-listener-impl.c (cspi_event_listener_add_callback):
2094         Fix type check macro.
2095         
2096         * cspi/spi_event.c:
2097         Added AccessibleKeystrokeListener_unref() method to reduce leakage.
2098         
2099         * cspi/spi_main.c: 
2100         Added is_gnome_app static, and method cspi_is_gnome_app(), 
2101         so we can call the appropriate shutdown routine at exit in SPI_exit.
2102         
2103         * cspi/spi_main.c (cspi_object_ref):
2104         Duplicate the corba object passed in, since we're keeping it around.
2105         
2106         * cspi/SPI_exit.c, cspi_cleanup:
2107         Moved the releasing of the live refs to its own function, so we
2108         can put it in g_atexit ().  Call the appropriate shutdown API
2109         depending on whethe calling client is a gnome app or not
2110         (bonobo_main_quit or CORBA_ORB_shutdown).
2111         
2112         * cspi/spi_registry.c (deregisterGlobalEventListenerAll):
2113         Unref the listener when this method is called, after
2114         deregistration.  Updated the API docs to note this behavior.
2115
2116         * libspi/accessible.c (impl_get_parent, impl_get_child_at_index):
2117         Bugfixes: Ref the bonobo object when returning a parent or child 
2118         reference, or an AccessibleRelation.  Generally made sure
2119         BonoboObject refcount is incremented whenever we return an
2120         Accessible.
2121
2122         * libspi/accessibleeventlistener.c (spi_event_listener_class_init):
2123         Fixed typo/bug in signal declaration.
2124         
2125         * libspi/accessibleeventlistener.h:
2126         Fixed a type macro.
2127
2128         * libspi/application.c (spi_application_new):
2129         Fixed leak in initialization.
2130
2131         * libspi/desktop.c:
2132         Remembered to increment bonobo-object refcount when returning
2133         children (applications) from desktop object.
2134         Added (empty) finalize method.
2135
2136         * libspi/deviceeventcontroller.c:
2137         Hold a ref to listeners inside DEControllerKeyListeners.
2138         Added dec_key_listener_free() method.  Use prepend instead of
2139         append in key_listener list.  Fixed some refcount madness and
2140         leaks in the listener registration/deregistration - deregistration
2141         now calls dec_key_listener_free() on listeners, and on the
2142         temporarily constructed dec_key_listener() used to perform the search/match.
2143
2144         * libspi/hypertext.c (spi_hypertest_finalize):
2145         Fixed 'double unref' of AtkObject held by parent SpiAccessibleText
2146         class.  Also fixed spi_hypertext_interface_new() and
2147         SpiHypertextClass.  Fixed a couple of paren-whitespace formatting bugs.
2148
2149         * libspi/hypertext.h: 
2150         Removed pointless and duplicate AtkObject pointer from
2151         SpiHypertextClass.
2152
2153         * libspi/keystrokelistener.c:
2154         Fixed incorrect type of keystroke_listener_parent_class,
2155         renamed keystroke_listener_object_finalize to
2156         spi_keystroke_listener_object_finalize.
2157         Fixed typo in signal declaration
2158         (spi_keystroke_listener_class_init).
2159
2160         * libspi/registry.c:
2161         Added funcsions spi_listener_struct_new() and
2162         spi_listener_struct_free() to help with memory management issues.
2163         We also now use these methods instead of gnew + poking stuff into
2164         the struct, and to decrement listener counts/free the listeners
2165         when deregistering them.
2166         Fix more refcount bugs in getDesktop() and
2167         getDeviceEventController().  
2168
2169         * test/simple-at.c:
2170         De-ref the desktop after enumerating the applications.  Explicitly
2171         decrement the refcounts on the created listeners on exit (using
2172         _unref for keystroke listeners, and via the
2173         deregisterGlobalEventListenerAll command for other event
2174         listeners).
2175         
2176 2001-11-27  Michael Meeks  <michael@ximian.com>
2177
2178         * cspi/spi-listener.h: fixup enum.
2179
2180 2001-11-27  Michael Meeks  <michael@ximian.com>
2181
2182         * cspi/spi-listener-impl.c (cspi_event_listener_new),
2183         (cspi_keystroke_listener_new): Use the cspi variants.
2184
2185 2001-11-26  Michael Meeks  <michael@ximian.com>
2186
2187         * test/keysynth-demo.c: fix 2 compile warnings, missing
2188         type in decl. etc.
2189
2190         * test/simple-at.c (report_focussed_accessible),
2191         (report_focus_event, report_button_press),
2192         (check_property_change, is_command_key),
2193         (report_ordinary_key_event, report_command_key_event): upd.
2194
2195         * util/mag_client.h: include pre-requisites.
2196
2197         * libspi/accessibleeventlistener.c
2198         (spi_event_listener_object_finalize): free any lingering
2199         callbacks.
2200         
2201         * libspi/keystrokelistener.c
2202         (keystroke_listener_object_finalize): ditto.
2203
2204         * cspi/spi-listener-impl.[ch]: Add to implement cspi style
2205         callbacks, with cspi types.
2206         
2207         * cspi/spi_event.c (createAccessibleEventListener): chain to
2208         (AccessibleEventListener_addCallback): here.
2209         (createAccessibleKeystrokeListener): chain to 
2210         (AccessibleKeystrokeListener_addCallback): here.
2211
2212         * libspi/keystrokelistener.c
2213         (spi_keystroke_listener_class_init): add signal.
2214         (impl_key_event): emit the event.
2215         (boolean_handled_accumulator): impl.
2216         (marshal_BOOLEAN__POINTER): add, gack.
2217
2218         * libspi/accessibleeventlistener.c
2219         (spi_event_listener_class_init): add signal.
2220         (impl_accessible_event_notify_event): emit the signal &
2221         make the loop efficient.
2222         (spi_event_listener_add_callback): prepend the callback.
2223
2224         * libspi/accessibleeventlistener.h: add an 'event' signal,
2225         decl type on callback.
2226
2227         * libspi/keystrokelistener.h: ditto.
2228
2229         * cspi/spi-listener.h: make methods typesafe and
2230         make them use the new event typedefs.
2231
2232         * test/simple-at.c (report_focussed_accessible):
2233         include mag_client.h
2234         Use *(void *)text_interface not the other thing.
2235         
2236         * configure.in: add gtk to registryd bits - since we use
2237         gdk there ( why ? )
2238
2239         * util/magnifier.c: include libbonobo.h
2240         
2241 2001-11-25  Bill Haneman  <bill.haneman@sun.com>
2242
2243         * test/keysynth-demo.c:
2244         Turned this into a simple scanning keyboard, to demonstrate the
2245         use of g_timeout_add () as a means of creating timers for
2246         scanning, and the use of GtkStyle for visually indicating when
2247         virtual keyboard elements are selected.
2248
2249         keysynth-demo now listens to any keyboard keys with zero-valued
2250         keycodes (i.e. 'unused' keys) and interprets them as
2251         single-switches.
2252
2253         Reworked the shiftlatch code so that shift-down state isn't held
2254         for long periods (it's only synthesized immediately prior to
2255         the keysynth event it's modifying).  Note that shiftlatch in this
2256         demo is a convenience, not intended to take the place of AccessX 
2257         which is the better choice for getting 'sticky' modifier keys.
2258
2259         * libspi/deviceeventcontroller.c:
2260         * at-bridge/bridge.c:
2261         * cspi/spi_registry.c:
2262         Removed some debug print stuff, and put other verbosity in #ifdef
2263         blocks.
2264
2265         * util/magnifier.c:
2266         * util/mag_image.h:
2267         Implemented some more of the magnifier IDL for the simple
2268         magnifier: namely, getZoomRegionParams. 
2269         Added mag_x and mag_y members to MagnifierData struct, aid of this
2270         implementation.
2271         Added GtkWindow::realize signal handler to magnifier, to keep it
2272         from receiving keyboard focus from the WM.
2273
2274 2001-11-23  Mark McLoughlin  <mark@skynet.ie>
2275
2276         * cspi/spi-private.h: my guess at what michael forgot
2277         before he ran off to NZ :-)
2278
2279 2001-11-23  Michael Meeks  <michael@ximian.com>
2280
2281         * cspi/spi_event.c (AccessibleEventListener_removeCallback):
2282         comment out non existant method invoke so we link.
2283
2284         * cspi/spi-util.c (spi_warn_ev): conform to gtk+ style,
2285         use bonobo_exception_get_text for more friendly warnings.
2286
2287         * cspi/spi.c (Obj_Add): move into spi_main & rename
2288         spi_object_add; kill spi.c
2289
2290         * cspi/spi_registry.c
2291         (deregisterGlobalEventListener),
2292         (deregisterGlobalEventListenerAll),
2293         (registerGlobalEventListener): fix exception leaks.
2294
2295         * cspi/spi_main.c (spi_exception): impl. helper, so we
2296         don't leak exceptions.
2297
2298         * cspi/spi_selection.c
2299         (AccessibleSelection_deselectSelectedChild): return the
2300         success state.
2301
2302         * cspi/spi_main.c (spi_ev): impl; hack - gack.
2303         (spi_registry): ditto.
2304         (SPI_init): guard against double inits.
2305
2306         * cspi/*.c: use spi_ev (), and spi_registry () where
2307         appropriate - a temporary hack until we have something
2308         better. Use spi_object_add
2309
2310 2001-11-22  Michael Meeks  <michael@ximian.com>
2311
2312         * cspi/Makefile.am: re organise, install the headers.
2313
2314         * cspi/*.h: add G_BEGIN/END_DECLS
2315
2316 2001-22-11  Bill Haneman  <bill.haneman@sun.com>
2317
2318         * test/simple-at.c:
2319         Added non-preemptive keylistener for key events with no modifiers
2320         and shift-only modifier.
2321
2322         * libspi/keystrokelistener.c:
2323         Removed some verbose diagnostics printout.
2324
2325         * cspi/spi_registry.c:
2326         Fixed a bug that caused all key listeners to be registered as
2327         pre-emptive.
2328         
2329         * libspi/deviceeventcontroller.c:
2330         Fixed bug that caused XGrabKey (preemptive key grab) to be called
2331         for non-preemptive key masks.
2332
2333
2334 2001-22-11  Bill Haneman  <bill.haneman@sun.com>
2335
2336         * docs/reference/idl/at-spi-idl-docs.sgml:
2337         * docs/reference/idl/at-spi-idl-sections.txt:
2338         * docs/reference/idl/at-spi-idl-overrides.txt:
2339         Added missing files.
2340
2341         * docs/reference/Makefile.am:
2342         removed idl from SUBDIRS until we can figure a way to get gtk-doc
2343         to scan the IDL files :-(
2344
2345         * docs/reference:
2346         * docs/cspi:
2347         * docs/idl:
2348         Added .cvsignore files.
2349         
2350 2001-21-11  Bill Haneman  <bill.haneman@sun.com>
2351
2352         * libspi/deviceeventcontroller.c:
2353         * libspi/keystrokelistener.c:
2354         * cspi/spi_event.c:
2355         * cspi/spi_registry.c:
2356         Added filters for KeySets, KeyEventSeq, and event types to key
2357         event dispatching, so listeners should only receive those events
2358         that they requested :-)
2359
2360 2001-21-11  Bill Haneman  <bill.haneman@sun.com>
2361
2362         * configure.in:
2363         * docs/Makefile.am:
2364         * docs/reference:
2365         * docs/reference:Makefile.am:
2366         * docs/reference/cspi:
2367         * docs/reference/cspi:Makefile.am:
2368         * docs/reference/cspi:tmpl:
2369         * docs/reference/cspi:tmpl:*.sgml:
2370         * docs/reference/idl:
2371         * docs/reference/idl:Makefile.am:
2372         * docs/reference/idl:at-spi-idl-sections.txt:
2373         * docs/reference/idl:at-spi-idl-docs.sgml:
2374         * docs/reference/idl:tmpl:
2375         * docs/reference/idl:tmpl:*.sgml:
2376
2377         Restructured docs directory to allow separate 'reference' docs
2378         section, and forked idl and cspi docs.  Added the sgml template
2379         files to CVS.  Added the first sections/structural sgml for the
2380         IDL docs.
2381
2382 2001-11-21  Laszlo Peter  <laca@ireland.sun.com>
2383
2384         * configure.in, libspi/Makefile.am: find libXtst.
2385
2386 2001-11-21  Michael Meeks  <michael@ximian.com>
2387
2388         * test/accessx-gui.c: s/spi_value/value/ - doh.
2389
2390         * libspi/base.[ch]: add.
2391
2392 2001-18-11  Bill Haneman <bill.haneman@sun.com>
2393
2394         * idl/Accessible.idl:
2395         * idl/Application.idl:
2396         * idl/Registry.idl:
2397         * idl/Action.idl:
2398         Started gtk-doc cleanup on IDL.
2399
2400         * libspi/deviceeventcontroller.c:
2401         Added and connected non-preemptive key notification from the
2402         toolkits (in addition to the pre-emptive support from XServer
2403         which we had before, but which causes 'focus flashing').  Filters
2404         are presently limited to key modifiers and global/non-global,
2405         KeySets are presently ignored, as are KeyEvent masks.
2406
2407         Fixed naughtiness in dec_key_listener_new(), we copy the CORBA
2408         structs into the persistant structure rather than just storing
2409         pointers to things that might not persist across servant
2410         invocations.
2411
2412         The XGrabKey call now does async keygrabs, because synchronous
2413         ones were deadlocking with GDK_event code in a very nasty way.
2414
2415         Added boolean to internal method notify_keylisteners, to indicate
2416         whether the event came from the 'toolkit source' or the 'global
2417         (XServer) source' - this is used in the notification process to
2418         determine which listeners to send the event to.
2419
2420         deviceeventcontroller.c is now warning-free.
2421         
2422         * libspi/registry.c:
2423         Fixed regression in application de-registration.
2424         Also fixed some really brain-dead weirdness having to do with
2425         event dispatching - event structs are now duplicated before being
2426         re-marshalled in the dispatch to listeners.  This also fixes a
2427         Solaris build problem.
2428         
2429         
2430 2001-20-11  Michael Meeks  <michael@ximian.com>
2431
2432         * libspi/registry.c
2433         (impl_accessibility_registry_deregister_global_event_listener): 
2434         segv. protection.
2435
2436         * libspi/deviceeventcontroller.c
2437         (spi_device_event_controller_check_key_event): return
2438         FALSE on no virtual method.
2439
2440         * libspi/*..h: make includes work on a correctly pathed install.
2441
2442         * libspi/*.h: include glib/gmacros.h, use G_BEGIN / END _DECLS.
2443
2444         * libspi/application.h: kill unused ( and whacked out )
2445         gboolean *spi_application_set_id (AtkObject *app, long id);
2446
2447 2001-20-11  Michael Meeks  <michael@ximian.com>
2448
2449         * libspi/*.[ch]: further convert to bonobo's type func
2450         macros, remove redundnant casts etc.
2451
2452         * libspi/text.c s/accessibility_text/spi_text/g,
2453         re-order to de-cruft.
2454
2455         * libspi/hypertext.c: re-order to kill a huge slew
2456         of redundant forward decls.
2457
2458         * libspi/relation.c: ditto.
2459
2460         * libspi/image.c: ditto.
2461
2462         * */.cvsignore: update
2463         
2464 2001-20-11  Michael Meeks  <michael@ximian.com>
2465
2466         * libspi/deviceeventcontroller.c
2467         (_controller_register_with_devices): use g_getenv,
2468         kill stdlib.h include.
2469
2470         * libspi/keystrokelistener.c
2471         (spi_keystroke_listener_get_type): kill
2472         (spi_keystroke_listener_class_init),
2473         (spi_keystroke_listener_init): rename to this.
2474
2475         * libspi/text.c (impl_getAttributes): fix warning / bug.
2476
2477         * libspi/*.[ch]: more headers, includes and over commenting.
2478         
2479 2001-20-11  Michael Meeks  <michael@ximian.com>
2480
2481         * libspi/*.[ch]: fixup headers, includes and over commenting.
2482
2483         * libspi/image.c (impl__get_imageDescription): const
2484         correctness warning fix. remove redundant casting.
2485
2486         * libspi/table.c (impl_getRowDescription): ditto.
2487         (impl_getColumnDescription): ditto.
2488
2489         * libspi/libspi.h: add.
2490
2491 2001-19-11  Michael Meeks  <michael@ximian.com>
2492
2493         * libspi/editabletext.c (impl_setAttributes): fix warnings.
2494
2495         * libspi/component.c (accessibility_component_get_type): 
2496         rename to (spi_component_get_type): and macroify.
2497         (accessibility_component_init): rename to
2498         (spi_component_init): this
2499         (accessibility_component_class_init): rename to
2500         (spi_component_class_init): this
2501
2502         * libspi/action.c (spi_action_get_type): kill, use the macro.
2503
2504         * libspi/deviceeventcontroller.c (_compare_listeners): re-order
2505         to avoid prototype.
2506
2507         * libspi/application.c (spi_application_object_event_listener),
2508         (impl_accessibility_application_register_object_event_listener):
2509         warning fixes / const understanding updates.
2510
2511         * libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
2512         warning fixes.
2513
2514 2001-18-11  Bill Haneman <bill.haneman@sun.com>
2515
2516         * libspi/spi_accessible.c: Added docs and C bindings for
2517         AccessibleStateSet. (No implementations yet).  Documentation
2518         coverage for C bindings now 100%. Made docs for event listeners
2519         more explicit.
2520         
2521         * idl/Registry.idl:
2522         Added methods 
2523             boolean notifyListenersSync (in DeviceEventListener listener,
2524                                      in DeviceEvent event);
2525
2526             oneway void notifyListenersAsync (in DeviceEventListener listener,
2527                                           in DeviceEvent event);
2528
2529         Added DeviceEventListener and DeviceEvent structs (may deprecate
2530         KeyStroke and KeystrokeListener in favor of this generic
2531         event/listener framework for devices).
2532
2533         * libspi/deviceeventcontroller.c:
2534
2535         Changed some key listener code to take masks, etc., and paved the
2536         way for integration of toolkit/non-preemptive key events. Changed
2537         signatures of some internal methods.
2538
2539         * at-bridge/bridge.c:
2540         Fixed regression connecting to interface signals, apparently
2541         caused by GTK+ changes.
2542
2543         Added an internal bridge_state_listener to deal with
2544         property-change:accessible-state signals.
2545
2546         Changed the key_listeners GList to store structs (including masks,
2547         etc.) instead of just CORBA_Objects (required for full
2548         implementation of key listener API).
2549
2550         Connected the bridge to all currently supported Atk signals.
2551         Events now supported: 
2552             object:property-change
2553             object:property-change:accessible-name
2554             object:property-change:accessible-state
2555             object:property-change:accessible-description
2556             object:property-change:accessible-parent
2557             object:property-change:accessible-value
2558             object:property-change:accessible-role
2559             object:property-change:accessible-table-caption
2560             object:property-change:accessible-table-column-description
2561             object:property-change:accessible-table-column-header
2562             object:property-change:accessible-table-row-description
2563             object:property-change:accessible-table-row-header
2564             object:property-change:accessible-table-summary
2565             object:children-changed
2566             object:visible-data-changed
2567             object:selection-changed
2568             object:text-selection-changed
2569             object:text-changed
2570             object:text-caret-moved
2571             object:row-inserted
2572             object:row-reordered
2573             object:row-deleted
2574             object:column-inserted
2575             object:column-reordered
2576             object:column-deleted
2577             object:model-changed        
2578
2579 2001-16-11  Bill Haneman <bill.haneman@sun.com>
2580
2581         * libspi/hyperlink.c,h:
2582         Fixed some broken stuff in hyperlink.
2583         
2584         * libspi/relation.h:
2585         * libspi/relation.c:
2586         * cspi/spi_accessible.c:
2587         Initial implementations of AccessibleRelation methods, and docs.
2588
2589         * libspi/accessible.c:
2590         Fixed a bug that caused SEGV  if an accessible
2591         object's description is NULL, and a client
2592         requests it.  An empty string is now returned.
2593
2594         * cspi/spi_editabletext.c:
2595         * cspi/spi_hypertext.c:
2596         * cspi/spi_image.c:
2597         * cspi/spi_hyperlink.c:
2598         * cspi/spi_table.c:
2599         Added docs.  
2600
2601         Doc coverage now 95%.
2602
2603 2001-16-11  Bill Haneman <bill.haneman@sun.com>
2604
2605         One last namespacing revision:
2606         * libspi/accessibleeventlistener.[ch]:
2607         Renamed SpiAccessibleEventListener to SpiEventListener,
2608         (no need for two namespaces ;-)
2609
2610         And lots of documentation fixes:
2611
2612         * docs/at-spi-docs.sgml:
2613         Fixed 'underscore vs. hyphen' bug that was preventing
2614         the gtk-doc API docs from being automatically generated.
2615
2616         * cspi/spi-impl.h
2617         * cspi/spi-listener.h
2618         * cspi/spi.h
2619         * cspi/spi_accessible.c
2620         * cspi/spi_action.c
2621         * cspi/spi_application.c
2622         * cspi/spi_component.c
2623         * cspi/spi_editabletext.c
2624         * cspi/spi_event.c
2625         * cspi/spi_hypertext.c
2626         * cspi/spi_main.c
2627         * cspi/spi_registry.c
2628         * cspi/spi_selection.c
2629         * cspi/spi_text.c
2630         * cspi/spi_value.c
2631         * docs/Makefile.am
2632         * docs/at-spi-docs.sgml
2633         * docs/at-spi-sections.txt
2634         
2635         Added and fixed up gtk-doc documentation in cspi.
2636         
2637         Interfaces now (fully) documented (subject to revision and enhancement):
2638         SPI_main
2639         Event Listener Support
2640         Registry API
2641         AccessibleApplication
2642         Accessible
2643         AccessibleAction
2644         AccessibleComponent
2645         AccessibleEditableText
2646         AccessibleSelection
2647         AccessibleText
2648         AccessibleValue
2649
2650         still pending:
2651         AccessibleStateSet
2652         AccessibleRelationSet
2653         AccessibleImage
2654         AccessibleTable
2655         AccessibleHyperlink
2656         
2657 2001-14-11  Bill Haneman <bill.haneman@sun.com>
2658
2659         * at-bridge/bridge.c:
2660         Initial work for toolkit-level key snooper connection by bridge.
2661
2662         * cspi/spi-impl.h:
2663         * cspi/spi_*.h:
2664         * cspi/spi_*.c:
2665         New typedefs and fixes to support new namespacing, and cleaner
2666         separation of cspi bindings from libspi bonobo implementation.  
2667         Removed inconsistent and extraneous Spi* namespace prefix that
2668         had crept into cspi headers.
2669         Lots of comment fixes that sed had missed.
2670
2671         * cspi/spi-roletypes.h:
2672         * cspi/spi-statetypes.h:
2673         Added SPI_ prefix to Role and State typedefs, and changed all-caps ROLE type
2674         to AccessibleRoleType.
2675         
2676         * libspi/accessibleeventlistener.h:
2677         Fixed minor namespacing weirdness.
2678
2679         * libspi/deviceeventcontroller.c:
2680         Reordered some internal API for device listeners.
2681         Changed the key registry final boolean to 'is_system_global'
2682         rather than 'is_synchronous', which is more descriptive of its 
2683         actual meaning.
2684         Added spi_device_event_controller_new().
2685         Added  SpiRegistry backpointer to SpiDeviceEventControllerClass.
2686          
2687         * libspi/keystrokelistener.[ch]:
2688         Namespaced KeystrokeListener to SpiKeystrokeListener.
2689         Changed uses of keymasks to use SPI_ prefix, and did other
2690         knock-on fixups.
2691
2692         * libspi/keymasks.h:
2693         Namespaced keymask constants with SPI_ prefix.
2694
2695         * libspi/registry.c:
2696         Some warning fixes, and knock-on fixes from namespace changes.
2697
2698         * test/Makefile.am:
2699         Added rules for accessx-gui test program.
2700
2701         * test/accessx-gui.c:
2702         Added a simple GUI program in GTK+-2.0 for the AccessX keyboard
2703         utility.  It doesn't actually use at-spi, but it's still cool and
2704         useful ;-)
2705
2706         * test/keysynth-demo.c:
2707         * test/simple-at.c:
2708         * test/at.c:
2709         * test/app.c:
2710         Fixes so that these test clients work properly with the namespaced
2711         libraries. (Incompletely tested for technical reasons, fixes may follow)
2712         
2713
2714 2001-13-11  Michael Meeks  <michael@ximian.com>
2715
2716         * libspi/application.c
2717         (impl_accessibility_application_get_version),
2718         (impl_accessibility_application_get_toolkit_name):
2719         warning fixes.
2720         (impl_accessibility_application_set_id),
2721         (impl_accessibility_application_get_id): remove
2722         redundant casting code.
2723
2724         * libspi/action.c (impl_getDescription): fix warnings.
2725
2726         * libspi/accessible.c
2727         (impl_accessibility_accessible_get_parent),
2728         (impl_accessibility_accessible_get_child_at_index),
2729         (impl_accessibility_accessible_get_state),
2730         (impl_accessibility_accessible_get_relation_set):
2731         warning fixes & include action.h
2732
2733 2001-13-11  Michael Meeks  <michael@ximian.com>
2734
2735         * *.[ch] fix bits I screwed up:
2736
2737                 s/([^ \tb(\*\&\?\",])spi_/\1/g;
2738                 s/([^ \tb(\*\&\?\",])Spi/\1/g;
2739         
2740 2001-13-11  Michael Meeks  <michael@ximian.com>
2741
2742         * *.[ch] Namespace libspi into spi_ and Spi.
2743
2744 2001-13-11  Michael Meeks  <michael@ximian.com>
2745
2746         * Makefile.am: dist & install at-spi-1.0.pc
2747
2748         * libspi/Makefile.am: install into at-spi-1.0
2749
2750         * idl/Makefile.am (idldir): install into at-spi-1.0
2751
2752         * at-spi-1.0.pc.in: add.
2753
2754         * configure.in: build it.
2755
2756 2001-12-11  Bill Haneman <bill.haneman@sun.com>
2757
2758         * test/keysynth-demo.c:
2759         Use a 'realize' signal-handler to set the WM properties for
2760         the virtual keyboard, rather than making it a "POPUP" type
2761         override-redirect window (thanks to anders carlsson for that
2762         tip!)
2763
2764 2001-11-11  Bill Haneman <bill.haneman@sun.com>
2765
2766         * test/Makefile.am:
2767         * test/keysynth-demo.c:
2768         Added new test of key synthesis, which creates a simple
2769         (mouse-operated) onscreen keyboard.  It inserts key events into
2770         the currently-focused window, thus it does not grab keyboard focus
2771         itself.
2772
2773         * cspi/spi_registry.c:
2774         Added C binding for AT-SPI generateKeyEvent.
2775
2776         * libspi/deviceeventcontroller.c:
2777         Added call to XFilterEvent so that key listener works with XIM (we
2778         hope).  Added event_synth_type to generateKeyEvent, so that we can
2779         produce KEY_PRESS, KEY_RELEASE, KEY_PRESSRELEASE (pair), or
2780         synthesize a press/release pair for KeySyms.    
2781         
2782 2001-11-09  Bill Haneman <bill.haneman@sun.com>
2783
2784         * libspi/Makefile.am: 
2785         * registryd/Makefile.am:
2786         (temporary) hack to include libXtst in libspi and registryd.
2787         (Needed for keystroke synthesis, see below).
2788
2789         * idl/Registry.idl:
2790         Improved API for registerKeystrokeListener, in accordance with
2791         discussions with Gnopernicus team and X server research.
2792
2793         * libspi/registry.c:
2794         * libspi/deviceeventcontroller.c:
2795         * libspi/accessible.c:
2796         * libspi/keystrokelistener.c:
2797         Changes and fixes to support keylisteners for potentially
2798         consumed key events (that is, 'passive grabs').
2799         Added implementation for generateKeyEvent() [untested].
2800
2801         * cspi/spi.h:
2802         Changes to registerKeystrokeListener() API, as above.
2803         Added deregisterGlobalEventListenerAll(), and 
2804         deregisterKeystrokeListener(), which are needed for clean exit of
2805         clients.
2806         Added typedefs for KeyListenerSyncType, KeyEventMask, and KeySet,
2807         and a macro ALL_KEYS which may be used in place of a KeySet pointer.
2808         
2809         * cspi/spi_registry.c:
2810         Added implementations of function prototypes mentioned above.
2811         
2812         * registryd/registryd.c:
2813         Added the key listener event source as a g_timeout(), to allow
2814         receipt of key events that are not caught by GDK (since GDK
2815         doesn't support passive keygrabs, this was necessary).
2816
2817         * test/simple-at.c:
2818         Changed to attach a keylistener to 'Alt' keys, and
2819         respond to the following keycommands: Alt-M (toggle magnifier);
2820         Alt-F (toggle speech); Alt-Q (quit).
2821         Added an exit routine to deregister the listeners, and a key
2822         listener that prints some key info to the console when a key
2823         matches the listener mask (and is thus received by the listener).
2824         
2825         * util/idl/Magnifier.idl:
2826         Changes to magnifier API to support multiple zoom regions,
2827         non-uniform scaling in x and y, markDirty, and a host of other
2828         features that would be useful to magnification.
2829
2830         * util/mag_image.h:
2831         * util/mag_client.c:
2832         * util/mag_client.h:
2833         * util/mag_control.c:
2834         * util/magnifier.c:
2835         Source code changes to support the above IDL changes.
2836         
2837         * util/mag_image.c:
2838         As above, and also changes to use a (slower) generic conversion
2839         path for colormap conversions, since the fast RGB conversions have been
2840         reported to fail for 16-bit displays.
2841
2842 2001-10-26  Michael Meeks  <michael@ximian.com>
2843
2844         * libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
2845
2846 <2001-10-26  Laszlo Peter <laca@ireland.sun.com>
2847
2848         * at-bridge/Makefile.am: fix LDFLAGS.
2849
2850 <2001-10-09  Bill Haneman <bill.haneman@sun.com>
2851
2852         * at-bridge/bridge.c:
2853         Re-worked listeners for toolkit events, now we have signal
2854         and property listeners. Added a private method
2855         register_atk_event_listeners(), which registers with the
2856         various atk and gtk signals we need to monitor in order to emit
2857         our at-spi events.
2858         Added emission hook for AtkObject:property-change events, to
2859         support the 'property listeners'.
2860         Fixed some alloc()s of Accessibility_Event structs to use CORBA
2861         allocation.
2862
2863         * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
2864         which emit warnings and exit, respectively, if CORBA errors occur
2865         during remote calls, and we now use these methods to check most of
2866         our CORBA calls in the C bindings.
2867
2868         * cspi/spi_accessible.c:
2869         Changed AccessibleSelection_refSelectedChild() to
2870         AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
2871         now increment refcounts.
2872
2873         * cspi/spi_component.c:
2874         Fixed some long pointer casts (dangerous!) to pass pointers to
2875         CORBA_longs of the proper type to the CORBA stubs, and copy the
2876         data into the longs that were passed into the C bindings code.
2877         
2878         * at-bridge/bridge.c:
2879         
2880         * libspi/accessible.c:
2881         Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
2882         hyperlinks, AtkHyperlink is an object type.     
2883
2884         * libspi/application.c:
2885         Added various conversions to and from "generic" event types and
2886         atk-specific types; this is really part of the 'bridge'
2887         implementation but is valid for all AtkObject-based accessibility 
2888         implementations.
2889
2890         * libspi/editabletext.c:
2891         Fixed nasty bug wherein editable text's finalize method was
2892         unref'ing tha AtkObject reference that the text parent class was
2893         about to unref _again_.  There was also a nasty inheritance bug
2894         that meant that the AccessibleEditableText class was corrupt.
2895
2896         * libspi/selection.c:
2897         Provided implementations for some selection API that was broken.
2898         
2899         * idl/Application.idl:
2900         Added registerObjectEventListener () method.
2901
2902         * THROUGHOUT:
2903         Fixed a number of return values that were Bonobo_Unknowns from
2904         bonobo_object_corba_objref(), which I
2905         forgot to dup before returning.  Changed instances of 
2906         bonobo_object_corba_objref (bonobo_object(o)) to
2907         BONOBO_OBJREF(o), for concision and clarity.
2908         
2909 <2001-10-13  Louise Miller <louise.miller@sun.com>
2910
2911         * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
2912         idl/Event.idl, idl/Registry.idl
2913         Changed these files to include Bonobo_Unknown.idl instead
2914         of Bonobo.idl
2915
2916 <2001-09-10  Marc Mulcahy <marc.mulcahy@sun.com
2917
2918         * libspi/component.c libspi/component.h:
2919                 Fixed typo.  Added assertions for object checks in 
2920         AccessibleComponent code.
2921
2922 <2001-10-09  Bill Haneman <bill.haneman@sun.com>
2923
2924         * idl/Accessible.idl:
2925                 Added 'isEqual (Accessible *object)' 
2926         method for Accessible. (Not Yet Implemented).
2927         
2928         * idl/Registry.idl:
2929                 Changed signature of registerKeystrokeListener() to
2930         take a KeySet and KeyEventSeq so that specific keys and event
2931         types could be requested for monitoring, and added a flag
2932         is_synchronous so that either synchronous or asynchronous
2933         notification could be requested.  (However this is not all
2934         implemented yet). This also meant adding two new typedefs,
2935         KeyEventSeq and KeySet.
2936
2937         * idl/Relation.idl: 
2938                 Added two new relations, RELATION_TOOLTIP_FOR and
2939         RELATION_LEAFNODE_OF.
2940
2941         * idl/State.idl:
2942                 Added new state, STATE_HAS_TOOLTIP.
2943         
2944         * libspi/text.c, editabletext.c:
2945                 Added new assertions to all casts of bonobo-objects from
2946         CORBA servants, to prevent Text API calls on non-text objects.
2947                 Changed suspect casts of int-pointer types, so that we
2948         always send a valid CORBA_long pointer to the CORBA APIs that use
2949         in/out long parameters.  We then have to copy from the CORBA_long
2950         into the regular long or int for return to the C bindings, or
2951         vice-versa when returning parameters from ATK calls to the bonobo wrappers.
2952         
2953         * cspi/spi_text.c:
2954         * libspi/deviceeventcontroller.c:
2955                 Cleaned these sources up.
2956         * idl/Text.idl:
2957                 Changed return type for getCharacterAtOffset to
2958         CORBA_unsigned_long, to allow for 32-bit characters.
2959         
2960                 
2961 <2001-10-08  Bill Haneman <bill.haneman@sun.com>
2962
2963         * util/Makefile.am:
2964         * idl/Makefile.am:
2965                 Fixed 'make dist' so that distro compiles...
2966         * libspi/keymasks.h:
2967                 new file.
2968         * cspi/spi-listener.c:
2969                 KeystrokeListenerCB now returns a boolean.
2970         * cspi/spi.h:
2971                 Added KeyEventType struct, and KeyStroke.
2972                 Also added createKeystrokeListener(),
2973         KeystrokeListener_addCallback(),
2974         KeystrokeListener_removeCallback(), and added a keymask to
2975         registerKeystrokeListener().
2976         * cspi/spi_accessible.c:
2977                 Changed numerous return types for interfaces from
2978         AccessibleComponent to Accessible<InterfaceName>; this was
2979         probably a cut-and-paste error.
2980         * cspi/spi_event.c:
2981                 Implementations of new KeystrokeListener api (from spi.h,
2982         above).
2983         * idl/Registry.idl:
2984                 Changes to key modifier mapping.
2985                 Created ControllerEventMask struct.
2986                 Made DeviceEventController derive from Bonobo::Unknown.
2987         * idl/Text.idl:
2988                 Removed TEXT_BOUNDARY_CURSOR_POS boundary type.
2989         * libspi/deviceeventcontroller.c:
2990                 Added a number of new internal (private) methods.
2991         * libspi/editabletext.c:
2992         * libspi/editabletext.h:
2993                 Fixed a number of bugs related to the fact that
2994         editabletext inherits from text.  Fixed the EditableText struct,
2995         the init() call, and use correct casts when calling Text methods
2996         from an EditableText object.  Removed (duplicate) atko from the
2997         EditableText structure, we use the one in the parent Text
2998         structure via the casts mentioned above.
2999         * libspi/keystrokelistener.[ch]:
3000         * libspi/registry.c:
3001                 Changes in support of keyboard handling (above).
3002         
3003         Keyboard handling, though partly functional, is still not
3004         recommended for at-spi client use as there is considerable 
3005         work yet to be done.
3006
3007         * libspi/text.c:
3008                 Changed some places where pointers to various int types
3009         are cast to be pointers to CORBA_long types and vice-versa:
3010         pointer casting is not safe so we pass pointers of the correct
3011         types and then cast the result before putting it into the target
3012         pointers.
3013
3014         * libspi/text.h: minor typos corrected.
3015         * test/simple-at.c: 
3016                 We now speak not only the name of a Text element, but the
3017         first sentence of its content, when it receives focus.
3018                 I also changed the text compression to 75% from 50%.
3019         * util/Accessibility_Util.server.in:
3020                 Changed the default magnifier type to be a 3x vertical
3021         splitscreen magnifier (was previously a 2x horizontal one).
3022
3023 <2001-10-03  Bill Haneman <bill.haneman@sun.com>
3024
3025         * libspi/keystrokelistener.h:
3026         * libspi/keystrokelistener.c:
3027                 Initial functional implementations of KeystrokeListener.
3028         * idl/Registry.idl:
3029         
3030 <2001-10-05  Marc Mulcahy <marc.mulcahy@sun.com>
3031
3032         Fixed string handling for NULL strings in libspi.
3033         Added spi_freeString to free strings returned by C bindings.
3034
3035 <2001-09-30  Bill Haneman <bill.haneman@sun.com>
3036
3037         * libspi/keystrokelistener.h:
3038         * libspi/keystrokelistener.c:
3039                 Began (no-op) implementations of KeystrokeListener
3040                         (see below).
3041         * libspi/deviceeventcontroller.c:
3042         * libspi/deviceeventcontroller.h:
3043                 Began creating implementations of DeviceEventController,
3044                         to handle keystroke and mouse event listening and
3045                         synthesis.
3046         * libspi/accessible.c:
3047                 Stubbed-in the implementations for
3048                         Accessibility_Accessible_getState and
3049                         Accessibility_Accessible_getRelationSet.
3050         * libspi/registry.c:
3051                 Improved de-registration process and fixed some bugs, 
3052                         deregistration now works correctly.
3053         * libspi/desktop.c:
3054                 Added initialization of applications list (to NULL).
3055         * util/magnifier.c:
3056                 Reduced speech compression from 0.5 to 0.7, for demo.
3057                 Changed call to gdk_window_set_decorations()
3058                         to gtk_window_set_decorated().
3059         * at-bridge/bridge.c:
3060                 Bridge now deregisters when app exits, via
3061                         registration of a cleanup function
3062                         with the g_atexit() call.
3063                         Required making 'app' static, renamed 'this_app'.
3064                 Fixed broken use of bonobo_init, passing argv wrongly.
3065
3066 <2001-09-27  Bill Haneman <bill.haneman@sun.com>
3067
3068         * util:
3069         * util/Makefile.am: 
3070                 Created a new directory for 
3071                         accessibility-related utilities, primarily for
3072                         testing and demo purposes, but with possible
3073                         end-user utility.
3074         
3075         * util/magnifier.c:
3076         * util/magnifier.h:
3077         * util/mag_image.c:
3078         * util/mag_image.h:
3079                 Onscreen magnifier utility that
3080                         is implemented as a bonobo service.
3081         
3082         * util/mag_client.c:
3083         * util/mag_client.h:
3084                 Client-side support (simple C bindings) 
3085                         for Magnification service
3086         
3087         * util/mag_control.c:
3088                 Client program example for 
3089                         Magnification service
3090         
3091         * util/Accessibility_Magnifier.server.in:
3092                 Bonobo-activation file for the 
3093                         Magnification service.
3094         
3095         * util/idl:
3096         * util/idl/Magnifier.idl:
3097                 IDL defining the bonobo Magnification
3098                         service interface.
3099
3100         * test/simple-at.c:
3101                 Modifications to use the bonobo-activated magnifier
3102                         above, in place of trying to connect to an existing
3103                         magnifier that uses socket-listening IPC.
3104
3105                 If env variable MAGNIFIER is set, a magnifier service
3106                         will be started if one does not exist.
3107         
3108 <2001-09-25  Bill Haneman <bill.haneman@sun.com>
3109         * at-bridge/bridge.c:
3110                 applied patch from Marc to build and run 
3111                 against new glib and gtk+ (seemed like a change 
3112                 to bonobo_init signature was made ?)
3113         * test/simple-at.c:
3114                 made festival-server support turned off by default.
3115                 Added support for a simple magnifier (off by default)
3116                 which will be added to a 'util' directory later.
3117         * at-bridge/Makefile.am:
3118                 Changed "application.h" header from a 'source'
3119                 to a 'dependency' of libat-bridge.
3120
3121 <2001-09-12  Marc Mulcahy <marc.mulcahy@sun.com>
3122         * cspi/Makefile.am:
3123                 Added spi-util.c.
3124
3125         * cspi/spi-util.c:
3126                 Fixed typo
3127
3128         * cspi/spi.c:
3129                 Added interface implementation c files to list of
3130                         includes so they are included in libcspi.
3131
3132         * cspi/spi.h:
3133                 Changed prototype of AccessibleAction_doAction to return a
3134                         boolean.
3135                 Changed prototype of AccessibleTable_getCaption to
3136                         return an Accessible.
3137                 Changed prototype of AccessibleTable_getSelectedRows
3138                         and AccessibleTable_getSelectedColumns to
3139                         return a long (returns the number of selected rows
3140                         or columns respectively).
3141                 Changed name of AccessibleText_refRunAttributes to
3142                         AccessibleText_getAttributes.
3143                 Changed prototype of AccessibleText_getCharacterExtents to
3144                         return a void rather than a boolean. 
3145                 Added support for a AccessibleCoordType parameter
3146                         specifying what type of coordinates are desired.
3147                 Added an AccessibleCordType parameter to
3148                         AccessibleText_getPointAtOffset.
3149
3150         * cspi/spi_accessible.c:
3151                 Added code to return the outstanding interfaces from
3152                         Accessible_queryInterface.
3153
3154         * cspi/spi_action.c:
3155                 Fixed typos.
3156                 Corrected call to getNActions to call the c binding
3157                         for an attribute.
3158
3159         * cspi/spi_editabletext.c:
3160                 Fixed typos.
3161                 Changed name from setRunAttributes to setAttributes.
3162
3163         * cspi/spi_hyperlink.c:
3164                 Fixed typos.
3165                 Changed call to getNAnchors to correctly call the c
3166                         binding for an attribute.
3167
3168         * cspi/spi_hypertext.c:
3169                 Fixed typos.
3170                 Changed getImageDescription to correctly call the
3171                         binding for an attribute.
3172
3173         * cspi/spi_selection.c:
3174                 Changed getNSelectedChildren to correctly call the c
3175                         binding for the attribute.
3176                 Changed refSelectedChild to getSelectedChild.
3177
3178         * cspi/spi_table.c:
3179                 Fixed typos.
3180                 Changed getCaption to return an Accessible.
3181                 Fixed calls which retrieve attributes.
3182                 Changed refAt to getAccessibleAt.
3183                 Changed getNSelectedRows and getNSelectedColumns to
3184                         return longs.
3185
3186         * cspi/spi_text.c:
3187                 Changed getCharacterExtents and getPointAtOffset to accept an
3188                         AccessibleCoordType.
3189                 Fixed typos.
3190                 Changed calls which retrieve attributes.
3191                 Changed refRunAttributes to getAttributes.
3192
3193         * cspi/spi_value.c:
3194                 Fixed typos.
3195
3196         * idl/Hyperlink.idl:
3197                 Changed n_anchors attribute to nAnchors to keep naming
3198                         convention consistent.
3199
3200         * idl/Table.idl:
3201                 Made Table inherit from Bonobo::Unknown.
3202                 Added nSelectedColumns and nSelectedRows attributes.
3203
3204         * idl/Value.idl:
3205                 Made Value inherit from Bonobo::Unknown.
3206
3207         * libspi/hyperlink.c:
3208                 Change for nAnchors attributte name change.
3209
3210 <2001-09-12  Marc Mulcahy <marc.mulcahy@sun.com>
3211         * cspi/Makefile.am:
3212                 Added spi-util.c.
3213
3214         * cspi/spi-util.c:
3215                 Fixed typo
3216
3217         * cspi/spi.c:
3218                 Added interface implementation c files to list of
3219                         includes so they are included in libcspi.
3220
3221         * cspi/spi.h:
3222                 Changed prototype of AccessibleAction_doAction to return a
3223                         boolean.
3224                 Changed prototype of AccessibleTable_getCaption to
3225                         return an Accessible.
3226                 Changed prototype of AccessibleTable_getSelectedRows
3227                         and AccessibleTable_getSelectedColumns to
3228                         return a long (returns the number of selected rows
3229                         or columns respectively).
3230                 Changed name of AccessibleText_refRunAttributes to
3231                         AccessibleText_getAttributes.
3232                 Changed prototype of AccessibleText_getCharacterExtents to
3233                         return a void rather than a boolean. 
3234                 Added support for a AccessibleCoordType parameter
3235                         specifying what type of coordinates are desired.
3236                 Added an AccessibleCordType parameter to
3237                         AccessibleText_getPointAtOffset.
3238
3239         * cspi/spi_accessible.c:
3240                 Added code to return the outstanding interfaces from
3241                         Accessible_queryInterface.
3242
3243         * cspi/spi_action.c:
3244                 Fixed typos.
3245                 Corrected call to getNActions to call the c binding
3246                         for an attribute.
3247
3248         * cspi/spi_editabletext.c:
3249                 Fixed typos.
3250                 Changed name from setRunAttributes to setAttributes.
3251
3252         * cspi/spi_hyperlink.c:
3253                 Fixed typos.
3254                 Changed call to getNAnchors to correctly call the c
3255                         binding for an attribute.
3256
3257         * cspi/spi_hypertext.c:
3258                 Fixed typos.
3259                 Changed getImageDescription to correctly call the
3260                         binding for an attribute.
3261
3262         * cspi/spi_selection.c:
3263                 Changed getNSelectedChildren to correctly call the c
3264                         binding for the attribute.
3265                 Changed refSelectedChild to getSelectedChild.
3266
3267         * cspi/spi_table.c:
3268                 Fixed typos.
3269                 Changed getCaption to return an Accessible.
3270                 Fixed calls which retrieve attributes.
3271                 Changed refAt to getAccessibleAt.
3272                 Changed getNSelectedRows and getNSelectedColumns to
3273                         return longs.
3274
3275         * cspi/spi_text.c:
3276                 Changed getCharacterExtents and getPointAtOffset to accept an
3277                         AccessibleCoordType.
3278                 Fixed typos.
3279                 Changed calls which retrieve attributes.
3280                 Changed refRunAttributes to getAttributes.
3281
3282         * cspi/spi_value.c:
3283                 Fixed typos.
3284
3285         * idl/Hyperlink.idl:
3286                 Changed n_anchors attribute to nAnchors to keep naming
3287                         convention consistent.
3288
3289         * idl/Table.idl:
3290                 Made Table inherit from Bonobo::Unknown.
3291                 Added nSelectedColumns and nSelectedRows attributes.
3292
3293         * idl/Value.idl:
3294                 Made Value inherit from Bonobo::Unknown.
3295
3296         * libspi/hyperlink.c:
3297                 Change for nAnchors attributte name change.
3298
3299
3300 <2001-09-05  Marc Mulcahy <marc.mulcahy@sun.com>
3301
3302         implementations-- made server implementations own AtkObject pointers
3303         rather than their respective AtkInterrface pointers to fix
3304         refcounting.  AtkHyperlink is still broken.
3305
3306 <2001-09-04  Bill Haneman <bill.haneman@sun.com>
3307         * cspi/spi_accessible.c:
3308                 Added method Accessible_Role_getName(),
3309                         and requisite string array (role_names).
3310                 Added conversion string_from_corba_strin() call
3311                         to Accessible_getName and _getDescription.
3312         * libspi/accessible.c:
3313                 Added implementation for Accessible_getRole()
3314         * test/simple-at.c:
3315                 Added festival support, used if environment variable
3316                         FESTIVAL is set.
3317         
3318 2001-09-04  Bill Haneman <bill.haneman@sun.com>
3319
3320         * at-bridge/bridge.c:
3321             Now allocate Accessibility_Event using
3322             Accessibility_Event__alloc() instead of g_new0().
3323         * libspi/accessibleeventlistener.c:
3324             Initialize AccessibleEventListener->callbacks to NULL.
3325             Fixed accessible__event_listener_init() param, changed to
3326             "AccessibleEventListener *" type.
3327             Changed a bonobo_object_release_unref() call to
3328             Accessibility_Accessible_unref().
3329         * libspi/listener.c:
3330             Changed Bonobo_Unknown_unref to (equivalent) 
3331             Accessibility_Accessible_unref.
3332         * libspi/registry.c:
3333             Changed bonobo_object_release_unref to 
3334             Accessibility_Accessible_unref.
3335         
3336 <2001-09-04  Marc Mulcahy <marc.mulcahy@sun.com>
3337         
3338         * Added files:
3339             spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
3340             spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
3341             spi-util.c spi-util.h
3342             Implementations for C bindings to remaining accessibility 
3343             interfaces.
3344
3345 <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
3346         
3347         * idl/Action.idl:
3348             changed return value of Action from void to boolean to 
3349             bring in line with ATK.
3350
3351         * idl/Text.idl:
3352             Changed getText funcions to return "out" start and end offsets.
3353             Changed getAttributes to take and offset and return the start 
3354             and end offset of the attribute run.
3355             Changed getOffsetAtPoint and getCharacterExtents to take an 
3356              enum describing whether coordinates are window or screen.
3357
3358         * Added files:
3359             libspi/action.c libspi/action.h libspi/editabletext.c 
3360             libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
3361             libspi/hypertext.c libspi/hypertext.h libspi/image.c 
3362             libspi/image.h libspi/selection.c libspi/selection.h
3363             libspi/table.c libspi/table.h libspi/text.c libspi/text.h 
3364             libspi/value.c libspi/value.h
3365             Added server implementations for outstanding ATK interfaces 
3366             not yet implemented.
3367  
3368 2001-09-04  Bill Haneman <bill.haneman@sun.com>
3369
3370         * idl/Action.idl:
3371                 Added (missing) getName() method. 
3372                 Made nActions an attribute.
3373         * idl/EditableText.idl:
3374                 Changed order of params in setAttributes.
3375         * idl/Hyperlink.idl:
3376                 Removed getAnchor, added getURI.
3377         * idl/Image.idl:
3378                 Changed attributes to methods, for efficiency
3379                 (so that getting extents can be done in one call)
3380         * idl/Selection.idl:
3381                 Changed nSelectedChildren to attribute, and re-indented.
3382         * idl/Table.idl: changed nrows, ncolumns, caption, summary 
3383                 to attributes.
3384         * idl/Text.idl: reformatted to match our coding style.
3385                 (temporarily?) removed getRowColumnAtOffset().
3386                 Changed text selection API to support multi-select and
3387                 non-contiguous selections, as in ATK.
3388         * idl/Value.idl: changed some methods to attributes.
3389
3390 2001-08-24  Mark McLoughlin <mark@skynet.ie>
3391
3392         * libspi/listener.c(impl_notify_event):
3393         BonoboUnkown_unref the source instead
3394         of bonobo_object_release_unref - the ORB
3395         handles the releasing.
3396
3397         * configure.in: require ORBit-2.3.94 for
3398         this behaviour.
3399
3400 2001-08-21  Bill Haneman <bill.haneman@sun.com>
3401
3402         Tagged CVS repository 'EA_1_0'.
3403         * README.EARLY_ACCESS:
3404         Alphabetized acknowledgements list, and
3405         added someone.
3406         Listed some known dependencies of at-spi.
3407
3408 2001-08-20  Bill Haneman <bill.haneman@sun.com>
3409
3410         * docs/at-spi-docs.sgml:
3411         * docs/at-spi-sections.txt:
3412         * docs/at-spi-overrides.txt: (Added zero-length file)
3413         Documentation improvements - gtk-doc should build
3414         docs for all implemented C bindings now.
3415         * cspi/Makefile.am:
3416         * cspi/spi_main.c:
3417         * cspi/spi.c: (New file)
3418         * cspi/spi_event.c: (New file)
3419         * cspi/spi_registry.c: (New file)
3420         * cspi/spi_accessible.c: (New file)
3421         * cspi/spi_application.c: (New file)
3422         * cspi/spi_component.c: (New file)
3423         Split spi_main.c into six parts, and included them from
3424         "spi.c".  This is a bit of a hack, probably temporary,
3425         but required by gtk-doc, apparently.
3426         
3427 2001-08-20  Bill Haneman <bill.haneman@sun.com>
3428
3429         * docs/Makefile.am:
3430         * docs/at-spi-docs.sgml:
3431         * docs/at-spi-sections.txt:
3432         * configure.in:
3433         Initial checkins/modifications for gtk-doc generation.
3434         * cspi/spi.h:
3435         * cspi/spi.c:
3436         Added (missing) interface query methods to Accessible's C binding.
3437         * cspi/spi-impl.h:
3438         Added GenericInterface type definition.
3439         * test/simple-at.c:
3440         Added query for AccessibleComponent interface to focus event handler.
3441         Added printout of bounding box for focussed component.
3442         * libspi/component.c:
3443         Added partial implementation for AccessibleComponent to C binding.
3444         * idl/Application.idl:
3445         * libspi/registry.c:
3446         * libspi/listener.c:
3447         * libspi/application.c:
3448         * libspi/application.h:
3449         Changed "ID" attribute type from string to long.
3450
3451 2001-08-19  Bill Haneman <bill.haneman@sun.com>
3452
3453         * cspi/spi.h:
3454         * cspi/spi.c:
3455         Made method naming consistent: methods taking object args
3456         start with uppercase, other methods (except those using
3457         acronyms) start with lowercase.  Underscores delimit between
3458         object names and method names:
3459         SPI_init() - uppercase since it starts with an acronym.
3460         getDesktopCount () - lowercase start since no object param0.
3461         Accessible_getName() - uppercase object type name, studlyCaps method
3462                                name.
3463
3464         *cspi/spi.h:
3465         Added gtk-doc documentation for all currently implemented
3466         methods in the C bindings API.
3467
3468 2001-08-18  Bill Haneman <bill.haneman@sun.com>
3469
3470         * Makefile.am : changed build order to build test last.
3471         * cspi/spi.h :
3472         * cspi/spi_main.c :
3473         Changed "createEventListener" to "CreateEventListener".
3474         * libspi/accessibleeventlistener.c :
3475         Bugfix for addition of callbacks.
3476         * test/Makefile.am :
3477         * test/simple-at.c :
3478         Added new test that uses the C bindings API.
3479         * idl/Event.idl :
3480         * libspi/listener.c :
3481         * libspi/registry.c :
3482         * libspi/accessibleeventlistener.c :
3483         * at-bridge/bridge.c :
3484         Renamed member "target" of Accessibility_Event to "source",
3485         which is more descriptive.
3486         
3487
3488 2001-08-18  Bill Haneman <bill.haneman@sun.com>
3489
3490         * Makefile.am: 
3491         * configure.in :
3492         * cspi/Makefile.am :
3493         Added makefile support for at-spi/cspi directory.
3494         * cspi/spi.h : 
3495         * cspi/spi-impl.h :
3496         * cspi/spi-listener.h : (NEW FILE)
3497         Added support for/use of spi-listener.h.
3498         * cspi/spi_main.c :
3499         C bindings now build successfully, with no warnings.
3500         * libspi/accessibleeventlistener.h : (NEW FILE)
3501         * libspi/accessibleeventlistener.c : (NEW FILE)
3502         * libspi/Makefile.am :
3503         Added new object type "AccessibleEventListener"
3504         which inherits from Listener, and allows attachment
3505         of in-process callbacks (so that a client with a listening
3506         object instance can add functionality to the local 
3507         implementation, dynamically).
3508
3509 2001-08-18  Bill Haneman <bill.haneman@sun.com>
3510
3511         * libspi/accessible.c: 
3512         Add implementation for get_index_in_parent().
3513         * cspi/spi.h : 
3514         Added #include of "spi-roletypes.h", and
3515         added enumerated type AccessibleCoordType.
3516         Added definition for KeystrokeListener (function type).
3517
3518         ADDED FILES:
3519         * cspi/spi-statetypes.h :
3520         * cspi/spi-roletypes.h :
3521         * cspi/spi-impl.h :
3522         Added these headers, used by spi.h.
3523         * cspi/spi_main.c : 
3524         Added code (NOTE: not yet built by make).
3525
3526 2001-08-18  Mark McLoughlin <mark@skynet.ie>
3527
3528         * libspi/Makefile.am: generate imodule
3529         at the same time as other idl compiler 
3530         generated files. 
3531
3532 2001-08-17  Bill Haneman <bill.haneman@sun.com>
3533         * libspi/registry.c :
3534         * libspi/application.c :
3535         * idl/Application.idl :
3536         Made registration with toolkit an application method,
3537         which is required since each app has its own toolkit static
3538         environment.  Thus the bridge must register for 
3539         notification of toolkit events from each application in turn.
3540         Toolkit notifications are now successfully registered for, and
3541         sent to the listening at client.
3542         * test/at.c :
3543         Changed toolkit event string to use hyphens rather than underscores.
3544         * libspi/listener.c :
3545         listner now gives more info in debug mode - it reports the
3546         name of the event received, as well as the name of the source.
3547         
3548
3549 2001-08-16  Bill Haneman <bill.haneman@sun.com>
3550
3551         * libspi/registry.c :
3552         added more implementation for toolkit events.
3553         Fixed bug such that toolkit event registrations
3554         (via atk) use the whole event name string, not 
3555         just minor+detail.
3556         Removed a useless call to an ORBit_ method.
3557         * at-bridge/bridge.c :
3558         Removed unused local sbuf[] variable.
3559         * test/at.c :
3560         We now register for Gtk:GtkWidget:button_press_event 
3561         events as well as "focus:" events.
3562         * cspi/spi.h :
3563         Add some more API from Registry.idl that was missing,
3564         for keystroke listening, keystroke and mouse event
3565         synthesis, and enumeration of accessible desktops.
3566
3567 2001-08-16  Michael Meeks  <michael@ximian.com>
3568
3569         * configure.in: use AM_GLIB_GNU_GETTEXT.
3570
3571         * Makefile.am (SUBDIRS): kill intl.
3572
3573 2001-08-15  Michael Meeks  <michael@ximian.com>
3574
3575         * registryd/Makefile.am: s/oaf/server/ relocate info file.
3576
3577         * configure.in: upd.
3578
3579         * configure.in: depend on a recent bonobo-activation that
3580         will find our server files ...
3581
3582 2001-08-16  Bill Haneman <bill.haneman@sun.com>
3583
3584         * libspi/accessible.c : accessible_new() :
3585         Now we add the Component interface via bonobo_object_add_interface,
3586         if the contained AtkObject implements AtkComponent.
3587         * libspi/accessible.h : now include "component.h"
3588         * libspi/component.h :
3589         * libspi/component.c : added files - implementation of
3590         bonobo wrapper object for Accessibility/Component
3591         * libspi/listener.c :
3592         Added test code to check for Accessibility/Component:1.0
3593         interface and report whether it is implemented by the
3594         event source.
3595         * libspi/registry.c :
3596         Now we check for not only the hash of the whole event 
3597         string before relaying the event, we also check the
3598         "minor" event string (without the detail string).
3599         This allows event listeners to be registered against
3600         all events of a certain major+minor type, or just
3601         against a specific major+minor+detail type.
3602         * libspi/accessible.c :
3603         Added implementations for Accessible:get_parent(),
3604         Accessible:getChildCount(), and Accessible:getChildAtIndex().
3605         * libspi/registry.c :
3606         * libspi/listener.c :
3607         Replaced calls to Accessibility_Accessible_ref() and
3608         Accessibility_Accessible_unref() with 
3609         calls to bonobo_object_dup_ref() and 
3610         bonobo_object_release_unref(), so that the CORBA object
3611         is dup-ed and released when relayed, as well as the bonobo object.
3612
3613 2001-08-15  Mark McLoughlin <mark@skynet.ie>
3614
3615         * libspi/Makefile.am,
3616           registryd/Makefile.am,
3617           at-bridge/Makefile.am.
3618           test/Makefile.am, configure.in:
3619         reverse previous changes.
3620
3621         * /idl/Image.idl: fix typo.
3622
3623         * test/Makefile.am: put DEBUG_FLAGS
3624         in CFLAGS.
3625
3626 2001-08-15  Mark McLoughlin <mark@skynet.ie>
3627
3628         * test/app.c: use argv[0] instead of
3629         g_type_prgname.
3630
3631 2001-08-15  Mark McLoughlin <mark@skynet.ie>
3632
3633         * libspi/Makefile.am,
3634           registryd/Makefile.am,
3635           at-bridge/Makefile.am.
3636           test/Makefile.am, configure.in:
3637         cleanup, replace individual LIBS/CFLAGS with
3638         AT_COMMON_{LIBS|CFLAGS}.
3639
3640         * README: format.
3641
3642 2001-08-15  Mark McLoughlin <mark@skynet.ie>
3643         
3644         * configure.in, libspi/Makefile.am:
3645         Change IDL path checking for bonobo-activation
3646         as opposed to oaf.
3647
3648 2001-08-15  Bill Haneman <bill.haneman@sun.com>
3649
3650         * registryd/registry.c : separated event listeners to use
3651         3 separate lists (focus, window, toolkit).  Began testing
3652         event names against hashes before relaying events.
3653         * test/at.c : now register for events of type "focus:"
3654         * test/app.c : now generate events of type "focus:"
3655         * at-bridge/bridge.c : register with ATK for focus events,
3656         and we now relay those focus events to any "focus:" listeners.
3657         This now works with the bridge as a GTK_MODULE when running test/at.
3658         * libspi/registry.c :
3659         * libspi/listener.c : 
3660         now we ref event sources before propagating, and unref on receipt.
3661         * libspi/registry.c : 
3662         some changes to internal structs, to support event typestring hashes.
3663         * text/app.c : changed the way the appname is generated.
3664         * cspi : added directory that will hold the C bindings library for 
3665                 non-CORBA/bonobo-savvy clients.
3666         * cspi/spi.h : header file that contains the function prototypes for the C binding.
3667         * idl/Component.idl : added in parameter to indicate coord system for
3668                 geometry-related calls.
3669         * idl/Hyperlink.idl : added readonly n_links attribute
3670         * idl/Image.idl : changed methods to attributes.
3671         
3672 2001-08-15  Mark McLoughlin <mark@skynet.ie>
3673
3674         * at-bridge/Makefile.am: link against
3675         ../libspi/libspi.la instead of -lspi.
3676
3677         * at-spi/test/app.c: include 
3678         bonobo-activation.h. Use a default appname
3679         if one is not provided.
3680
3681 2001-08-14  Bill Haneman <bill.haneman@sun.com>
3682
3683         * idl/Registry.idl : temporarily changed register_Application
3684         to oneway, to work around issue with initial registration 
3685         re-entrancy.
3686         * idl/Application.idl : changed attribute "id" from readonly 
3687         to read-write, since it needs to be assigned by Registry.
3688         * registryd/registryd.c : added call to set application id 
3689         on registration.
3690         * registryd/registry.c : changed de-registration procedure to
3691         use CORBA_Object_hash() to find matching object ref in application
3692         lists and listener lists.
3693         * registryd/registry.c : defined EventTypeStruct and EventTypeMajor,
3694         began distinguishing between event types (work in progress).
3695
3696 2001-08-13  Bill Haneman <bill.haneman@sun.com>
3697
3698         CHANGES:
3699         * libspi/application.c:
3700         Added implementations for get/set id, get_toolkitName,
3701         get_version.
3702         * registryd/registryd.c :
3703         * test/at.c :
3704         * test/app.c :
3705         * Makefile.am :
3706         Converted from use of OAF to bonobo-activation.
3707         * libspi/desktop.h :
3708         * libspi/desktop.c :
3709         * test/app.c :
3710         Removed references to atksimpleobject, since base atkobject
3711         implementation now provides functionality we need.
3712         * libspi/atksimpleobject.c :
3713         * libspi/atksimpleobject.h :
3714         Removed.
3715         
3716         ADDITIONS:
3717         * at-bridge
3718         * at-bridge/Makefile.am
3719         * at-bridge/bridge.c
3720         * configure.in
3721         * Makefile.am
3722         Added directory "bridge" and contents, and added dependencies
3723         in Makefile.am/configure.in.  
3724         Initial checkin of "at-bridge".
3725         This code is a GTK_MODULE which automatically registers
3726         GTK+ apps with the accessibility registry, using an object
3727         reference to the root ATK object.
3728         
3729 2001-08-10  Mark McLoughlin <mark@skynet.ie>
3730
3731         * po/Makefile.in.in: Remove. Again. If this
3732         doesn't get autogenerated - you need to update
3733         gnome-common.
3734
3735 2001-08-07  Mark McLoughlin <mark@skynet.ie>
3736
3737         * po/Makefile.in.in: Add. Again.
3738
3739 2001-07-31  Bill Haneman <bill.haneman@sun.com>
3740
3741         * libspi/accessible.c : added support for 'description' property.
3742         * libspi/accessible.c
3743         * libspi/desktop.c
3744         * libspi/registry.c : changed to use bonobo_object instead of bonobo_x_object
3745             (since the two are now equivalent in libbonobo)
3746         * idl/Action.idl
3747         * idl/Component.idl
3748         * idl/Hyperlink.idl
3749         * idl/Image.idl
3750         * idl/Selection.idl
3751         * idl/Table.idl
3752         * idl/Text.idl
3753         * idl/Value.idl : changed these 'secondary' interfaces to inherit from
3754              Bonobo::Unknown as does Accessibility::Accessible.
3755         * idl/StreamableContent.idl : as above, and replaced internal InputStream
3756              interface with Bonobo::Stream, since it was redundant with it.
3757              (The Stream returned by a StreamableContext object is expected to
3758              implement only a subset of Bonobo::Stream)
3759
3760 2001-07-28  Anders Carlsson  <andersca@gnome.org>
3761
3762         * libspi/accessible.c (accessible_object_finalize): Change
3763           g_free to g_object_unref since the AtkObject is a GObject.
3764
3765 2001-07-30  Bill Haneman <bill.haneman@sun.com>
3766
3767         * idl/Accessibility.idl: add new IDL files
3768         
3769         Added:
3770         * idl/Action.idl: Definitions of actionable UI object
3771         * idl/Component.idl: Definitions of UI component geometry, etc.
3772         * idl/Hyperlink.idl: Defs of hyperlink behavior
3773         * idl/Image.idl: Def of accessible image
3774         * idl/Selection.idl: Definition of UI object with selectable children
3775         * idl/StreamableContent.idl: Definition of UI object with streamable backing data
3776         * idl/Table.idl: Definitions for access to table ('spreadsheet') elements
3777         * idl/Text.idl: Interface defs for UI elements with complex textual content
3778         * idl/Value.idl: Definition of UI element that is a value controller or display
3779         
3780 2001-07-27  Michael Meeks  <michael@ximian.com>
3781
3782         * po/Makefile.in.in: remove autogenerated file from CVS.
3783
3784         * libspi/Makefile.am: Radicaly re-vamp to simplify & add ORBit2
3785         type library.
3786
3787         * idl/Registry.idl: include guard.
3788
3789         * idl/Accessibility.idl: Add, and include all the other IDL
3790         files.
3791
3792         * idl/*.idl: remove mass of pragmas etc.
3793
3794 2001-07-26  Michael Meeks  <michael@ximian.com>
3795
3796         * registryd/Makefile.am (registryd_SOURCES): remove
3797         redundant at_.
3798
3799 2001-07-27  Mark McLoughlin <mark@skynet.ie>
3800
3801         * libspi/.cvsignore, registryd/.cvsignore,
3802           test/.cvsignore: updated.
3803
3804         * po/Makefile.in.in: gettext update.
3805
3806 2001-07-25  Bill Haneman <bill.haneman@sun.com>
3807
3808         * initial CVS checkin
3809
3810 2001-06-29  Michael Meeks  <michael@ximian.com>
3811
3812         * configure.in: add AM_CONFIG_HEADER to gen config.h
3813
3814         * acconfig.h: add.
3815