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