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