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