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