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