2001-11-23 Michael Meeks <michael@ximian.com>
[platform/core/uifw/at-spi2-atk.git] / ChangeLog
1 2001-11-23  Michael Meeks  <michael@ximian.com>
2
3         * cspi/spi_event.c (AccessibleEventListener_removeCallback):
4         comment out non existant method invoke so we link.
5
6         * cspi/spi-util.c (spi_warn_ev): conform to gtk+ style,
7         use bonobo_exception_get_text for more friendly warnings.
8
9         * cspi/spi.c (Obj_Add): move into spi_main & rename
10         spi_object_add; kill spi.c
11
12         * cspi/spi_registry.c
13         (deregisterGlobalEventListener),
14         (deregisterGlobalEventListenerAll),
15         (registerGlobalEventListener): fix exception leaks.
16
17         * cspi/spi_main.c (spi_exception): impl. helper, so we
18         don't leak exceptions.
19
20         * cspi/spi_selection.c
21         (AccessibleSelection_deselectSelectedChild): return the
22         success state.
23
24         * cspi/spi_main.c (spi_ev): impl; hack - gack.
25         (spi_registry): ditto.
26         (SPI_init): guard against double inits.
27
28         * cspi/*.c: use spi_ev (), and spi_registry () where
29         appropriate - a temporary hack until we have something
30         better. Use spi_object_add
31
32 2001-11-22  Michael Meeks  <michael@ximian.com>
33
34         * cspi/Makefile.am: re organise, install the headers.
35
36         * cspi/*.h: add G_BEGIN/END_DECLS
37
38 2001-22-11  Bill Haneman  <bill.haneman@sun.com>
39
40         * test/simple-at.c:
41         Added non-preemptive keylistener for key events with no modifiers
42         and shift-only modifier.
43
44         * libspi/keystrokelistener.c:
45         Removed some verbose diagnostics printout.
46
47         * cspi/spi_registry.c:
48         Fixed a bug that caused all key listeners to be registered as
49         pre-emptive.
50         
51         * libspi/deviceeventcontroller.c:
52         Fixed bug that caused XGrabKey (preemptive key grab) to be called
53         for non-preemptive key masks.
54
55
56 2001-22-11  Bill Haneman  <bill.haneman@sun.com>
57
58         * docs/reference/idl/at-spi-idl-docs.sgml:
59         * docs/reference/idl/at-spi-idl-sections.txt:
60         * docs/reference/idl/at-spi-idl-overrides.txt:
61         Added missing files.
62
63         * docs/reference/Makefile.am:
64         removed idl from SUBDIRS until we can figure a way to get gtk-doc
65         to scan the IDL files :-(
66
67         * docs/reference:
68         * docs/cspi:
69         * docs/idl:
70         Added .cvsignore files.
71         
72 2001-21-11  Bill Haneman  <bill.haneman@sun.com>
73
74         * libspi/deviceeventcontroller.c:
75         * libspi/keystrokelistener.c:
76         * cspi/spi_event.c:
77         * cspi/spi_registry.c:
78         Added filters for KeySets, KeyEventSeq, and event types to key
79         event dispatching, so listeners should only receive those events
80         that they requested :-)
81
82 2001-21-11  Bill Haneman  <bill.haneman@sun.com>
83
84         * configure.in:
85         * docs/Makefile.am:
86         * docs/reference:
87         * docs/reference:Makefile.am:
88         * docs/reference/cspi:
89         * docs/reference/cspi:Makefile.am:
90         * docs/reference/cspi:tmpl:
91         * docs/reference/cspi:tmpl:*.sgml:
92         * docs/reference/idl:
93         * docs/reference/idl:Makefile.am:
94         * docs/reference/idl:at-spi-idl-sections.txt:
95         * docs/reference/idl:at-spi-idl-docs.sgml:
96         * docs/reference/idl:tmpl:
97         * docs/reference/idl:tmpl:*.sgml:
98
99         Restructured docs directory to allow separate 'reference' docs
100         section, and forked idl and cspi docs.  Added the sgml template
101         files to CVS.  Added the first sections/structural sgml for the
102         IDL docs.
103
104 2001-11-21  Laszlo Peter  <laca@ireland.sun.com>
105
106         * configure.in, libspi/Makefile.am: find libXtst.
107
108 2001-11-21  Michael Meeks  <michael@ximian.com>
109
110         * test/accessx-gui.c: s/spi_value/value/ - doh.
111
112         * libspi/base.[ch]: add.
113
114 2001-18-11  Bill Haneman <bill.haneman@sun.com>
115
116         * idl/Accessible.idl:
117         * idl/Application.idl:
118         * idl/Registry.idl:
119         * idl/Action.idl:
120         Started gtk-doc cleanup on IDL.
121
122         * libspi/deviceeventcontroller.c:
123         Added and connected non-preemptive key notification from the
124         toolkits (in addition to the pre-emptive support from XServer
125         which we had before, but which causes 'focus flashing').  Filters
126         are presently limited to key modifiers and global/non-global,
127         KeySets are presently ignored, as are KeyEvent masks.
128
129         Fixed naughtiness in dec_key_listener_new(), we copy the CORBA
130         structs into the persistant structure rather than just storing
131         pointers to things that might not persist across servant
132         invocations.
133
134         The XGrabKey call now does async keygrabs, because synchronous
135         ones were deadlocking with GDK_event code in a very nasty way.
136
137         Added boolean to internal method notify_keylisteners, to indicate
138         whether the event came from the 'toolkit source' or the 'global
139         (XServer) source' - this is used in the notification process to
140         determine which listeners to send the event to.
141
142         deviceeventcontroller.c is now warning-free.
143         
144         * libspi/registry.c:
145         Fixed regression in application de-registration.
146         Also fixed some really brain-dead weirdness having to do with
147         event dispatching - event structs are now duplicated before being
148         re-marshalled in the dispatch to listeners.  This also fixes a
149         Solaris build problem.
150         
151         
152 2001-20-11  Michael Meeks  <michael@ximian.com>
153
154         * libspi/registry.c
155         (impl_accessibility_registry_deregister_global_event_listener): 
156         segv. protection.
157
158         * libspi/deviceeventcontroller.c
159         (spi_device_event_controller_check_key_event): return
160         FALSE on no virtual method.
161
162         * libspi/*..h: make includes work on a correctly pathed install.
163
164         * libspi/*.h: include glib/gmacros.h, use G_BEGIN / END _DECLS.
165
166         * libspi/application.h: kill unused ( and whacked out )
167         gboolean *spi_application_set_id (AtkObject *app, long id);
168
169 2001-20-11  Michael Meeks  <michael@ximian.com>
170
171         * libspi/*.[ch]: further convert to bonobo's type func
172         macros, remove redundnant casts etc.
173
174         * libspi/text.c s/accessibility_text/spi_text/g,
175         re-order to de-cruft.
176
177         * libspi/hypertext.c: re-order to kill a huge slew
178         of redundant forward decls.
179
180         * libspi/relation.c: ditto.
181
182         * libspi/image.c: ditto.
183
184         * */.cvsignore: update
185         
186 2001-20-11  Michael Meeks  <michael@ximian.com>
187
188         * libspi/deviceeventcontroller.c
189         (_controller_register_with_devices): use g_getenv,
190         kill stdlib.h include.
191
192         * libspi/keystrokelistener.c
193         (spi_keystroke_listener_get_type): kill
194         (spi_keystroke_listener_class_init),
195         (spi_keystroke_listener_init): rename to this.
196
197         * libspi/text.c (impl_getAttributes): fix warning / bug.
198
199         * libspi/*.[ch]: more headers, includes and over commenting.
200         
201 2001-20-11  Michael Meeks  <michael@ximian.com>
202
203         * libspi/*.[ch]: fixup headers, includes and over commenting.
204
205         * libspi/image.c (impl__get_imageDescription): const
206         correctness warning fix. remove redundant casting.
207
208         * libspi/table.c (impl_getRowDescription): ditto.
209         (impl_getColumnDescription): ditto.
210
211         * libspi/libspi.h: add.
212
213 2001-19-11  Michael Meeks  <michael@ximian.com>
214
215         * libspi/editabletext.c (impl_setAttributes): fix warnings.
216
217         * libspi/component.c (accessibility_component_get_type): 
218         rename to (spi_component_get_type): and macroify.
219         (accessibility_component_init): rename to
220         (spi_component_init): this
221         (accessibility_component_class_init): rename to
222         (spi_component_class_init): this
223
224         * libspi/action.c (spi_action_get_type): kill, use the macro.
225
226         * libspi/deviceeventcontroller.c (_compare_listeners): re-order
227         to avoid prototype.
228
229         * libspi/application.c (spi_application_object_event_listener),
230         (impl_accessibility_application_register_object_event_listener):
231         warning fixes / const understanding updates.
232
233         * libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
234         warning fixes.
235
236 2001-18-11  Bill Haneman <bill.haneman@sun.com>
237
238         * libspi/spi_accessible.c: Added docs and C bindings for
239         AccessibleStateSet. (No implementations yet).  Documentation
240         coverage for C bindings now 100%. Made docs for event listeners
241         more explicit.
242         
243         * idl/Registry.idl:
244         Added methods 
245             boolean notifyListenersSync (in DeviceEventListener listener,
246                                      in DeviceEvent event);
247
248             oneway void notifyListenersAsync (in DeviceEventListener listener,
249                                           in DeviceEvent event);
250
251         Added DeviceEventListener and DeviceEvent structs (may deprecate
252         KeyStroke and KeystrokeListener in favor of this generic
253         event/listener framework for devices).
254
255         * libspi/deviceeventcontroller.c:
256
257         Changed some key listener code to take masks, etc., and paved the
258         way for integration of toolkit/non-preemptive key events. Changed
259         signatures of some internal methods.
260
261         * at-bridge/bridge.c:
262         Fixed regression connecting to interface signals, apparently
263         caused by GTK+ changes.
264
265         Added an internal bridge_state_listener to deal with
266         property-change:accessible-state signals.
267
268         Changed the key_listeners GList to store structs (including masks,
269         etc.) instead of just CORBA_Objects (required for full
270         implementation of key listener API).
271
272         Connected the bridge to all currently supported Atk signals.
273         Events now supported: 
274             object:property-change
275             object:property-change:accessible-name
276             object:property-change:accessible-state
277             object:property-change:accessible-description
278             object:property-change:accessible-parent
279             object:property-change:accessible-value
280             object:property-change:accessible-role
281             object:property-change:accessible-table-caption
282             object:property-change:accessible-table-column-description
283             object:property-change:accessible-table-column-header
284             object:property-change:accessible-table-row-description
285             object:property-change:accessible-table-row-header
286             object:property-change:accessible-table-summary
287             object:children-changed
288             object:visible-data-changed
289             object:selection-changed
290             object:text-selection-changed
291             object:text-changed
292             object:text-caret-moved
293             object:row-inserted
294             object:row-reordered
295             object:row-deleted
296             object:column-inserted
297             object:column-reordered
298             object:column-deleted
299             object:model-changed        
300
301 2001-16-11  Bill Haneman <bill.haneman@sun.com>
302
303         * libspi/hyperlink.c,h:
304         Fixed some broken stuff in hyperlink.
305         
306         * libspi/relation.h:
307         * libspi/relation.c:
308         * cspi/spi_accessible.c:
309         Initial implementations of AccessibleRelation methods, and docs.
310
311         * libspi/accessible.c:
312         Fixed a bug that caused SEGV  if an accessible
313         object's description is NULL, and a client
314         requests it.  An empty string is now returned.
315
316         * cspi/spi_editabletext.c:
317         * cspi/spi_hypertext.c:
318         * cspi/spi_image.c:
319         * cspi/spi_hyperlink.c:
320         * cspi/spi_table.c:
321         Added docs.  
322
323         Doc coverage now 95%.
324
325 2001-16-11  Bill Haneman <bill.haneman@sun.com>
326
327         One last namespacing revision:
328         * libspi/accessibleeventlistener.[ch]:
329         Renamed SpiAccessibleEventListener to SpiEventListener,
330         (no need for two namespaces ;-)
331
332         And lots of documentation fixes:
333
334         * docs/at-spi-docs.sgml:
335         Fixed 'underscore vs. hyphen' bug that was preventing
336         the gtk-doc API docs from being automatically generated.
337
338         * cspi/spi-impl.h
339         * cspi/spi-listener.h
340         * cspi/spi.h
341         * cspi/spi_accessible.c
342         * cspi/spi_action.c
343         * cspi/spi_application.c
344         * cspi/spi_component.c
345         * cspi/spi_editabletext.c
346         * cspi/spi_event.c
347         * cspi/spi_hypertext.c
348         * cspi/spi_main.c
349         * cspi/spi_registry.c
350         * cspi/spi_selection.c
351         * cspi/spi_text.c
352         * cspi/spi_value.c
353         * docs/Makefile.am
354         * docs/at-spi-docs.sgml
355         * docs/at-spi-sections.txt
356         
357         Added and fixed up gtk-doc documentation in cspi.
358         
359         Interfaces now (fully) documented (subject to revision and enhancement):
360         SPI_main
361         Event Listener Support
362         Registry API
363         AccessibleApplication
364         Accessible
365         AccessibleAction
366         AccessibleComponent
367         AccessibleEditableText
368         AccessibleSelection
369         AccessibleText
370         AccessibleValue
371
372         still pending:
373         AccessibleStateSet
374         AccessibleRelationSet
375         AccessibleImage
376         AccessibleTable
377         AccessibleHyperlink
378         
379 2001-14-11  Bill Haneman <bill.haneman@sun.com>
380
381         * at-bridge/bridge.c:
382         Initial work for toolkit-level key snooper connection by bridge.
383
384         * cspi/spi-impl.h:
385         * cspi/spi_*.h:
386         * cspi/spi_*.c:
387         New typedefs and fixes to support new namespacing, and cleaner
388         separation of cspi bindings from libspi bonobo implementation.  
389         Removed inconsistent and extraneous Spi* namespace prefix that
390         had crept into cspi headers.
391         Lots of comment fixes that sed had missed.
392
393         * cspi/spi-roletypes.h:
394         * cspi/spi-statetypes.h:
395         Added SPI_ prefix to Role and State typedefs, and changed all-caps ROLE type
396         to AccessibleRoleType.
397         
398         * libspi/accessibleeventlistener.h:
399         Fixed minor namespacing weirdness.
400
401         * libspi/deviceeventcontroller.c:
402         Reordered some internal API for device listeners.
403         Changed the key registry final boolean to 'is_system_global'
404         rather than 'is_synchronous', which is more descriptive of its 
405         actual meaning.
406         Added spi_device_event_controller_new().
407         Added  SpiRegistry backpointer to SpiDeviceEventControllerClass.
408          
409         * libspi/keystrokelistener.[ch]:
410         Namespaced KeystrokeListener to SpiKeystrokeListener.
411         Changed uses of keymasks to use SPI_ prefix, and did other
412         knock-on fixups.
413
414         * libspi/keymasks.h:
415         Namespaced keymask constants with SPI_ prefix.
416
417         * libspi/registry.c:
418         Some warning fixes, and knock-on fixes from namespace changes.
419
420         * test/Makefile.am:
421         Added rules for accessx-gui test program.
422
423         * test/accessx-gui.c:
424         Added a simple GUI program in GTK+-2.0 for the AccessX keyboard
425         utility.  It doesn't actually use at-spi, but it's still cool and
426         useful ;-)
427
428         * test/keysynth-demo.c:
429         * test/simple-at.c:
430         * test/at.c:
431         * test/app.c:
432         Fixes so that these test clients work properly with the namespaced
433         libraries. (Incompletely tested for technical reasons, fixes may follow)
434         
435
436 2001-13-11  Michael Meeks  <michael@ximian.com>
437
438         * libspi/application.c
439         (impl_accessibility_application_get_version),
440         (impl_accessibility_application_get_toolkit_name):
441         warning fixes.
442         (impl_accessibility_application_set_id),
443         (impl_accessibility_application_get_id): remove
444         redundant casting code.
445
446         * libspi/action.c (impl_getDescription): fix warnings.
447
448         * libspi/accessible.c
449         (impl_accessibility_accessible_get_parent),
450         (impl_accessibility_accessible_get_child_at_index),
451         (impl_accessibility_accessible_get_state),
452         (impl_accessibility_accessible_get_relation_set):
453         warning fixes & include action.h
454
455 2001-13-11  Michael Meeks  <michael@ximian.com>
456
457         * *.[ch] fix bits I screwed up:
458
459                 s/([^ \tb(\*\&\?\",])spi_/\1/g;
460                 s/([^ \tb(\*\&\?\",])Spi/\1/g;
461         
462 2001-13-11  Michael Meeks  <michael@ximian.com>
463
464         * *.[ch] Namespace libspi into spi_ and Spi.
465
466 2001-13-11  Michael Meeks  <michael@ximian.com>
467
468         * Makefile.am: dist & install at-spi-1.0.pc
469
470         * libspi/Makefile.am: install into at-spi-1.0
471
472         * idl/Makefile.am (idldir): install into at-spi-1.0
473
474         * at-spi-1.0.pc.in: add.
475
476         * configure.in: build it.
477
478 2001-12-11  Bill Haneman <bill.haneman@sun.com>
479
480         * test/keysynth-demo.c:
481         Use a 'realize' signal-handler to set the WM properties for
482         the virtual keyboard, rather than making it a "POPUP" type
483         override-redirect window (thanks to anders carlsson for that
484         tip!)
485
486 2001-11-11  Bill Haneman <bill.haneman@sun.com>
487
488         * test/Makefile.am:
489         * test/keysynth-demo.c:
490         Added new test of key synthesis, which creates a simple
491         (mouse-operated) onscreen keyboard.  It inserts key events into
492         the currently-focused window, thus it does not grab keyboard focus
493         itself.
494
495         * cspi/spi_registry.c:
496         Added C binding for AT-SPI generateKeyEvent.
497
498         * libspi/deviceeventcontroller.c:
499         Added call to XFilterEvent so that key listener works with XIM (we
500         hope).  Added event_synth_type to generateKeyEvent, so that we can
501         produce KEY_PRESS, KEY_RELEASE, KEY_PRESSRELEASE (pair), or
502         synthesize a press/release pair for KeySyms.    
503         
504 2001-11-09  Bill Haneman <bill.haneman@sun.com>
505
506         * libspi/Makefile.am: 
507         * registryd/Makefile.am:
508         (temporary) hack to include libXtst in libspi and registryd.
509         (Needed for keystroke synthesis, see below).
510
511         * idl/Registry.idl:
512         Improved API for registerKeystrokeListener, in accordance with
513         discussions with Gnopernicus team and X server research.
514
515         * libspi/registry.c:
516         * libspi/deviceeventcontroller.c:
517         * libspi/accessible.c:
518         * libspi/keystrokelistener.c:
519         Changes and fixes to support keylisteners for potentially
520         consumed key events (that is, 'passive grabs').
521         Added implementation for generateKeyEvent() [untested].
522
523         * cspi/spi.h:
524         Changes to registerKeystrokeListener() API, as above.
525         Added deregisterGlobalEventListenerAll(), and 
526         deregisterKeystrokeListener(), which are needed for clean exit of
527         clients.
528         Added typedefs for KeyListenerSyncType, KeyEventMask, and KeySet,
529         and a macro ALL_KEYS which may be used in place of a KeySet pointer.
530         
531         * cspi/spi_registry.c:
532         Added implementations of function prototypes mentioned above.
533         
534         * registryd/registryd.c:
535         Added the key listener event source as a g_timeout(), to allow
536         receipt of key events that are not caught by GDK (since GDK
537         doesn't support passive keygrabs, this was necessary).
538
539         * test/simple-at.c:
540         Changed to attach a keylistener to 'Alt' keys, and
541         respond to the following keycommands: Alt-M (toggle magnifier);
542         Alt-F (toggle speech); Alt-Q (quit).
543         Added an exit routine to deregister the listeners, and a key
544         listener that prints some key info to the console when a key
545         matches the listener mask (and is thus received by the listener).
546         
547         * util/idl/Magnifier.idl:
548         Changes to magnifier API to support multiple zoom regions,
549         non-uniform scaling in x and y, markDirty, and a host of other
550         features that would be useful to magnification.
551
552         * util/mag_image.h:
553         * util/mag_client.c:
554         * util/mag_client.h:
555         * util/mag_control.c:
556         * util/magnifier.c:
557         Source code changes to support the above IDL changes.
558         
559         * util/mag_image.c:
560         As above, and also changes to use a (slower) generic conversion
561         path for colormap conversions, since the fast RGB conversions have been
562         reported to fail for 16-bit displays.
563
564 2001-10-26  Michael Meeks  <michael@ximian.com>
565
566         * libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
567
568 <2001-10-26  Laszlo Peter <laca@ireland.sun.com>
569
570         * at-bridge/Makefile.am: fix LDFLAGS.
571
572 <2001-10-09  Bill Haneman <bill.haneman@sun.com>
573
574         * at-bridge/bridge.c:
575         Re-worked listeners for toolkit events, now we have signal
576         and property listeners. Added a private method
577         register_atk_event_listeners(), which registers with the
578         various atk and gtk signals we need to monitor in order to emit
579         our at-spi events.
580         Added emission hook for AtkObject:property-change events, to
581         support the 'property listeners'.
582         Fixed some alloc()s of Accessibility_Event structs to use CORBA
583         allocation.
584
585         * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
586         which emit warnings and exit, respectively, if CORBA errors occur
587         during remote calls, and we now use these methods to check most of
588         our CORBA calls in the C bindings.
589
590         * cspi/spi_accessible.c:
591         Changed AccessibleSelection_refSelectedChild() to
592         AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
593         now increment refcounts.
594
595         * cspi/spi_component.c:
596         Fixed some long pointer casts (dangerous!) to pass pointers to
597         CORBA_longs of the proper type to the CORBA stubs, and copy the
598         data into the longs that were passed into the C bindings code.
599         
600         * at-bridge/bridge.c:
601         
602         * libspi/accessible.c:
603         Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
604         hyperlinks, AtkHyperlink is an object type.     
605
606         * libspi/application.c:
607         Added various conversions to and from "generic" event types and
608         atk-specific types; this is really part of the 'bridge'
609         implementation but is valid for all AtkObject-based accessibility 
610         implementations.
611
612         * libspi/editabletext.c:
613         Fixed nasty bug wherein editable text's finalize method was
614         unref'ing tha AtkObject reference that the text parent class was
615         about to unref _again_.  There was also a nasty inheritance bug
616         that meant that the AccessibleEditableText class was corrupt.
617
618         * libspi/selection.c:
619         Provided implementations for some selection API that was broken.
620         
621         * idl/Application.idl:
622         Added registerObjectEventListener () method.
623
624         * THROUGHOUT:
625         Fixed a number of return values that were Bonobo_Unknowns from
626         bonobo_object_corba_objref(), which I
627         forgot to dup before returning.  Changed instances of 
628         bonobo_object_corba_objref (bonobo_object(o)) to
629         BONOBO_OBJREF(o), for concision and clarity.
630         
631 <2001-10-13  Louise Miller <louise.miller@sun.com>
632
633         * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
634         idl/Event.idl, idl/Registry.idl
635         Changed these files to include Bonobo_Unknown.idl instead
636         of Bonobo.idl
637
638 <2001-09-10  Marc Mulcahy <marc.mulcahy@sun.com
639
640         * libspi/component.c libspi/component.h:
641                 Fixed typo.  Added assertions for object checks in 
642         AccessibleComponent code.
643
644 <2001-10-09  Bill Haneman <bill.haneman@sun.com>
645
646         * idl/Accessible.idl:
647                 Added 'isEqual (Accessible *object)' 
648         method for Accessible. (Not Yet Implemented).
649         
650         * idl/Registry.idl:
651                 Changed signature of registerKeystrokeListener() to
652         take a KeySet and KeyEventSeq so that specific keys and event
653         types could be requested for monitoring, and added a flag
654         is_synchronous so that either synchronous or asynchronous
655         notification could be requested.  (However this is not all
656         implemented yet). This also meant adding two new typedefs,
657         KeyEventSeq and KeySet.
658
659         * idl/Relation.idl: 
660                 Added two new relations, RELATION_TOOLTIP_FOR and
661         RELATION_LEAFNODE_OF.
662
663         * idl/State.idl:
664                 Added new state, STATE_HAS_TOOLTIP.
665         
666         * libspi/text.c, editabletext.c:
667                 Added new assertions to all casts of bonobo-objects from
668         CORBA servants, to prevent Text API calls on non-text objects.
669                 Changed suspect casts of int-pointer types, so that we
670         always send a valid CORBA_long pointer to the CORBA APIs that use
671         in/out long parameters.  We then have to copy from the CORBA_long
672         into the regular long or int for return to the C bindings, or
673         vice-versa when returning parameters from ATK calls to the bonobo wrappers.
674         
675         * cspi/spi_text.c:
676         * libspi/deviceeventcontroller.c:
677                 Cleaned these sources up.
678         * idl/Text.idl:
679                 Changed return type for getCharacterAtOffset to
680         CORBA_unsigned_long, to allow for 32-bit characters.
681         
682                 
683 <2001-10-08  Bill Haneman <bill.haneman@sun.com>
684
685         * util/Makefile.am:
686         * idl/Makefile.am:
687                 Fixed 'make dist' so that distro compiles...
688         * libspi/keymasks.h:
689                 new file.
690         * cspi/spi-listener.c:
691                 KeystrokeListenerCB now returns a boolean.
692         * cspi/spi.h:
693                 Added KeyEventType struct, and KeyStroke.
694                 Also added createKeystrokeListener(),
695         KeystrokeListener_addCallback(),
696         KeystrokeListener_removeCallback(), and added a keymask to
697         registerKeystrokeListener().
698         * cspi/spi_accessible.c:
699                 Changed numerous return types for interfaces from
700         AccessibleComponent to Accessible<InterfaceName>; this was
701         probably a cut-and-paste error.
702         * cspi/spi_event.c:
703                 Implementations of new KeystrokeListener api (from spi.h,
704         above).
705         * idl/Registry.idl:
706                 Changes to key modifier mapping.
707                 Created ControllerEventMask struct.
708                 Made DeviceEventController derive from Bonobo::Unknown.
709         * idl/Text.idl:
710                 Removed TEXT_BOUNDARY_CURSOR_POS boundary type.
711         * libspi/deviceeventcontroller.c:
712                 Added a number of new internal (private) methods.
713         * libspi/editabletext.c:
714         * libspi/editabletext.h:
715                 Fixed a number of bugs related to the fact that
716         editabletext inherits from text.  Fixed the EditableText struct,
717         the init() call, and use correct casts when calling Text methods
718         from an EditableText object.  Removed (duplicate) atko from the
719         EditableText structure, we use the one in the parent Text
720         structure via the casts mentioned above.
721         * libspi/keystrokelistener.[ch]:
722         * libspi/registry.c:
723                 Changes in support of keyboard handling (above).
724         
725         Keyboard handling, though partly functional, is still not
726         recommended for at-spi client use as there is considerable 
727         work yet to be done.
728
729         * libspi/text.c:
730                 Changed some places where pointers to various int types
731         are cast to be pointers to CORBA_long types and vice-versa:
732         pointer casting is not safe so we pass pointers of the correct
733         types and then cast the result before putting it into the target
734         pointers.
735
736         * libspi/text.h: minor typos corrected.
737         * test/simple-at.c: 
738                 We now speak not only the name of a Text element, but the
739         first sentence of its content, when it receives focus.
740                 I also changed the text compression to 75% from 50%.
741         * util/Accessibility_Util.server.in:
742                 Changed the default magnifier type to be a 3x vertical
743         splitscreen magnifier (was previously a 2x horizontal one).
744
745 <2001-10-03  Bill Haneman <bill.haneman@sun.com>
746
747         * libspi/keystrokelistener.h:
748         * libspi/keystrokelistener.c:
749                 Initial functional implementations of KeystrokeListener.
750         * idl/Registry.idl:
751         
752 <2001-10-05  Marc Mulcahy <marc.mulcahy@sun.com>
753
754         Fixed string handling for NULL strings in libspi.
755         Added spi_freeString to free strings returned by C bindings.
756
757 <2001-09-30  Bill Haneman <bill.haneman@sun.com>
758
759         * libspi/keystrokelistener.h:
760         * libspi/keystrokelistener.c:
761                 Began (no-op) implementations of KeystrokeListener
762                         (see below).
763         * libspi/deviceeventcontroller.c:
764         * libspi/deviceeventcontroller.h:
765                 Began creating implementations of DeviceEventController,
766                         to handle keystroke and mouse event listening and
767                         synthesis.
768         * libspi/accessible.c:
769                 Stubbed-in the implementations for
770                         Accessibility_Accessible_getState and
771                         Accessibility_Accessible_getRelationSet.
772         * libspi/registry.c:
773                 Improved de-registration process and fixed some bugs, 
774                         deregistration now works correctly.
775         * libspi/desktop.c:
776                 Added initialization of applications list (to NULL).
777         * util/magnifier.c:
778                 Reduced speech compression from 0.5 to 0.7, for demo.
779                 Changed call to gdk_window_set_decorations()
780                         to gtk_window_set_decorated().
781         * at-bridge/bridge.c:
782                 Bridge now deregisters when app exits, via
783                         registration of a cleanup function
784                         with the g_atexit() call.
785                         Required making 'app' static, renamed 'this_app'.
786                 Fixed broken use of bonobo_init, passing argv wrongly.
787
788 <2001-09-27  Bill Haneman <bill.haneman@sun.com>
789
790         * util:
791         * util/Makefile.am: 
792                 Created a new directory for 
793                         accessibility-related utilities, primarily for
794                         testing and demo purposes, but with possible
795                         end-user utility.
796         
797         * util/magnifier.c:
798         * util/magnifier.h:
799         * util/mag_image.c:
800         * util/mag_image.h:
801                 Onscreen magnifier utility that
802                         is implemented as a bonobo service.
803         
804         * util/mag_client.c:
805         * util/mag_client.h:
806                 Client-side support (simple C bindings) 
807                         for Magnification service
808         
809         * util/mag_control.c:
810                 Client program example for 
811                         Magnification service
812         
813         * util/Accessibility_Magnifier.server.in:
814                 Bonobo-activation file for the 
815                         Magnification service.
816         
817         * util/idl:
818         * util/idl/Magnifier.idl:
819                 IDL defining the bonobo Magnification
820                         service interface.
821
822         * test/simple-at.c:
823                 Modifications to use the bonobo-activated magnifier
824                         above, in place of trying to connect to an existing
825                         magnifier that uses socket-listening IPC.
826
827                 If env variable MAGNIFIER is set, a magnifier service
828                         will be started if one does not exist.
829         
830 <2001-09-25  Bill Haneman <bill.haneman@sun.com>
831         * at-bridge/bridge.c:
832                 applied patch from Marc to build and run 
833                 against new glib and gtk+ (seemed like a change 
834                 to bonobo_init signature was made ?)
835         * test/simple-at.c:
836                 made festival-server support turned off by default.
837                 Added support for a simple magnifier (off by default)
838                 which will be added to a 'util' directory later.
839         * at-bridge/Makefile.am:
840                 Changed "application.h" header from a 'source'
841                 to a 'dependency' of libat-bridge.
842
843 <2001-09-12  Marc Mulcahy <marc.mulcahy@sun.com>
844         * cspi/Makefile.am:
845                 Added spi-util.c.
846
847         * cspi/spi-util.c:
848                 Fixed typo
849
850         * cspi/spi.c:
851                 Added interface implementation c files to list of
852                         includes so they are included in libcspi.
853
854         * cspi/spi.h:
855                 Changed prototype of AccessibleAction_doAction to return a
856                         boolean.
857                 Changed prototype of AccessibleTable_getCaption to
858                         return an Accessible.
859                 Changed prototype of AccessibleTable_getSelectedRows
860                         and AccessibleTable_getSelectedColumns to
861                         return a long (returns the number of selected rows
862                         or columns respectively).
863                 Changed name of AccessibleText_refRunAttributes to
864                         AccessibleText_getAttributes.
865                 Changed prototype of AccessibleText_getCharacterExtents to
866                         return a void rather than a boolean. 
867                 Added support for a AccessibleCoordType parameter
868                         specifying what type of coordinates are desired.
869                 Added an AccessibleCordType parameter to
870                         AccessibleText_getPointAtOffset.
871
872         * cspi/spi_accessible.c:
873                 Added code to return the outstanding interfaces from
874                         Accessible_queryInterface.
875
876         * cspi/spi_action.c:
877                 Fixed typos.
878                 Corrected call to getNActions to call the c binding
879                         for an attribute.
880
881         * cspi/spi_editabletext.c:
882                 Fixed typos.
883                 Changed name from setRunAttributes to setAttributes.
884
885         * cspi/spi_hyperlink.c:
886                 Fixed typos.
887                 Changed call to getNAnchors to correctly call the c
888                         binding for an attribute.
889
890         * cspi/spi_hypertext.c:
891                 Fixed typos.
892                 Changed getImageDescription to correctly call the
893                         binding for an attribute.
894
895         * cspi/spi_selection.c:
896                 Changed getNSelectedChildren to correctly call the c
897                         binding for the attribute.
898                 Changed refSelectedChild to getSelectedChild.
899
900         * cspi/spi_table.c:
901                 Fixed typos.
902                 Changed getCaption to return an Accessible.
903                 Fixed calls which retrieve attributes.
904                 Changed refAt to getAccessibleAt.
905                 Changed getNSelectedRows and getNSelectedColumns to
906                         return longs.
907
908         * cspi/spi_text.c:
909                 Changed getCharacterExtents and getPointAtOffset to accept an
910                         AccessibleCoordType.
911                 Fixed typos.
912                 Changed calls which retrieve attributes.
913                 Changed refRunAttributes to getAttributes.
914
915         * cspi/spi_value.c:
916                 Fixed typos.
917
918         * idl/Hyperlink.idl:
919                 Changed n_anchors attribute to nAnchors to keep naming
920                         convention consistent.
921
922         * idl/Table.idl:
923                 Made Table inherit from Bonobo::Unknown.
924                 Added nSelectedColumns and nSelectedRows attributes.
925
926         * idl/Value.idl:
927                 Made Value inherit from Bonobo::Unknown.
928
929         * libspi/hyperlink.c:
930                 Change for nAnchors attributte name change.
931
932 <2001-09-12  Marc Mulcahy <marc.mulcahy@sun.com>
933         * cspi/Makefile.am:
934                 Added spi-util.c.
935
936         * cspi/spi-util.c:
937                 Fixed typo
938
939         * cspi/spi.c:
940                 Added interface implementation c files to list of
941                         includes so they are included in libcspi.
942
943         * cspi/spi.h:
944                 Changed prototype of AccessibleAction_doAction to return a
945                         boolean.
946                 Changed prototype of AccessibleTable_getCaption to
947                         return an Accessible.
948                 Changed prototype of AccessibleTable_getSelectedRows
949                         and AccessibleTable_getSelectedColumns to
950                         return a long (returns the number of selected rows
951                         or columns respectively).
952                 Changed name of AccessibleText_refRunAttributes to
953                         AccessibleText_getAttributes.
954                 Changed prototype of AccessibleText_getCharacterExtents to
955                         return a void rather than a boolean. 
956                 Added support for a AccessibleCoordType parameter
957                         specifying what type of coordinates are desired.
958                 Added an AccessibleCordType parameter to
959                         AccessibleText_getPointAtOffset.
960
961         * cspi/spi_accessible.c:
962                 Added code to return the outstanding interfaces from
963                         Accessible_queryInterface.
964
965         * cspi/spi_action.c:
966                 Fixed typos.
967                 Corrected call to getNActions to call the c binding
968                         for an attribute.
969
970         * cspi/spi_editabletext.c:
971                 Fixed typos.
972                 Changed name from setRunAttributes to setAttributes.
973
974         * cspi/spi_hyperlink.c:
975                 Fixed typos.
976                 Changed call to getNAnchors to correctly call the c
977                         binding for an attribute.
978
979         * cspi/spi_hypertext.c:
980                 Fixed typos.
981                 Changed getImageDescription to correctly call the
982                         binding for an attribute.
983
984         * cspi/spi_selection.c:
985                 Changed getNSelectedChildren to correctly call the c
986                         binding for the attribute.
987                 Changed refSelectedChild to getSelectedChild.
988
989         * cspi/spi_table.c:
990                 Fixed typos.
991                 Changed getCaption to return an Accessible.
992                 Fixed calls which retrieve attributes.
993                 Changed refAt to getAccessibleAt.
994                 Changed getNSelectedRows and getNSelectedColumns to
995                         return longs.
996
997         * cspi/spi_text.c:
998                 Changed getCharacterExtents and getPointAtOffset to accept an
999                         AccessibleCoordType.
1000                 Fixed typos.
1001                 Changed calls which retrieve attributes.
1002                 Changed refRunAttributes to getAttributes.
1003
1004         * cspi/spi_value.c:
1005                 Fixed typos.
1006
1007         * idl/Hyperlink.idl:
1008                 Changed n_anchors attribute to nAnchors to keep naming
1009                         convention consistent.
1010
1011         * idl/Table.idl:
1012                 Made Table inherit from Bonobo::Unknown.
1013                 Added nSelectedColumns and nSelectedRows attributes.
1014
1015         * idl/Value.idl:
1016                 Made Value inherit from Bonobo::Unknown.
1017
1018         * libspi/hyperlink.c:
1019                 Change for nAnchors attributte name change.
1020
1021
1022 <2001-09-05  Marc Mulcahy <marc.mulcahy@sun.com>
1023
1024         implementations-- made server implementations own AtkObject pointers
1025         rather than their respective AtkInterrface pointers to fix
1026         refcounting.  AtkHyperlink is still broken.
1027
1028 <2001-09-04  Bill Haneman <bill.haneman@sun.com>
1029         * cspi/spi_accessible.c:
1030                 Added method Accessible_Role_getName(),
1031                         and requisite string array (role_names).
1032                 Added conversion string_from_corba_strin() call
1033                         to Accessible_getName and _getDescription.
1034         * libspi/accessible.c:
1035                 Added implementation for Accessible_getRole()
1036         * test/simple-at.c:
1037                 Added festival support, used if environment variable
1038                         FESTIVAL is set.
1039         
1040 2001-09-04  Bill Haneman <bill.haneman@sun.com>
1041
1042         * at-bridge/bridge.c:
1043             Now allocate Accessibility_Event using
1044             Accessibility_Event__alloc() instead of g_new0().
1045         * libspi/accessibleeventlistener.c:
1046             Initialize AccessibleEventListener->callbacks to NULL.
1047             Fixed accessible__event_listener_init() param, changed to
1048             "AccessibleEventListener *" type.
1049             Changed a bonobo_object_release_unref() call to
1050             Accessibility_Accessible_unref().
1051         * libspi/listener.c:
1052             Changed Bonobo_Unknown_unref to (equivalent) 
1053             Accessibility_Accessible_unref.
1054         * libspi/registry.c:
1055             Changed bonobo_object_release_unref to 
1056             Accessibility_Accessible_unref.
1057         
1058 <2001-09-04  Marc Mulcahy <marc.mulcahy@sun.com>
1059         
1060         * Added files:
1061             spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
1062             spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
1063             spi-util.c spi-util.h
1064             Implementations for C bindings to remaining accessibility 
1065             interfaces.
1066
1067 <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
1068         
1069         * idl/Action.idl:
1070             changed return value of Action from void to boolean to 
1071             bring in line with ATK.
1072
1073         * idl/Text.idl:
1074             Changed getText funcions to return "out" start and end offsets.
1075             Changed getAttributes to take and offset and return the start 
1076             and end offset of the attribute run.
1077             Changed getOffsetAtPoint and getCharacterExtents to take an 
1078              enum describing whether coordinates are window or screen.
1079
1080         * Added files:
1081             libspi/action.c libspi/action.h libspi/editabletext.c 
1082             libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
1083             libspi/hypertext.c libspi/hypertext.h libspi/image.c 
1084             libspi/image.h libspi/selection.c libspi/selection.h
1085             libspi/table.c libspi/table.h libspi/text.c libspi/text.h 
1086             libspi/value.c libspi/value.h
1087             Added server implementations for outstanding ATK interfaces 
1088             not yet implemented.
1089  
1090 2001-09-04  Bill Haneman <bill.haneman@sun.com>
1091
1092         * idl/Action.idl:
1093                 Added (missing) getName() method. 
1094                 Made nActions an attribute.
1095         * idl/EditableText.idl:
1096                 Changed order of params in setAttributes.
1097         * idl/Hyperlink.idl:
1098                 Removed getAnchor, added getURI.
1099         * idl/Image.idl:
1100                 Changed attributes to methods, for efficiency
1101                 (so that getting extents can be done in one call)
1102         * idl/Selection.idl:
1103                 Changed nSelectedChildren to attribute, and re-indented.
1104         * idl/Table.idl: changed nrows, ncolumns, caption, summary 
1105                 to attributes.
1106         * idl/Text.idl: reformatted to match our coding style.
1107                 (temporarily?) removed getRowColumnAtOffset().
1108                 Changed text selection API to support multi-select and
1109                 non-contiguous selections, as in ATK.
1110         * idl/Value.idl: changed some methods to attributes.
1111
1112 2001-08-24  Mark McLoughlin <mark@skynet.ie>
1113
1114         * libspi/listener.c(impl_notify_event):
1115         BonoboUnkown_unref the source instead
1116         of bonobo_object_release_unref - the ORB
1117         handles the releasing.
1118
1119         * configure.in: require ORBit-2.3.94 for
1120         this behaviour.
1121
1122 2001-08-21  Bill Haneman <bill.haneman@sun.com>
1123
1124         Tagged CVS repository 'EA_1_0'.
1125         * README.EARLY_ACCESS:
1126         Alphabetized acknowledgements list, and
1127         added someone.
1128         Listed some known dependencies of at-spi.
1129
1130 2001-08-20  Bill Haneman <bill.haneman@sun.com>
1131
1132         * docs/at-spi-docs.sgml:
1133         * docs/at-spi-sections.txt:
1134         * docs/at-spi-overrides.txt: (Added zero-length file)
1135         Documentation improvements - gtk-doc should build
1136         docs for all implemented C bindings now.
1137         * cspi/Makefile.am:
1138         * cspi/spi_main.c:
1139         * cspi/spi.c: (New file)
1140         * cspi/spi_event.c: (New file)
1141         * cspi/spi_registry.c: (New file)
1142         * cspi/spi_accessible.c: (New file)
1143         * cspi/spi_application.c: (New file)
1144         * cspi/spi_component.c: (New file)
1145         Split spi_main.c into six parts, and included them from
1146         "spi.c".  This is a bit of a hack, probably temporary,
1147         but required by gtk-doc, apparently.
1148         
1149 2001-08-20  Bill Haneman <bill.haneman@sun.com>
1150
1151         * docs/Makefile.am:
1152         * docs/at-spi-docs.sgml:
1153         * docs/at-spi-sections.txt:
1154         * configure.in:
1155         Initial checkins/modifications for gtk-doc generation.
1156         * cspi/spi.h:
1157         * cspi/spi.c:
1158         Added (missing) interface query methods to Accessible's C binding.
1159         * cspi/spi-impl.h:
1160         Added GenericInterface type definition.
1161         * test/simple-at.c:
1162         Added query for AccessibleComponent interface to focus event handler.
1163         Added printout of bounding box for focussed component.
1164         * libspi/component.c:
1165         Added partial implementation for AccessibleComponent to C binding.
1166         * idl/Application.idl:
1167         * libspi/registry.c:
1168         * libspi/listener.c:
1169         * libspi/application.c:
1170         * libspi/application.h:
1171         Changed "ID" attribute type from string to long.
1172
1173 2001-08-19  Bill Haneman <bill.haneman@sun.com>
1174
1175         * cspi/spi.h:
1176         * cspi/spi.c:
1177         Made method naming consistent: methods taking object args
1178         start with uppercase, other methods (except those using
1179         acronyms) start with lowercase.  Underscores delimit between
1180         object names and method names:
1181         SPI_init() - uppercase since it starts with an acronym.
1182         getDesktopCount () - lowercase start since no object param0.
1183         Accessible_getName() - uppercase object type name, studlyCaps method
1184                                name.
1185
1186         *cspi/spi.h:
1187         Added gtk-doc documentation for all currently implemented
1188         methods in the C bindings API.
1189
1190 2001-08-18  Bill Haneman <bill.haneman@sun.com>
1191
1192         * Makefile.am : changed build order to build test last.
1193         * cspi/spi.h :
1194         * cspi/spi_main.c :
1195         Changed "createEventListener" to "CreateEventListener".
1196         * libspi/accessibleeventlistener.c :
1197         Bugfix for addition of callbacks.
1198         * test/Makefile.am :
1199         * test/simple-at.c :
1200         Added new test that uses the C bindings API.
1201         * idl/Event.idl :
1202         * libspi/listener.c :
1203         * libspi/registry.c :
1204         * libspi/accessibleeventlistener.c :
1205         * at-bridge/bridge.c :
1206         Renamed member "target" of Accessibility_Event to "source",
1207         which is more descriptive.
1208         
1209
1210 2001-08-18  Bill Haneman <bill.haneman@sun.com>
1211
1212         * Makefile.am: 
1213         * configure.in :
1214         * cspi/Makefile.am :
1215         Added makefile support for at-spi/cspi directory.
1216         * cspi/spi.h : 
1217         * cspi/spi-impl.h :
1218         * cspi/spi-listener.h : (NEW FILE)
1219         Added support for/use of spi-listener.h.
1220         * cspi/spi_main.c :
1221         C bindings now build successfully, with no warnings.
1222         * libspi/accessibleeventlistener.h : (NEW FILE)
1223         * libspi/accessibleeventlistener.c : (NEW FILE)
1224         * libspi/Makefile.am :
1225         Added new object type "AccessibleEventListener"
1226         which inherits from Listener, and allows attachment
1227         of in-process callbacks (so that a client with a listening
1228         object instance can add functionality to the local 
1229         implementation, dynamically).
1230
1231 2001-08-18  Bill Haneman <bill.haneman@sun.com>
1232
1233         * libspi/accessible.c: 
1234         Add implementation for get_index_in_parent().
1235         * cspi/spi.h : 
1236         Added #include of "spi-roletypes.h", and
1237         added enumerated type AccessibleCoordType.
1238         Added definition for KeystrokeListener (function type).
1239
1240         ADDED FILES:
1241         * cspi/spi-statetypes.h :
1242         * cspi/spi-roletypes.h :
1243         * cspi/spi-impl.h :
1244         Added these headers, used by spi.h.
1245         * cspi/spi_main.c : 
1246         Added code (NOTE: not yet built by make).
1247
1248 2001-08-18  Mark McLoughlin <mark@skynet.ie>
1249
1250         * libspi/Makefile.am: generate imodule
1251         at the same time as other idl compiler 
1252         generated files. 
1253
1254 2001-08-17  Bill Haneman <bill.haneman@sun.com>
1255         * libspi/registry.c :
1256         * libspi/application.c :
1257         * idl/Application.idl :
1258         Made registration with toolkit an application method,
1259         which is required since each app has its own toolkit static
1260         environment.  Thus the bridge must register for 
1261         notification of toolkit events from each application in turn.
1262         Toolkit notifications are now successfully registered for, and
1263         sent to the listening at client.
1264         * test/at.c :
1265         Changed toolkit event string to use hyphens rather than underscores.
1266         * libspi/listener.c :
1267         listner now gives more info in debug mode - it reports the
1268         name of the event received, as well as the name of the source.
1269         
1270
1271 2001-08-16  Bill Haneman <bill.haneman@sun.com>
1272
1273         * libspi/registry.c :
1274         added more implementation for toolkit events.
1275         Fixed bug such that toolkit event registrations
1276         (via atk) use the whole event name string, not 
1277         just minor+detail.
1278         Removed a useless call to an ORBit_ method.
1279         * at-bridge/bridge.c :
1280         Removed unused local sbuf[] variable.
1281         * test/at.c :
1282         We now register for Gtk:GtkWidget:button_press_event 
1283         events as well as "focus:" events.
1284         * cspi/spi.h :
1285         Add some more API from Registry.idl that was missing,
1286         for keystroke listening, keystroke and mouse event
1287         synthesis, and enumeration of accessible desktops.
1288
1289 2001-08-16  Michael Meeks  <michael@ximian.com>
1290
1291         * configure.in: use AM_GLIB_GNU_GETTEXT.
1292
1293         * Makefile.am (SUBDIRS): kill intl.
1294
1295 2001-08-15  Michael Meeks  <michael@ximian.com>
1296
1297         * registryd/Makefile.am: s/oaf/server/ relocate info file.
1298
1299         * configure.in: upd.
1300
1301         * configure.in: depend on a recent bonobo-activation that
1302         will find our server files ...
1303
1304 2001-08-16  Bill Haneman <bill.haneman@sun.com>
1305
1306         * libspi/accessible.c : accessible_new() :
1307         Now we add the Component interface via bonobo_object_add_interface,
1308         if the contained AtkObject implements AtkComponent.
1309         * libspi/accessible.h : now include "component.h"
1310         * libspi/component.h :
1311         * libspi/component.c : added files - implementation of
1312         bonobo wrapper object for Accessibility/Component
1313         * libspi/listener.c :
1314         Added test code to check for Accessibility/Component:1.0
1315         interface and report whether it is implemented by the
1316         event source.
1317         * libspi/registry.c :
1318         Now we check for not only the hash of the whole event 
1319         string before relaying the event, we also check the
1320         "minor" event string (without the detail string).
1321         This allows event listeners to be registered against
1322         all events of a certain major+minor type, or just
1323         against a specific major+minor+detail type.
1324         * libspi/accessible.c :
1325         Added implementations for Accessible:get_parent(),
1326         Accessible:getChildCount(), and Accessible:getChildAtIndex().
1327         * libspi/registry.c :
1328         * libspi/listener.c :
1329         Replaced calls to Accessibility_Accessible_ref() and
1330         Accessibility_Accessible_unref() with 
1331         calls to bonobo_object_dup_ref() and 
1332         bonobo_object_release_unref(), so that the CORBA object
1333         is dup-ed and released when relayed, as well as the bonobo object.
1334
1335 2001-08-15  Mark McLoughlin <mark@skynet.ie>
1336
1337         * libspi/Makefile.am,
1338           registryd/Makefile.am,
1339           at-bridge/Makefile.am.
1340           test/Makefile.am, configure.in:
1341         reverse previous changes.
1342
1343         * /idl/Image.idl: fix typo.
1344
1345         * test/Makefile.am: put DEBUG_FLAGS
1346         in CFLAGS.
1347
1348 2001-08-15  Mark McLoughlin <mark@skynet.ie>
1349
1350         * test/app.c: use argv[0] instead of
1351         g_type_prgname.
1352
1353 2001-08-15  Mark McLoughlin <mark@skynet.ie>
1354
1355         * libspi/Makefile.am,
1356           registryd/Makefile.am,
1357           at-bridge/Makefile.am.
1358           test/Makefile.am, configure.in:
1359         cleanup, replace individual LIBS/CFLAGS with
1360         AT_COMMON_{LIBS|CFLAGS}.
1361
1362         * README: format.
1363
1364 2001-08-15  Mark McLoughlin <mark@skynet.ie>
1365         
1366         * configure.in, libspi/Makefile.am:
1367         Change IDL path checking for bonobo-activation
1368         as opposed to oaf.
1369
1370 2001-08-15  Bill Haneman <bill.haneman@sun.com>
1371
1372         * registryd/registry.c : separated event listeners to use
1373         3 separate lists (focus, window, toolkit).  Began testing
1374         event names against hashes before relaying events.
1375         * test/at.c : now register for events of type "focus:"
1376         * test/app.c : now generate events of type "focus:"
1377         * at-bridge/bridge.c : register with ATK for focus events,
1378         and we now relay those focus events to any "focus:" listeners.
1379         This now works with the bridge as a GTK_MODULE when running test/at.
1380         * libspi/registry.c :
1381         * libspi/listener.c : 
1382         now we ref event sources before propagating, and unref on receipt.
1383         * libspi/registry.c : 
1384         some changes to internal structs, to support event typestring hashes.
1385         * text/app.c : changed the way the appname is generated.
1386         * cspi : added directory that will hold the C bindings library for 
1387                 non-CORBA/bonobo-savvy clients.
1388         * cspi/spi.h : header file that contains the function prototypes for the C binding.
1389         * idl/Component.idl : added in parameter to indicate coord system for
1390                 geometry-related calls.
1391         * idl/Hyperlink.idl : added readonly n_links attribute
1392         * idl/Image.idl : changed methods to attributes.
1393         
1394 2001-08-15  Mark McLoughlin <mark@skynet.ie>
1395
1396         * at-bridge/Makefile.am: link against
1397         ../libspi/libspi.la instead of -lspi.
1398
1399         * at-spi/test/app.c: include 
1400         bonobo-activation.h. Use a default appname
1401         if one is not provided.
1402
1403 2001-08-14  Bill Haneman <bill.haneman@sun.com>
1404
1405         * idl/Registry.idl : temporarily changed register_Application
1406         to oneway, to work around issue with initial registration 
1407         re-entrancy.
1408         * idl/Application.idl : changed attribute "id" from readonly 
1409         to read-write, since it needs to be assigned by Registry.
1410         * registryd/registryd.c : added call to set application id 
1411         on registration.
1412         * registryd/registry.c : changed de-registration procedure to
1413         use CORBA_Object_hash() to find matching object ref in application
1414         lists and listener lists.
1415         * registryd/registry.c : defined EventTypeStruct and EventTypeMajor,
1416         began distinguishing between event types (work in progress).
1417
1418 2001-08-13  Bill Haneman <bill.haneman@sun.com>
1419
1420         CHANGES:
1421         * libspi/application.c:
1422         Added implementations for get/set id, get_toolkitName,
1423         get_version.
1424         * registryd/registryd.c :
1425         * test/at.c :
1426         * test/app.c :
1427         * Makefile.am :
1428         Converted from use of OAF to bonobo-activation.
1429         * libspi/desktop.h :
1430         * libspi/desktop.c :
1431         * test/app.c :
1432         Removed references to atksimpleobject, since base atkobject
1433         implementation now provides functionality we need.
1434         * libspi/atksimpleobject.c :
1435         * libspi/atksimpleobject.h :
1436         Removed.
1437         
1438         ADDITIONS:
1439         * at-bridge
1440         * at-bridge/Makefile.am
1441         * at-bridge/bridge.c
1442         * configure.in
1443         * Makefile.am
1444         Added directory "bridge" and contents, and added dependencies
1445         in Makefile.am/configure.in.  
1446         Initial checkin of "at-bridge".
1447         This code is a GTK_MODULE which automatically registers
1448         GTK+ apps with the accessibility registry, using an object
1449         reference to the root ATK object.
1450         
1451 2001-08-10  Mark McLoughlin <mark@skynet.ie>
1452
1453         * po/Makefile.in.in: Remove. Again. If this
1454         doesn't get autogenerated - you need to update
1455         gnome-common.
1456
1457 2001-08-07  Mark McLoughlin <mark@skynet.ie>
1458
1459         * po/Makefile.in.in: Add. Again.
1460
1461 2001-07-31  Bill Haneman <bill.haneman@sun.com>
1462
1463         * libspi/accessible.c : added support for 'description' property.
1464         * libspi/accessible.c
1465         * libspi/desktop.c
1466         * libspi/registry.c : changed to use bonobo_object instead of bonobo_x_object
1467             (since the two are now equivalent in libbonobo)
1468         * idl/Action.idl
1469         * idl/Component.idl
1470         * idl/Hyperlink.idl
1471         * idl/Image.idl
1472         * idl/Selection.idl
1473         * idl/Table.idl
1474         * idl/Text.idl
1475         * idl/Value.idl : changed these 'secondary' interfaces to inherit from
1476              Bonobo::Unknown as does Accessibility::Accessible.
1477         * idl/StreamableContent.idl : as above, and replaced internal InputStream
1478              interface with Bonobo::Stream, since it was redundant with it.
1479              (The Stream returned by a StreamableContext object is expected to
1480              implement only a subset of Bonobo::Stream)
1481
1482 2001-07-28  Anders Carlsson  <andersca@gnome.org>
1483
1484         * libspi/accessible.c (accessible_object_finalize): Change
1485           g_free to g_object_unref since the AtkObject is a GObject.
1486
1487 2001-07-30  Bill Haneman <bill.haneman@sun.com>
1488
1489         * idl/Accessibility.idl: add new IDL files
1490         
1491         Added:
1492         * idl/Action.idl: Definitions of actionable UI object
1493         * idl/Component.idl: Definitions of UI component geometry, etc.
1494         * idl/Hyperlink.idl: Defs of hyperlink behavior
1495         * idl/Image.idl: Def of accessible image
1496         * idl/Selection.idl: Definition of UI object with selectable children
1497         * idl/StreamableContent.idl: Definition of UI object with streamable backing data
1498         * idl/Table.idl: Definitions for access to table ('spreadsheet') elements
1499         * idl/Text.idl: Interface defs for UI elements with complex textual content
1500         * idl/Value.idl: Definition of UI element that is a value controller or display
1501         
1502 2001-07-27  Michael Meeks  <michael@ximian.com>
1503
1504         * po/Makefile.in.in: remove autogenerated file from CVS.
1505
1506         * libspi/Makefile.am: Radicaly re-vamp to simplify & add ORBit2
1507         type library.
1508
1509         * idl/Registry.idl: include guard.
1510
1511         * idl/Accessibility.idl: Add, and include all the other IDL
1512         files.
1513
1514         * idl/*.idl: remove mass of pragmas etc.
1515
1516 2001-07-26  Michael Meeks  <michael@ximian.com>
1517
1518         * registryd/Makefile.am (registryd_SOURCES): remove
1519         redundant at_.
1520
1521 2001-07-27  Mark McLoughlin <mark@skynet.ie>
1522
1523         * libspi/.cvsignore, registryd/.cvsignore,
1524           test/.cvsignore: updated.
1525
1526         * po/Makefile.in.in: gettext update.
1527
1528 2001-07-25  Bill Haneman <bill.haneman@sun.com>
1529
1530         * initial CVS checkin
1531
1532 2001-06-29  Michael Meeks  <michael@ximian.com>
1533
1534         * configure.in: add AM_CONFIG_HEADER to gen config.h
1535
1536         * acconfig.h: add.
1537