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