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