1 2002-01-02 Marc Mulcahy <marc.mulcahy@sun.com>
3 * cspi/spi.h: synched relation types with ATK
5 * cspi/spi_accessible.c: Added implementations of
6 AcccessibleRelation_* methods
8 * idl/Accessibility_Relation.idl: added getRelationTypeName
9 method. Synched known relation types with ATK. Allowed for
10 relation type extension with the RELATION_EXTENDED type.
12 * libspi/relation.c: Provided implementations for
13 AccessibleRelation methods.
15 2002-01-01 Bill Haneman <bill.haneman@sun.com>
17 API tweaks for today's API 'freeze'.
20 Added placeholder functions to allow future compatible expansion
21 of the IDL interfaces.
23 * idl/Accessibility_Registry.idl:
24 Changed generateKeyEvent to generateKeyboardEvent. Changed
25 signature of this method to accept an optional keystring in
26 parameter (for complex text input synthesis) and changed use of
27 simple 'boolean' parameter in registerKeystrokeListener to a
28 struct, EventListenerMode.
30 * cspi/spi_accessible.c:
32 * cspi/spi_streamablecontent.c:
33 Added references to AccessibleStreamableContent interface, and
34 definition and implementation of AccessibleStreamableContent
37 * cspi/spi_registry.c:
39 Changed generateKeyEvent API to generateKeyboardEvent,
40 taking a new (optional) keystring parameter to support complex
45 Renamed directory (to better reflect its actual purpose, bridging
46 from at-spi to ATK). The .so module is also now named
49 * idl/Accessibility_Hypertext.idl:
50 * libspi/accessible.c:
53 Changed Accessibility_Hypertext to *not* derive from
56 * cspi/spi_registry.c:
57 Added list of legal event type names for 'window' events, which
58 completes the registry event API.
60 2001-12-22 Marc Mulcahy <marc.mulcahy@sun.com>
62 * at-bridge/bridge.c: Added registration for separate
63 "Atktext:text-changed::insert" and "AtkText:text-changed::delete"
64 signals. If either of the first two parameters to the generic
65 bridge signal handler are ints, they are passed on as event
66 details. This allows an AT to determine what text was inserted.
68 2001-12-21 Bill Haneman <bill.haneman@sun.com>
70 * registryd/deviceeventcontroller.c:
71 Fixed regressions in generateKeyEvent caused by the removal of
72 gdk_init from registryd; we now use pure X calls to connect to the
73 display, which makes sense because deviceeventcontroller already
74 uses a fair bit of X API (should eventually be migrated to a
77 * registryd/desktop.c:
78 Fixed minor regression in spi_desktop_init, changed the way the
79 desktop name is being set to work with new spi_base API
80 (gobject-based, rather than AtkObject-based).
82 * registryd/Makefile.am:
83 Minor revision of makefile to use XTST_LIBS variable rather than
84 hard-wiring the Xtst LD_ADD element.
86 * test/keysynth-demo.c:
87 Tweaked an output message; added initialization of the
88 'keystrings' member of the "switch listener" key_set.
91 Squashed compile-time warning.
93 * libspi/accessible.c:
94 Cosmetic and formatting fixes, renamed a static method.
96 2001-12-18 Marc Mulcahy <marc.mulcahy@sun.com>
100 * libspi/application.c
104 * libspi/editabletext.c
112 * registryd/desktop.c:
113 Changed SpiBase to contain a GObject pointer rather than an AtkObject
115 2001-12-17 Bill Haneman <bill.haneman@sun.com>
117 * idl/Accessibility_Registry.idl:
118 Added boolean member 'is_text' to DeviceEvent. This is for the
119 use of key events, and helps prevent ambiguity between composed
120 key strings and keysym names, since both may potentially be
121 returned in the 'event_string' member.
123 * at-bridge/bridge.c:
124 * registryd/deviceeventcontroller.c:
125 Use the 'is_text' member when notifying device event listeners.
126 Knon issue: composed characters are not dealt with correctly by
127 the global key listener implementation yet.
129 2001-12-17 Bill Haneman <bill.haneman@sun.com>
131 * at-bridge/bridge.c:
132 Namespaced local static methods to spi_atk_bridge_* where
133 previously named bridge_*, and spi_* elsewhere.
135 * at-bridge/bridge.c:
136 * cspi/bonobo/cspi-bonobo-listener.c:
137 Added demarshalling/conversion for string member of
138 Accessibility_DeviceEvent to AccessibleKeystroke.
140 * registryd/deviceeventcontroller.c:
141 Added code to fill the Accessibility_DeviceEvent key string value
142 member for global key events (i.e. from XGrabKey), to match
143 behavior of Accessibility_DeviceEvent from the toolkit key events
144 from the bridge. Fixed timestamp in global key event notifications.
147 Added printout of key event's string value to
148 report_ordinary_key_event, for demo/debugging purposes.
150 2001-12-15 Bill Haneman <bill.haneman@sun.com>
152 * idl/Accessibility_Registry.idl:
153 Removed Accessibility_KeyStroke structure in favor of generic
154 Accessibility_DeviceEvent structure.
155 Changed Accessibility_ControllerEventMask from a struct to an
158 * at-bridge/bridge.c:
159 Changed APIs to use DeviceEvent structure as above, and removed
160 bogus casting between these event structures.
162 * cspi/spi-listener.h:
163 Added keystring member of AccessibleKeystroke structure, to enable
164 matching on event "names" rather than only hardware codes and
168 Added keystrings member of AccessibleKeySet struct, to allow
169 matching on event names (as above).
170 Added declarations for SPI_createAccessibleKeySet and
171 SPI_freeAccessibleKeySet. Due to changes in libspi, we now pass
172 event modmasks directly as unsigned ints rather than structs with
173 refcounts, in the DeviceEventController methods.
175 * cspi/spi_registry.c:
176 Add SPI_createAccessibleKeySet and SPI_freeAccessibleKeySet methods.
178 * cspi/spi-roletypes.h:
179 Added documentation of newly added SPI Roles.
181 * cspi/bonobo/cspi-bonobo-listener.c:
182 Changes in support of API changes above.
184 * libspi/accessible.c:
185 Converted APIs to use DeviceEvent structure (see IDL changes
188 * registryd/deviceeventcontroller.c:
189 Added DEControllerGrabMask structure to track keygrabs not only by
190 modmask but by keyset as well; this allows us to do "global"
191 (i.e. X) keygrabs on a per-key or keyset basis rather than always
192 grabbing on AnyKey and then filtering after-the-fact.
193 Bugfixes for event filtration mean that we don't get false matches
194 on SPI_KEY_RELEASED, when only SPI_KEY_PRESSED was requested.
196 * registryd/deviceeventcontroller.c:
197 Namespaced a number of static methods to use spi_ prefix. Major
198 revision to internals of global (i.e. X) key grabs.
200 * registryd/deviceeventcontroller.h:
201 Removed keymask_list and added keygrabs_list to
202 SpiDeviceEventController struct.
205 Added use of SPI_createAccessibleKeySet API when creating a
206 listener for only one key. Attach a listener to "shift spacebar
207 SPI_KEY_RELEASE" as a demonstration. Changed (incorrect) usage of
208 X key event names to SPI key event names, so that listeners are
209 registered for (SPI_KEY_PRESSED | SPI_KEY_RELEASED), for instance.
211 * test/keysynth-demo.c:
212 Changed (incorrect) use of X key event names (KeyPressed,
213 KeyReleased) to SPI enums SPI_KEY_PRESSED and SPI_KEY_RELEASED.
216 2001-12-12 Bill Haneman <bill.haneman@sun.com>
218 * libspi/accessible.c:
219 Convert all AtkRole enumerations to Accessibility_Role enums when
220 getting a role from an AtkObject.
222 * cspi/spi_accessible.c:
223 Complete the conversion of Accessibility_Role enums at runtime to
224 AccessibleRole (SPI_ROLE_*) roles in Accessible_getRole, so that
225 role enums correctly match those given in spi-roletypes.h.
226 Re-synchronize the local names list for AccessibleRole_getName ().
227 AccessibleRole_getName is now deprecated, since it duplicates the
228 more reliable Accessible_getRoleName.
229 Added some role types from Accessibility_Role.idl.
231 * idl/Accessibility_Role.idl:
232 Added some role types used by AtkRole.
234 2001-12-12 Bill Haneman <bill.haneman@sun.com>
237 * cspi/spi_registry.c:
239 * cspi/cspi-bonobo-listener.c:
240 Namespaced all methods that did not begin with an "SPI_" or
241 "Accessible" prefix to "SPI_".
244 Homogenized internal function namespace to "cspi_" for statics.
247 Patched tests to use the new CSPI API.
249 * docs/reference/cspi/at-spi-cspi-sections.txt:
250 Updated docs to reflect namespace changes, and added a number of
251 methods to the documentation.
253 * registryd/registry.c:
254 Changed use of strings and string hashes in listener event
255 matching and parse_event_string to use GQuark, which is guaranteed
258 * registryd/registry.h:
259 Squashed annoying warning.
261 * idl/Accessibility_Role.idl:
262 Extended range of available Accessibility_Role values.
264 * cspi/spi_accessible.c:
265 Re-ordered role names.
267 2001-12-12 Bill Haneman <bill.haneman@sun.com>
269 * idl/Accessibility_Value.idl:
270 Revert use of union back to CORBA_double, since the double type is
271 more efficient and can contain the other types without loss of
274 * idl/Accessibility_Accessible.idl:
275 Added method Accessibility:Accessible:getRoleName, to complement
276 Accessibility:Accessible:getRole.
278 * cspi/spi_accessible.c:
280 Added C binding for above, Accessible_getRoleName (), and changed
281 signature of Accessible_getRole () to return an AccessibleRole.
283 * cspi/spi-roletypes.h:
284 Changed AccessibleRole_getName to return a char * instead of a
285 const char *. This method is now at least temporarily deprecated
286 in favor of asking Accessibles for their RoleNames directly.
289 Revert to match Accessibility_Value.idl;
293 Change signature of AccessibleValue methods to use double rather
297 * cspi/spi_accessible.c:
298 Changed Accessible_getRole to return an AccessibleRole enum rather
299 than a UTF-8 string. The UTF-8 string can still be obtained via
300 AccessibleRole_getName ().
302 * test/test-simple.c:
303 Add test_action. Small fixup to match API change to Accessible_getRole.
306 Bugfix for get_action_from_servant ().
308 2001-12-11 Michael Meeks <michael@ximian.com>
310 * libspi/libspi.h: remove registry.h and
311 desktop.h, deviceeventcontroller.h
313 * libspi/Makefile.am: remove registry.[ch],
314 desktop.[ch], deviceeventcontroller.[ch]
316 * registryd/Makefile.am: add registry.[ch],
317 desktop.[ch], rename registryd.c to registry-main.c.
318 add deviceeventcontroller.[ch]
320 2001-12-11 Bill Haneman <bill.haneman@sun.com>
323 Replace setenv() call with putenv ().
325 * libspi/component.c:
326 Bugfix in AccessibleComponent_getExtents (),
329 2001-12-11 Michael Meeks <michael@ximian.com>
331 * libspi/image.c (impl_getImageExtents): impl.
332 (spi_image_class_init): upd.
335 (AccessibleImage_getImageDescription): fix daft bug
338 * test/test-simple.c (global_listener_cb): update
339 to only quit if not --poke
340 (main): catch --poke.
341 (validate_accessible): upd. dumping, call test_image
344 * libspi/Makefile.am (IDL_DEPS): fixup the IDL
347 * idl/Accessibility.idl: update all IDL includes.
349 * idl/*.idl - rename to namespace - this sucks, blame
350 mjs' bad decision for oafd.
352 * test/test-simple.c (create_test_window): add more tests.
353 (create_tree): split this out.
354 (validate_accessible): bugfix.
356 2001-12-11 Michael Meeks <michael@ximian.com>
358 * cspi/bonobo/cspi-bonobo-listener.c:
359 (cspi_kestroke_listener_unref),
360 (cspi_event_listener_unref): impl. undoing previous
361 homenous environment - for Bill.
363 * cspi/spi_table.c (long_seq_to_array): use
366 * cspi/spi_main.c: split out all bonoboish bits into
369 * cspi/spi-impl.h: upd. typedefs.
371 * cspi/spi_registry.c: update to lowlevel API,
372 return booleans to indicate success in some places.
374 * cspi/spi_event.c: update to lowlevel API.
376 * cspi/bonobo/Makefile.am: add.
378 * cspi/bonobo/cspi-lowlevel.h: add
380 * cspi/bonobo/cspi-bonobo.c: add
382 * cspi/bonobo/cspi-bonobo-listener.[ch]: impl.
384 * cspi/Makefile.am: remove spi-listener-impl.[ch],
385 (SUBDIRS): add bonobo, link in the libs.
387 * cspi/spi-util.c: kill this file.
389 * TODO: merge in my bits.
391 2001-12-11 Michael Meeks <michael@ximian.com>
393 * test/test-simple.c (test_value, test_table, main):
394 remove unused variables causing warnings.
396 * configure.in: cleanup checks - require gail.
398 2001-12-11 Bill Haneman <bill.haneman@sun.com>
401 Changed Value interface to use SValue (scalars) rather than
402 assuming all values are floats. This allows floats, doubles,
403 longs, shorts, and unsigned values to be manipulated.
404 Introduced Accessibility:SValue union.
407 Updated to use new API above, and to work correctly with GValues
408 of different types in AtkValue.
411 Updated to use new API above. cspi's API is as yet unchanged.
414 Updated the Value revision action item.
416 2001-12-10 Bill Haneman <bill.haneman@sun.com>
418 * test/test-simple.c:
419 Added test_table (GtkTreeView widget in test window to follow).
420 Un-commented test_value, added GtkRange widget.
421 Added GtkTreeView widget with GtkListStore. It passes regression
422 test but leaks one SPI object for some reason.
425 Fixed bug in impl__set_currentValue.
427 2001-12-10 Michael Meeks <michael@ximian.com>
429 * cspi/spi_text.c: audit for exception handling,
430 tolerating NULL object references safely etc.
432 * cspi/spi_value.c: ditto.
434 * cspi/spi_table.c (AccessibleTable_getSummary),
435 (AccessibleTable_getAccessibleAt),
436 (AccessibleTable_getRowHeader),
437 (AccessibleTable_getColumnHeader),
438 (AccessibleTable_getCaption): fix bugs hidden by
440 (long_seq_to_array): impl.
441 (AccessibleTable_getSelectedRows),
442 (AccessibleTable_getSelectedColumns): use it.
444 2001-12-10 Bill Haneman <bill.haneman@sun.com>
447 Added a TODO list (rough and short for now).
449 * cspi/spi_hyperlink.c:
450 * cspi/spi_hypertext.c:
451 Fixed macro name typos, and remove use of obsolete macro in
452 AccessibleHyperlink_getLink.
455 * cspi/spi_accessible.c:
456 * cspi/spi_application.c:
457 * cspi/spi_component.c:
458 * cspi/spi_selection.c:
461 Documentation fixes (removed return values from ref/unref methods).
463 2001-12-10 Michael Meeks <michael@ximian.com>
465 * cspi/spi_action.c: audit for exception handling,
466 tolerating NULL object references safely etc.
468 * cspi/spi_accessible.c: ditto.
470 * cspi/spi_component.c: ditto.
472 * cspi/spi_editabletext.c: ditto.
474 * cspi/spi_hyperlink.c: ditto.
476 * cspi/spi_hypertext.c: ditto.
478 * cspi/spi_image.c: ditto.
480 * cspi/spi_selection.c: ditto.
482 2001-12-10 Michael Meeks <michael@ximian.com>
484 * configure.in: use cspi/libspi.pc.in instead.
486 * Makefile.am (pkgconfig_DATA): upd. to match.
488 * test/simple-at.c (report_focus_event): kill hacks around
489 bad return values, use putenv not setenv
491 * libspi/desktop.c (impl_desktop_get_child_at_index): don't
492 fire ChildGone - I killed it.
495 (impl_accessibility_component_get_extents): remove
498 * idl/Accessible.idl: kill ChildGone exception.
500 * cspi/*.[ch]: kill int return from ref / unref.
502 * cspi/spi_main.c (cspi_object_add_check): fold into
503 (cspi_object_add): here.
505 * cspi/spi_component.c (AccessibleComponent_getExtents):
506 handle exceptions elegantly.
508 * cspi/spi-private.h (cspi_check_ev_return),
509 (cspi_return_if_fail): impl.
511 * cspi/spi_accessible.c: use extensively.
512 (AccessibleStateSet_equals): add direct compare check.
514 * cspi/spi_selection.c: tolerate NULL objs, and check
515 exceptions before return.
517 * cspi/spi-util.c (cspi_warn_ev): rename to
518 (cspi_check_ev): this & don't pass ev in; no point.
520 2001-12-10 Michael Meeks <michael@ximian.com>
522 * test/test-simple.c: use putenv not setenv
523 (get_environment_vars): more chatty if you're not using
526 * test/simple-at.c: do the setenv so more people see the
529 2001-12-10 Bill Haneman <bill.haneman@sun.com>
532 Changed check of CORBA_environment on notification to be a warning
533 instead of an error for the moment, since we can recover from this
534 error when caused by a queued notification from a dead app.
537 Fixes for spi_value, use G_TYPE_DOUBLE for atk_value values (as
538 used by all current implementors of AtkValue), and coerce to
539 CORBA_float. (Proper general case fix may require change to Value.idl).
541 2001-12-09 Bill Haneman <bill.haneman@sun.com>
545 * cspi/spi_accessible.c:
546 Documentation fixes: added user_data params to documentation for
547 listeners and callbacks.
549 * cspi/spi_accessible.c:
550 Changed AccessibleStateSet_compare to return a
551 StateSet rather than return the difference set into a third parameter.
554 2001-12-09 Bill Haneman <bill.haneman@sun.com>
557 Replace use of AM_PROG_XML_I18N_TOOLS macro with AC_PROG_INTLTOOL.
558 remove 'dnl' comment line from AC_OUTPUT (autoconf doesn't like
562 Remove subdirectory po from SUBDIRS for now.
564 * at-bridge/bridge.c:
565 Beefed up a couple of debug printouts.
566 One-line fix for signal notification name formatting.
568 * libspi/accessible.c:
569 Added assertion to spi_accessible_new ().
571 * libspi/application.c:
572 Put #ifdef qualifiers around a printf.
575 Fixed derivation (from BONOBO_OBJECT to SPI_BASE).
577 * registryd/Makefile.am:
579 Replaces use of XML_I18N_MERGE_SERVER_RULE with
580 INTLTOOL_SERVER_RULE macro.
583 Added an event listener for several ATK signals, for
584 testing and debugging. Removed a few g_warnings.
585 Added test output if focussed item implements the Value interface.
587 * test/test-simple.c:
588 Added test_value () function (known not to pass at the moment, so
589 not actually called yet.
591 2001-12-08 Michael Meeks <michael@ximian.com>
593 * at-bridge/bridge.c (bridge_focus_tracker),
594 (emit_eventv): fix the same ref. leak.
595 (register_atk_event_listeners): don't leak.
597 * cspi/spi-listener-impl.c (cspi_event): more
598 protection from client code.
600 * test/test-simple.c (test_desktop): unref the app.
602 * test/Makefile.am: upd. TESTS.
604 * at-bridge/bridge.c (bridge_exit_func): release the registry.
606 * test/keysynth-demo.c (keysynth_exit): unref the listeners.
608 * cspi/spi_accessible.c (Accessible_queryInterface): constify.
610 * cspi/spi_registry.c: constify in strings.
611 (deregisterGlobalEventListenerAll): don't release the ref.
613 * cspi/spi.h: start removing redundant / conflicting
614 gtkdoc comments, making the API readable at a glance :-)
616 * cspi/spi_event.c (AccessibleEventListener_unref): impl.
618 * test/keysynth-demo.c (keysynth_exit, main): upd.
620 * test/simple-at.c (main, simple_at_exit): upd.
622 * test/test-simple.c (unutterable_horror): kill.
623 (utterable_normal_derefs): kill.
624 (main): upd & do a setenv before gtk_init, so that we
625 can use memprof - and to save the pain of remembering
626 this, if we're running under memprof - don't exit.
628 * cspi/spi_main.c (SPI_exit): return exit status
630 (SPI_event_quit): impl.
631 (SPI_event_main): simplify.
632 (cspi_is_gnome_app): kill.
633 (SPI_init): kill isGNOMEapp arg.
635 * at-bridge/bridge.c (register_atk_event_listeners):
636 re-instate the unref.
637 (bridge_exit_func): don't re-activate the registry,
638 protect vs. theoretical re-entry, use the
639 AT_BRIDGE_SHUTDOWN env. var to determine whether to
640 assert a clean shutdown - for regression tests.
642 2001-12-08 Abel Cheung <maddog@linux.org.hk>
644 * configure.in: Comment out dummy i18n support for now,
645 otherwise it fails to build.
646 * idl/Makefile.am: Add Selection.idl and Hypertext.idl to
647 EXTRA_DIST. They are missing in tarball.
649 2001-12-07 Michael Meeks <michael@ximian.com>
651 * util/magnifier.c: kill bonobo activation reg. race.
654 (impl_accessibility_component_get_extents): make it match
657 * libspi/registry.c (_registry_notify_listeners):
658 re-remove X headers & reconcile conflicts.
659 (spi_listener_struct_free): bad conflict resolve.
660 (impl_accessibility_registry_register_application):
661 more bad merging fixed.
662 (impl_accessibility_registry_deregister_application): ditto.
663 (spi_registry_new): ditto.
664 (spi_registry_init): don't have an applications field.
666 [ merge fixups2 branch to here ]
667 2001-12-07 Michael Meeks <michael@ximian.com>
669 * test/simple-at.c (report_focus_event),
670 (report_focussed_accessible): remove g_warning debug.
672 2001-12-07 Michael Meeks <michael@ximian.com>
674 * test/test-simple.c (validate_tree): comment out some checks.
675 (test_desktop): app now not registered idly - horay.
677 2001-12-07 Michael Meeks <michael@ximian.com>
679 * cspi/spi_registry.c
680 (registerAccessibleKeystrokeListener): clean, stop it leaking
681 great swathes of memory, and device event controller references.
682 ensure we always pass valid sequences.
683 (deregisterAccessibleKeystrokeListener): ditto.
684 (generateKeyEvent): upd.
686 * at-bridge/bridge.c (bridge_key_listener): handle
687 registry dead exception gracefully.
688 (bridge_focus_tracker, emit_eventv): free ev.
690 * test/simple-at.c (report_focus_event): fix polarity.
692 * libspi/application.c (notify_listeners): kill the ev
693 argument, and make sure we init the ev we use.
694 (spi_application_object_event_listener): split out a chunk
695 (get_atk_object_ref): here & fixup.
696 (reverse_lookup_name_for_toolkit_event): make const.
697 (spi_application_toolkit_event_listener): fixup, kill leaks
700 * at-bridge/bridge.c (register_atk_event_listeners):
701 don't unref the noop object - causes grief.
703 * libspi/registry.c: remove the X headers.
704 turn off the debug churn.
706 * libspi/accessible.c (spi_accessible_new_return): only
707 release the ref if we are supposed to [doh]
709 * test/simple-at.c (report_button_press, report_focus_event):
710 guard vs. unexpected exit.
712 * at-bridge/bridge.c (gtk_module_init): prune printf.
713 (bridge_exit_func): fix app unref.
715 * libspi/Makefile.am: don't install registry or desktop.h
717 * libspi/*.h: update includes.
719 * libspi/application.h: don't include ourself, or
720 other redundant headers.
722 2001-12-06 Michael Meeks <michael@ximian.com>
724 * libspi/accessible.c
725 (get_accessible_from_servant): impl.
726 Upd. all CORBA impl.s to use it killing cut and paste.
728 * cspi/spi_main.c (cspi_cleanup): guard vs. double
730 (SPI_init): register atexit cleanup handler here.
732 2001-12-06 Michael Meeks <michael@ximian.com>
734 * at-bridge/bridge.c (gtk_module_init): g_error on
737 2001-12-06 Michael Meeks <michael@ximian.com>
739 * at-bridge/bridge.c (gtk_module_init): some sort of
740 confusing merge clash - reverted.
741 (bridge_idle_init): ditto.
743 * test/test-simple.c (main, utterable_normal_derefs):
744 merge from Bill - somehow not committed.
746 2001-12-06 Michael Meeks <michael@ximian.com>
748 * libspi/value.c (spi_value_class_init): upd.
749 (spi_value_finalize): kill.
751 * libspi/table.c (spi_table_finalize): kill.
752 (spi_table_interface_new): upd.
753 (spi_table_class_init): upd.
754 (get_table_from_servant): impl.
755 Upd. all CORBA impl.s to use it killing yet more cut and paste.
757 * libspi/selection.c (spi_selection_finalize): kill.
758 (spi_selection_interface_new): upd.
759 (spi_selection_class_init): upd.
760 (get_selection_from_servant): impl.
761 Upd. all CORBA impl.s to use it killing yet more cut and paste.
763 * libspi/relation.c (spi_relation_finalize): kill.
764 (spi_relation_class_init, spi_relation_new): upd
766 * libspi/image.c (spi_image_finalize): kill.
767 (spi_image_class_init): upd.
768 (spi_image_interface_new): upd.
769 (get_image_from_servant): impl.
770 Upd. all CORBA impl.s to use it killing yet more cut and paste.
772 * libspi/hyperlink.c (spi_hyperlink_class_init): upd.
773 (spi_hyperlink_finalize): kill.
774 (spi_hyperlink_new): upd.
775 (get_hyperlink_from_servant): impl.
776 Upd. all CORBA impl.s to use it killing yet more cut and paste.
778 * libspi/hypertext.c (spi_hypertext_interface_new): upd.
779 (spi_hypertext_finalize): kill.
780 (spi_hypertext_class_init): upd.
781 (get_hypertext_from_servant): impl.
782 Upd. all CORBA impl.s to use it killing yet more cut and paste.
784 * libspi/editabletext.c (spi_editable_text_finalize): kill.
785 (spi_editable_text_interface_new): upd.
786 (get_editable_text_from_servant): impl.
787 Upd. all CORBA impl.s to use it killing yet more cut and paste.
789 * libspi/text.c (get_text_from_servant): impl.
790 All impls - update to use it killing more cut and paste,
791 also fix bad string returns on duff args ( a somewhat
792 impossible case to handle - but hey ).
793 (spi_text_construct): impl.
794 (spi_text_interface_new): upd.
795 (spi_text_object_finalize): kill.
798 (accessibility_component_object_finalize): kill.
799 (spi_component_class_init): upd.
800 (get_component_from_servant): impl. helper to kill cut & paste.
801 (impl_accessibility_component_contains):
802 (impl_accessibility_component_get_accessible_at_point):
803 (impl_accessibility_component_get_position):
804 (impl_accessibility_component_get_extents):
805 (impl_accessibility_component_get_mdi_z_order):
806 (impl_accessibility_component_get_layer):
807 (spi_component_interface_new): upd.
809 * libspi/action.c (spi_action_finalize): kill.
810 (spi_action_class_init): upd. inherit from SpiObject.
811 (spi_action_interface_new): upd.
812 (get_action_from_servant): impl. helper to reduce cut & paste.
813 (impl_getKeyBinding, impl_getName, impl_doAction),
814 (impl_getDescription): Use it everywhere.
816 * cspi/spi_main.c (get_live_refs): a pointer hash.
817 (spi_object_hash, spi_object_equal): comment out.
818 There are issues with CORBA object hashing that need
821 * libspi/application.c (spi_application_init),
822 (spi_application_new): upd.
824 * libspi/accessible.c (spi_accessible_object_finalize): kill.
825 (spi_accessible_class_init): upd.
826 s/accessible/object/ in epv methods.
828 2001-12-05 Bill Haneman <bill.haneman@sun.com>
830 * at-bridge/bridge.c:
831 Reorder the bridge initialization into the bridge gtk_module_init,
832 an immediate call to bridge_register_app, and an idle_add for
833 register_atk_event_listeners (the only code that *must* wait until
834 GTK+ is initialized) via bridge_idle_add. Bridge_register_app does
835 the activation, creates the application's Accessible object, and
836 queues the bridge_idle_init function. Restored call to
837 Accessibility_Registry_deregisterApplication().
838 Prior to making this call we obtain a new reference to the
839 registry, which is a temporary hack that helps us handle apps that
840 shut down the bonobo mainloop before we get there.
843 Fix string leakage in debug block, and don't segv if a an app
844 dies before its event notifications have been propagated.
847 Modify cspi_check_ev() to call g_warning() rather than g_error(),
848 as stopgap measure until we get proper exception handling when
849 objects die during or before interrogation.
853 Moved use of isGNOMEApp flag from SPI_event_main to SPI_init.
854 Also changed default value of is_gnome_app to TRUE.
857 * test/keysynth-demo.c:
858 Changed use of SPI_init and SPI_event_main to reflect API change above.
861 Made report_focus_event check the warning value from getName
862 before reporting on focussed accessible; simplifies handling of
863 notifications from dead objects.
865 * test/test-simple.c: (Changes not in this patch since source is
868 2001-12-05 Michael Meeks <michael@ximian.com>
870 * registryd/registryd.c (main): protect against
871 bonobo-activation startup race condition.
873 * cspi/spi_main.c (cspi_object_add_check): cope
874 with the exception elegantly.
876 * idl/Accessible.idl: decl. ChildGone
878 * libspi/desktop.c (spi_desktop_dispose): impl.
879 (spi_desktop_class_init): upd.
880 (spi_desktop_add_application),
881 (spi_desktop_remove_application),
882 (abnormal_application_termination): impl.
883 (impl_desktop_get_child_at_index): re-impl.
886 (impl_accessibility_registry_deregister_application),
887 (impl_accessibility_registry_register_application):
888 kill excessive debug clutter.
890 * test/test-simple.c (test_misc): test some NULL
891 tolerance. (main): upd.
893 * cspi/spi_main.c (cspi_accessible_is_a): a NULL
894 implements no interfaces - so let's not crash.
896 * cspi/spi_accessible.c (Accessible_queryInterface): ditto.
898 * libspi/accessible.c (spi_accessible_new_return): impl.
899 helper to calm the cut and paste, to cope with
900 NULL AtkObjects effectively and efficiently, and to kill
901 the referencing bugs.
903 * libspi/table.c (impl_getAccessibleAt),
904 (impl_getRowHeader, impl_getColumnHeader): upd.
906 * libspi/hyperlink.c (impl_getObject): upd.
908 * libspi/accessible.c
909 (impl_accessibility_accessible_get_child_at_index): upd.
912 (impl_accessibility_component_get_accessible_at_point): upd.
914 * test/test-simple.c (test_editable_text, test_text): impl.
917 * cspi/spi_editabletext.c
918 (AccessibleEditableText_insertText): constify.
920 * test/test-simple.c (focus_me): make more robust.
922 * libspi/accessible.c: remove some printfs in methods that
923 we test and work fine, so we can get a clean tree dump.
925 * test/test-simple.c (validate_accessible),
926 (validate_tree): make tree dumping pretty too.
928 * at-bridge/bridge.c (bridge_signal_listener): upd. so
929 it builds without debug on.
931 * test/test-simple.c (validate_accessible): fix the most
934 * cspi/spi_main.c (spi_object_release): leave the nicely
935 blanked memory around if in debug mode.
937 * cspi/spi-listener-impl.c (cspi_event): use add_check.
939 [committed to fixups2]
940 2001-12-05 Michael Meeks <michael@ximian.com>
942 * libspi/editabletext.c
943 (spi_editable_text_class_init): g_type_class_peek_parent,
944 not interface peek - so we finalize cleanly.
946 * libspi/accessible.c (spi_accessible_new): kill debug.
948 * test/test-simple.c (validate_accessible): fix ref.
949 leak, print strings before freeing them; sigh, comment a
950 chunk out due to strangeness.
951 (validate_tree): unref the child after use.
953 * cspi/spi_component.c (AccessibleComponent_getLayer):
954 add missing break statement, switch on zlayer not the
955 uninitialized retval.
957 * cspi/spi_main.c (cspi_object_add): add assert, local ref
958 before (possibly re-entering) remote unref.
960 * test/simple-at.c (main): unref the desktop.
962 * cspi/spi_accessible.c (cspi_accessible_is_a): move
965 * cspi/spi_main.c (cspi_accessible_is_a): here to
966 isolate bonobo API usage more.
968 * libspi/registry.c (impl_accessibility_registry_register_application):
971 2001-12-04 Michael Meeks <michael@ximian.com>
973 * test/test-simple.c (validate_tree): upd.
974 IndexInParent check to make it more lucid.
975 (validate_accessible): dump the tree.
977 * libspi/accessible.c (de_register_public_ref),
978 (get_public_refs): impl.
979 (spi_accessible_new): make more efficient & intuitive.
980 Now IndexInParent check works.
982 2001-12-04 Michael Meeks <michael@ximian.com>
984 * cspi/spi-util.h: remove.
986 * cspi/spi.h: move SPI_freeString here
988 * libspi/component.c (impl_accessibility_component_get_layer):
990 (impl_accessibility_component_get_mdi_z_order): ditto,
991 return -1 on error - is this ok ?
993 * test/test-simple.c (test_application): impl.
995 * cspi/spi_accessible.c (Accessible_getApplication),
996 (Accessible_isApplication): impl.
998 * libspi/registry.c (spi_listener_struct_free): release
999 the CORBA reference too.
1001 * libspi/accessible.c
1002 (impl_accessibility_accessible_get_parent): fix ref leak.
1004 * libspi/registry.c (spi_registry_new): make the registry
1005 immortal - we don't want it to go away ever.
1007 * libspi/application.c
1008 (spi_accessible_application_finalize): impl. cleanup.
1010 * cspi/spi_registry.c
1011 (deregisterGlobalEventListenerAll),
1012 (deregisterGlobalEventListener),
1013 (deregisterAccessibleKeystrokeListener): fix ref leak.
1015 * cspi/spi_main.c (SPI_init): remove redundant ref.
1017 * test/test-simple.c (unutterable_horror): impl. to force a
1022 (impl_accessibility_registry_deregister_application): release
1023 the application when we de-register it.
1025 * at-bridge/bridge.c (bridge_exit_func): comment out shutdown
1026 until we have the infastructure to get it right.
1028 2001-12-03 Michael Meeks <michael@ximian.com>
1030 * libspi/Makefile.am: only build eventlistener.[ch]
1032 * libspi/accessible.c
1033 (impl_accessibility_accessible_get_child_at_index): don't leak.
1035 * at-bridge/bridge.c (bridge_exit_func): cope with an exit
1036 before we hit the idle handler.
1038 * cspi/spi-util.c (cspi_check_ev): g_error is far nicer for
1039 debugging than exit.
1041 * at-bridge/bridge.c (bridge_focus_tracker): fix ref issue.
1043 * libspi/listener.c (impl_notify_event): check source
1044 not NIL before unref.
1046 * libspi/registry.c (impl_registry_notify_event): ditto.
1048 * libspi/eventlistener.c
1049 (impl_accessible_event_notify_event): unref the source.
1051 * libspi/accessibleeventlistener.c
1052 (impl_accessible_event_notify_event): unref the source.
1054 * idl/Event.idl: remove 'hash_id' attribute - of no
1057 * libspi/application.c (notify_listeners): upd list
1059 (spi_application_object_event_listener),
1060 (spi_application_toolkit_event_listener): upd to do correct
1064 (_registry_notify_listeners): update.
1065 (parse_event_type): this method also leaks like a sieve.
1066 (impl_accessibility_registry_deregister_global_event_listener):
1067 fix ETYPE_WINDOW case.
1069 * libspi/application.c
1070 (impl_accessibility_application_register_object_event_listener):
1073 * libspi/hyperlink.c (impl_getObject): fix ref mistake.
1075 * libspi/hypertext.c (impl_getLink): ditto.
1077 * cspi/spi_main.c (cspi_object_add): remove
1078 bogus CORBA_Object_duplicate.
1080 * cspi/spi-listener-impl.c (cspi_event): dup/ref
1083 * cspi/spi_accessible.c
1084 (Accessible_getRelationSet): fix leak / referencing issue.
1086 * cspi/spi_main.c (spi_object_hash, spi_object_equal): impl.
1087 (cspi_object_add, cspi_object_unref): upd.
1088 (spi_object_release, get_live_refs): impl.
1089 (cspi_cleanup): simplify.
1091 * *.[ch]: s/boolean/SpiBoolean/
1093 * cspi/spi_accessible.c (role_names): actualy order so it
1094 corresponds with the enum !
1096 * test/test-simple.c (test_roles): check some role strings
1097 vs. enums to detect offset errors.
1099 2001-12-01 Michael Meeks <michael@ximian.com>
1101 * cspi/spi_main.c (cspi_object_add_check): impl. helper.
1103 * cspi/spi_accessible.c (Accessible_getChildAtIndex):
1105 (Accessible_getChildAtIndex): use cspi_add_check so we
1106 check the ev before using a (possibly) invalid value.
1108 * libspi/accessible.c
1109 (impl_accessibility_accessible_get_parent): don't segv
1112 * at-bridge/bridge.c (gtk_module_init): upd.
1113 (bridge_property_event_listener): don't leak strings
1115 (bridge_state_event_listener),
1116 (bridge_property_event_listener): don't use a static
1117 buffer in case of recursive event emission &
1118 re-enterancy - split out the swathe of cut and paste
1120 (emit_eventv): and fix 2 ref leaks here & comply to the
1122 (bridge_register_app): rename to
1123 (bridge_idle_init): this and kill arg parsing, split
1124 various inits & bonobo-activation registration to module
1125 init time, kill referencing error.
1126 (bridge_exit_func): fix the same leak.
1127 (bridge_focus_tracker): don't leak event structures
1129 (bridge_signal_listener): more leakage and cut & paste
1131 (bridge_key_listener): return the result - FIXME is
1132 this polarity correct ?
1133 (accessibility_keystroke_from_atk_key_event): rename
1134 (accessibility_init_keystroke_from_atk_key_event): and stop
1136 (gtk_module_init): return a value - not that it is checked by
1138 (bridge_key_listener): register my horror at casting between
1139 IDL defined structs.
1140 (bridge_get_registry): kill - not used.
1142 * cspi/spi_accessible.c (Accessible_getRole): make return const.
1144 * test/test-simple.c (test_roles): impl.
1145 (test_desktop, validate_accessible, validate_tree): impl.
1147 * cspi/spi_accessible.c (role_names): fixup bogus
1148 MAX_ROLES setup, make constants const for efficient linkage
1149 (AccessibleRole_getName): conform to coding style, make
1152 2001-11-30 Michael Meeks <michael@ximian.com>
1154 * cspi/spi.h: add missing prototype.
1156 * libspi/registry.c (spi_listener_struct_new): fix sig.
1158 * test/Makefile.am: add test-simple
1160 * test/test-simple.c: add
1162 * test/test.sh: add.
1164 * cspi/spi_main.c (SPI_init): make SPI_inited module global,
1166 * at-bridge/bridge.c (gtk_module_init): don't do an idle init,
1167 do it straight - since otherwise we often get an activation race.
1169 [ work before Bill duplicated a chunk of it ... ]
1170 2001-11-30 Michael Meeks <michael@ximian.com>
1172 * libspi/keystrokelistener.c
1173 (spi_keystroke_listener_class_init): fixup arg
1176 * libspi/eventlistener.c
1177 (spi_event_listener_class_init): ditto.
1179 * tests/test.sh: add.
1181 * cspi/spi-listener-impl.h: update macros.
1183 * cspi/spi-listener-impl.c
1184 (cspi_event_listener_remove_callback): add
1185 correct pre-conditions.
1187 * cspi/spi_main.c (SPI_exit): guard vs. double
1188 exits, exit the mainloop nicely.
1189 (SPI_event_main): make more sense.
1190 (SPI_init): move the atexit evilness here so we
1191 always do it (yuck).
1192 (SPI_event_main): upd.
1194 * test/simple-at.c: update for listener changes.
1196 * registryd/registryd.c (main): prune kruft.
1198 * libspi/libspi.h: upd.
1200 * libspi/eventlistener.[ch]: rename broken macros.
1202 * libspi/accessibleeventlistener.[ch]: remove.
1204 * libspi/*.[ch]: IS_SPI_... -> SPI_IS_...
1206 * test/test-simple.c: Add - automated tests.
1208 * cspi/spi-listener-impl.c (cspi_event),
1209 (cspi_key_event): add user_data to invoke.
1210 (cspi_keystroke_listener_finalize): impl.
1211 (cspi_keystroke_listener_class_init): upd.
1214 (createAccessibleEventListener),
1215 (AccessibleEventListener_addCallback),
1216 (createAccessibleKeystrokeListener),
1217 (AccessibleKeystrokeListener_addCallback): upd.
1219 * libspi/deviceeventcontroller.c
1220 (spi_device_event_controller_check_key_event): add public proto.
1223 (impl_accessibility_registry_deregister_global_event_listener):
1224 always init listeners.
1225 (_registry_notify_listeners): yes it is.
1227 * cspi/spi-listener-impl.c (cspi_key_event):
1229 (cspi_event_listener_finalize): impl.
1230 (cspi_event_listener_class_init): hook up.
1231 (event_handler_new, event_handler_free),
1232 (event_list_remove_by_callback): impl.
1233 (cspi_event_listener_remove_callback),
1234 (cspi_keystroke_listener_remove_callback),
1235 (cspi_keystroke_listener_add_callback),
1236 (cspi_event_listener_add_callback): upd.
1238 * libspi/keystrokelistener.c
1239 (keystroke_listener_object_finalize): kill
1240 (spi_keystroke_listener_class_init): upd.
1241 (spi_keystroke_listener_add_callback),
1242 (spi_keystroke_listener_remove_callback): kill,
1244 (impl_key_event): prune drasticaly.
1246 * libspi/eventlistener.c
1247 (spi_event_listener_add_callback),
1248 (spi_event_listener_remove_callback): kill, use
1250 (impl_accessible_event_notify_event): upd.
1251 (spi_event_listener_object_finalize): remove.
1253 * libspi/Makefile.am: use eventlistener.[ch]
1255 2001-12-04 Bill Haneman <bill.haneman@sun.com>
1257 * libspi/registry.c (_registry_notify_listeners):
1258 Changed listener loop iteration to use preferred convention.
1259 Got rid of string memory leaks caused be calling g_strconcat
1260 inside function calls.
1262 * libspi/registry.c (parse_event_type):
1263 Stopped g_strconcat memory leaks, free the g_strsplit return,
1264 g_strdup the split pieces when used, etc.
1266 2001-12-04 Bill Haneman <bill.haneman@sun.com>
1269 Change method 'compare' to return a 'difference set' rather than
1270 taking a StateSet as an out parameter (more Java-friendly).
1272 * idl/Accessible.idl:
1273 Added CORBA struct 'BoundingBox', to faciliate API changes below:
1275 * idl/Component.idl:
1277 Changed methods 'getExtents' and 'getImageExtents' in these
1278 interfaces to return a BoundingBox structure.
1279 (getPosition and getSize are redundant and possibly should be
1280 removed, rather than creating a corresponding Point struct.)
1282 * cspi/spi_component.c:
1283 Modify implementation of getExtents to reflect the above IDL
1288 Add (missing) AccessibleImage_getExtents () API.
1290 * docs/reference/cspi/at-spi-cspi-sections.txt:
1291 Added AccessibleImage_getImageExtents () to docs.
1293 2001-12-03 Bill Haneman <bill.haneman@sun.com>
1295 * idl/Component.idl:
1296 Added two methods, getLayer () and getMDIZOrder (), to reflect
1297 the new ATK methods atk_object_get_layer and
1298 atk_object_get_mdi_z_order. (Which arguably should be part of the
1299 AtkComponent API and AtkObject). Also added an enum,
1300 ComponentLayer, for the first method's return value.
1302 * libspi/component.c:
1303 Added implementations for these methods.
1305 * cspi/spi_component.c:
1307 Added cspi binding methods for above,
1308 AccessibleComponent_getLayer() and
1309 AccessibleComponent_getMDIZOrder().
1310 Added cspi enum 'AccessibleComponentLayer'.
1312 * docs/reference/cspi/at-spi-cspi-sections.txt:
1313 Added above methods to docs.
1317 Changed typedef for 'boolean' type (and all references to it) to
1318 SPIBoolean, to avoid keyword clashes with C++.
1321 Changed usages of 'boolean' to SPIBoolean.
1323 * test/keysynth-demo.c:
1324 Changed usages of 'boolean' to 'gboolean' (since this is a gnome
1325 app), except where SPIBoolean is required by the callbacks API.
1327 2001-12-02 Bill Haneman <bill.haneman@sun.com>
1329 * cspi/spi_registry.c:
1330 Removed obsolete X event loop for passive keygrabs (which now
1333 * registryd/registryd.c:
1334 Removed unnecessary call to gdk_init() [cruft]. This also allows
1335 removal of requisite gdk-2.0 from REGISTRYD_LIBS/CFLAGS in
1338 2001-11-28 Bill Haneman <bill.haneman@sun.com>
1340 * docs/reference/cspi:
1341 Included docs for SPI_freeString in generated documentation.
1344 Renamed spi_freeString to SPI_freeString, for consistency. Added
1345 documentation for this function.
1348 Renamed spi_freeString to SPI_freeString, for consistency.
1349 Removed obsolete method declaration string_from_corba_string.
1351 * test/keysynth-demo.c:
1352 Small tweak to comments.
1355 Stopped leaking the strings returned from CSPI.
1357 2001-11-28 Bill Haneman <bill.haneman@sun.com>
1359 Merged Michael's branch (see his ChangeLog entries below).
1361 * at-bridge/bridge.c: Explicitly hold a ref to the registry while
1362 bridge is alive, release on exit.
1364 * cspi/spi-listener-impl.c (cspi_event_listener_add_callback):
1365 Fix type check macro.
1368 Added AccessibleKeystrokeListener_unref() method to reduce leakage.
1371 Added is_gnome_app static, and method cspi_is_gnome_app(),
1372 so we can call the appropriate shutdown routine at exit in SPI_exit.
1374 * cspi/spi_main.c (cspi_object_ref):
1375 Duplicate the corba object passed in, since we're keeping it around.
1377 * cspi/SPI_exit.c, cspi_cleanup:
1378 Moved the releasing of the live refs to its own function, so we
1379 can put it in g_atexit (). Call the appropriate shutdown API
1380 depending on whethe calling client is a gnome app or not
1381 (bonobo_main_quit or CORBA_ORB_shutdown).
1383 * cspi/spi_registry.c (deregisterGlobalEventListenerAll):
1384 Unref the listener when this method is called, after
1385 deregistration. Updated the API docs to note this behavior.
1387 * libspi/accessible.c (impl_get_parent, impl_get_child_at_index):
1388 Bugfixes: Ref the bonobo object when returning a parent or child
1389 reference, or an AccessibleRelation. Generally made sure
1390 BonoboObject refcount is incremented whenever we return an
1393 * libspi/accessibleeventlistener.c (spi_event_listener_class_init):
1394 Fixed typo/bug in signal declaration.
1396 * libspi/accessibleeventlistener.h:
1399 * libspi/application.c (spi_application_new):
1400 Fixed leak in initialization.
1403 Remembered to increment bonobo-object refcount when returning
1404 children (applications) from desktop object.
1405 Added (empty) finalize method.
1407 * libspi/deviceeventcontroller.c:
1408 Hold a ref to listeners inside DEControllerKeyListeners.
1409 Added dec_key_listener_free() method. Use prepend instead of
1410 append in key_listener list. Fixed some refcount madness and
1411 leaks in the listener registration/deregistration - deregistration
1412 now calls dec_key_listener_free() on listeners, and on the
1413 temporarily constructed dec_key_listener() used to perform the search/match.
1415 * libspi/hypertext.c (spi_hypertest_finalize):
1416 Fixed 'double unref' of AtkObject held by parent SpiAccessibleText
1417 class. Also fixed spi_hypertext_interface_new() and
1418 SpiHypertextClass. Fixed a couple of paren-whitespace formatting bugs.
1420 * libspi/hypertext.h:
1421 Removed pointless and duplicate AtkObject pointer from
1424 * libspi/keystrokelistener.c:
1425 Fixed incorrect type of keystroke_listener_parent_class,
1426 renamed keystroke_listener_object_finalize to
1427 spi_keystroke_listener_object_finalize.
1428 Fixed typo in signal declaration
1429 (spi_keystroke_listener_class_init).
1431 * libspi/registry.c:
1432 Added funcsions spi_listener_struct_new() and
1433 spi_listener_struct_free() to help with memory management issues.
1434 We also now use these methods instead of gnew + poking stuff into
1435 the struct, and to decrement listener counts/free the listeners
1436 when deregistering them.
1437 Fix more refcount bugs in getDesktop() and
1438 getDeviceEventController().
1441 De-ref the desktop after enumerating the applications. Explicitly
1442 decrement the refcounts on the created listeners on exit (using
1443 _unref for keystroke listeners, and via the
1444 deregisterGlobalEventListenerAll command for other event
1447 2001-11-27 Michael Meeks <michael@ximian.com>
1449 * cspi/spi-listener.h: fixup enum.
1451 2001-11-27 Michael Meeks <michael@ximian.com>
1453 * cspi/spi-listener-impl.c (cspi_event_listener_new),
1454 (cspi_keystroke_listener_new): Use the cspi variants.
1456 2001-11-26 Michael Meeks <michael@ximian.com>
1458 * test/keysynth-demo.c: fix 2 compile warnings, missing
1461 * test/simple-at.c (report_focussed_accessible),
1462 (report_focus_event, report_button_press),
1463 (check_property_change, is_command_key),
1464 (report_ordinary_key_event, report_command_key_event): upd.
1466 * util/mag_client.h: include pre-requisites.
1468 * libspi/accessibleeventlistener.c
1469 (spi_event_listener_object_finalize): free any lingering
1472 * libspi/keystrokelistener.c
1473 (keystroke_listener_object_finalize): ditto.
1475 * cspi/spi-listener-impl.[ch]: Add to implement cspi style
1476 callbacks, with cspi types.
1478 * cspi/spi_event.c (createAccessibleEventListener): chain to
1479 (AccessibleEventListener_addCallback): here.
1480 (createAccessibleKeystrokeListener): chain to
1481 (AccessibleKeystrokeListener_addCallback): here.
1483 * libspi/keystrokelistener.c
1484 (spi_keystroke_listener_class_init): add signal.
1485 (impl_key_event): emit the event.
1486 (boolean_handled_accumulator): impl.
1487 (marshal_BOOLEAN__POINTER): add, gack.
1489 * libspi/accessibleeventlistener.c
1490 (spi_event_listener_class_init): add signal.
1491 (impl_accessible_event_notify_event): emit the signal &
1492 make the loop efficient.
1493 (spi_event_listener_add_callback): prepend the callback.
1495 * libspi/accessibleeventlistener.h: add an 'event' signal,
1496 decl type on callback.
1498 * libspi/keystrokelistener.h: ditto.
1500 * cspi/spi-listener.h: make methods typesafe and
1501 make them use the new event typedefs.
1503 * test/simple-at.c (report_focussed_accessible):
1504 include mag_client.h
1505 Use *(void *)text_interface not the other thing.
1507 * configure.in: add gtk to registryd bits - since we use
1510 * util/magnifier.c: include libbonobo.h
1512 2001-11-25 Bill Haneman <bill.haneman@sun.com>
1514 * test/keysynth-demo.c:
1515 Turned this into a simple scanning keyboard, to demonstrate the
1516 use of g_timeout_add () as a means of creating timers for
1517 scanning, and the use of GtkStyle for visually indicating when
1518 virtual keyboard elements are selected.
1520 keysynth-demo now listens to any keyboard keys with zero-valued
1521 keycodes (i.e. 'unused' keys) and interprets them as
1524 Reworked the shiftlatch code so that shift-down state isn't held
1525 for long periods (it's only synthesized immediately prior to
1526 the keysynth event it's modifying). Note that shiftlatch in this
1527 demo is a convenience, not intended to take the place of AccessX
1528 which is the better choice for getting 'sticky' modifier keys.
1530 * libspi/deviceeventcontroller.c:
1531 * at-bridge/bridge.c:
1532 * cspi/spi_registry.c:
1533 Removed some debug print stuff, and put other verbosity in #ifdef
1538 Implemented some more of the magnifier IDL for the simple
1539 magnifier: namely, getZoomRegionParams.
1540 Added mag_x and mag_y members to MagnifierData struct, aid of this
1542 Added GtkWindow::realize signal handler to magnifier, to keep it
1543 from receiving keyboard focus from the WM.
1545 2001-11-23 Mark McLoughlin <mark@skynet.ie>
1547 * cspi/spi-private.h: my guess at what michael forgot
1548 before he ran off to NZ :-)
1550 2001-11-23 Michael Meeks <michael@ximian.com>
1552 * cspi/spi_event.c (AccessibleEventListener_removeCallback):
1553 comment out non existant method invoke so we link.
1555 * cspi/spi-util.c (spi_warn_ev): conform to gtk+ style,
1556 use bonobo_exception_get_text for more friendly warnings.
1558 * cspi/spi.c (Obj_Add): move into spi_main & rename
1559 spi_object_add; kill spi.c
1561 * cspi/spi_registry.c
1562 (deregisterGlobalEventListener),
1563 (deregisterGlobalEventListenerAll),
1564 (registerGlobalEventListener): fix exception leaks.
1566 * cspi/spi_main.c (spi_exception): impl. helper, so we
1567 don't leak exceptions.
1569 * cspi/spi_selection.c
1570 (AccessibleSelection_deselectSelectedChild): return the
1573 * cspi/spi_main.c (spi_ev): impl; hack - gack.
1574 (spi_registry): ditto.
1575 (SPI_init): guard against double inits.
1577 * cspi/*.c: use spi_ev (), and spi_registry () where
1578 appropriate - a temporary hack until we have something
1579 better. Use spi_object_add
1581 2001-11-22 Michael Meeks <michael@ximian.com>
1583 * cspi/Makefile.am: re organise, install the headers.
1585 * cspi/*.h: add G_BEGIN/END_DECLS
1587 2001-22-11 Bill Haneman <bill.haneman@sun.com>
1590 Added non-preemptive keylistener for key events with no modifiers
1591 and shift-only modifier.
1593 * libspi/keystrokelistener.c:
1594 Removed some verbose diagnostics printout.
1596 * cspi/spi_registry.c:
1597 Fixed a bug that caused all key listeners to be registered as
1600 * libspi/deviceeventcontroller.c:
1601 Fixed bug that caused XGrabKey (preemptive key grab) to be called
1602 for non-preemptive key masks.
1605 2001-22-11 Bill Haneman <bill.haneman@sun.com>
1607 * docs/reference/idl/at-spi-idl-docs.sgml:
1608 * docs/reference/idl/at-spi-idl-sections.txt:
1609 * docs/reference/idl/at-spi-idl-overrides.txt:
1610 Added missing files.
1612 * docs/reference/Makefile.am:
1613 removed idl from SUBDIRS until we can figure a way to get gtk-doc
1614 to scan the IDL files :-(
1619 Added .cvsignore files.
1621 2001-21-11 Bill Haneman <bill.haneman@sun.com>
1623 * libspi/deviceeventcontroller.c:
1624 * libspi/keystrokelistener.c:
1626 * cspi/spi_registry.c:
1627 Added filters for KeySets, KeyEventSeq, and event types to key
1628 event dispatching, so listeners should only receive those events
1629 that they requested :-)
1631 2001-21-11 Bill Haneman <bill.haneman@sun.com>
1636 * docs/reference:Makefile.am:
1637 * docs/reference/cspi:
1638 * docs/reference/cspi:Makefile.am:
1639 * docs/reference/cspi:tmpl:
1640 * docs/reference/cspi:tmpl:*.sgml:
1641 * docs/reference/idl:
1642 * docs/reference/idl:Makefile.am:
1643 * docs/reference/idl:at-spi-idl-sections.txt:
1644 * docs/reference/idl:at-spi-idl-docs.sgml:
1645 * docs/reference/idl:tmpl:
1646 * docs/reference/idl:tmpl:*.sgml:
1648 Restructured docs directory to allow separate 'reference' docs
1649 section, and forked idl and cspi docs. Added the sgml template
1650 files to CVS. Added the first sections/structural sgml for the
1653 2001-11-21 Laszlo Peter <laca@ireland.sun.com>
1655 * configure.in, libspi/Makefile.am: find libXtst.
1657 2001-11-21 Michael Meeks <michael@ximian.com>
1659 * test/accessx-gui.c: s/spi_value/value/ - doh.
1661 * libspi/base.[ch]: add.
1663 2001-18-11 Bill Haneman <bill.haneman@sun.com>
1665 * idl/Accessible.idl:
1666 * idl/Application.idl:
1669 Started gtk-doc cleanup on IDL.
1671 * libspi/deviceeventcontroller.c:
1672 Added and connected non-preemptive key notification from the
1673 toolkits (in addition to the pre-emptive support from XServer
1674 which we had before, but which causes 'focus flashing'). Filters
1675 are presently limited to key modifiers and global/non-global,
1676 KeySets are presently ignored, as are KeyEvent masks.
1678 Fixed naughtiness in dec_key_listener_new(), we copy the CORBA
1679 structs into the persistant structure rather than just storing
1680 pointers to things that might not persist across servant
1683 The XGrabKey call now does async keygrabs, because synchronous
1684 ones were deadlocking with GDK_event code in a very nasty way.
1686 Added boolean to internal method notify_keylisteners, to indicate
1687 whether the event came from the 'toolkit source' or the 'global
1688 (XServer) source' - this is used in the notification process to
1689 determine which listeners to send the event to.
1691 deviceeventcontroller.c is now warning-free.
1693 * libspi/registry.c:
1694 Fixed regression in application de-registration.
1695 Also fixed some really brain-dead weirdness having to do with
1696 event dispatching - event structs are now duplicated before being
1697 re-marshalled in the dispatch to listeners. This also fixes a
1698 Solaris build problem.
1701 2001-20-11 Michael Meeks <michael@ximian.com>
1704 (impl_accessibility_registry_deregister_global_event_listener):
1707 * libspi/deviceeventcontroller.c
1708 (spi_device_event_controller_check_key_event): return
1709 FALSE on no virtual method.
1711 * libspi/*..h: make includes work on a correctly pathed install.
1713 * libspi/*.h: include glib/gmacros.h, use G_BEGIN / END _DECLS.
1715 * libspi/application.h: kill unused ( and whacked out )
1716 gboolean *spi_application_set_id (AtkObject *app, long id);
1718 2001-20-11 Michael Meeks <michael@ximian.com>
1720 * libspi/*.[ch]: further convert to bonobo's type func
1721 macros, remove redundnant casts etc.
1723 * libspi/text.c s/accessibility_text/spi_text/g,
1724 re-order to de-cruft.
1726 * libspi/hypertext.c: re-order to kill a huge slew
1727 of redundant forward decls.
1729 * libspi/relation.c: ditto.
1731 * libspi/image.c: ditto.
1733 * */.cvsignore: update
1735 2001-20-11 Michael Meeks <michael@ximian.com>
1737 * libspi/deviceeventcontroller.c
1738 (_controller_register_with_devices): use g_getenv,
1739 kill stdlib.h include.
1741 * libspi/keystrokelistener.c
1742 (spi_keystroke_listener_get_type): kill
1743 (spi_keystroke_listener_class_init),
1744 (spi_keystroke_listener_init): rename to this.
1746 * libspi/text.c (impl_getAttributes): fix warning / bug.
1748 * libspi/*.[ch]: more headers, includes and over commenting.
1750 2001-20-11 Michael Meeks <michael@ximian.com>
1752 * libspi/*.[ch]: fixup headers, includes and over commenting.
1754 * libspi/image.c (impl__get_imageDescription): const
1755 correctness warning fix. remove redundant casting.
1757 * libspi/table.c (impl_getRowDescription): ditto.
1758 (impl_getColumnDescription): ditto.
1760 * libspi/libspi.h: add.
1762 2001-19-11 Michael Meeks <michael@ximian.com>
1764 * libspi/editabletext.c (impl_setAttributes): fix warnings.
1766 * libspi/component.c (accessibility_component_get_type):
1767 rename to (spi_component_get_type): and macroify.
1768 (accessibility_component_init): rename to
1769 (spi_component_init): this
1770 (accessibility_component_class_init): rename to
1771 (spi_component_class_init): this
1773 * libspi/action.c (spi_action_get_type): kill, use the macro.
1775 * libspi/deviceeventcontroller.c (_compare_listeners): re-order
1778 * libspi/application.c (spi_application_object_event_listener),
1779 (impl_accessibility_application_register_object_event_listener):
1780 warning fixes / const understanding updates.
1782 * libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
1785 2001-18-11 Bill Haneman <bill.haneman@sun.com>
1787 * libspi/spi_accessible.c: Added docs and C bindings for
1788 AccessibleStateSet. (No implementations yet). Documentation
1789 coverage for C bindings now 100%. Made docs for event listeners
1794 boolean notifyListenersSync (in DeviceEventListener listener,
1795 in DeviceEvent event);
1797 oneway void notifyListenersAsync (in DeviceEventListener listener,
1798 in DeviceEvent event);
1800 Added DeviceEventListener and DeviceEvent structs (may deprecate
1801 KeyStroke and KeystrokeListener in favor of this generic
1802 event/listener framework for devices).
1804 * libspi/deviceeventcontroller.c:
1806 Changed some key listener code to take masks, etc., and paved the
1807 way for integration of toolkit/non-preemptive key events. Changed
1808 signatures of some internal methods.
1810 * at-bridge/bridge.c:
1811 Fixed regression connecting to interface signals, apparently
1812 caused by GTK+ changes.
1814 Added an internal bridge_state_listener to deal with
1815 property-change:accessible-state signals.
1817 Changed the key_listeners GList to store structs (including masks,
1818 etc.) instead of just CORBA_Objects (required for full
1819 implementation of key listener API).
1821 Connected the bridge to all currently supported Atk signals.
1822 Events now supported:
1823 object:property-change
1824 object:property-change:accessible-name
1825 object:property-change:accessible-state
1826 object:property-change:accessible-description
1827 object:property-change:accessible-parent
1828 object:property-change:accessible-value
1829 object:property-change:accessible-role
1830 object:property-change:accessible-table-caption
1831 object:property-change:accessible-table-column-description
1832 object:property-change:accessible-table-column-header
1833 object:property-change:accessible-table-row-description
1834 object:property-change:accessible-table-row-header
1835 object:property-change:accessible-table-summary
1836 object:children-changed
1837 object:visible-data-changed
1838 object:selection-changed
1839 object:text-selection-changed
1841 object:text-caret-moved
1843 object:row-reordered
1845 object:column-inserted
1846 object:column-reordered
1847 object:column-deleted
1848 object:model-changed
1850 2001-16-11 Bill Haneman <bill.haneman@sun.com>
1852 * libspi/hyperlink.c,h:
1853 Fixed some broken stuff in hyperlink.
1855 * libspi/relation.h:
1856 * libspi/relation.c:
1857 * cspi/spi_accessible.c:
1858 Initial implementations of AccessibleRelation methods, and docs.
1860 * libspi/accessible.c:
1861 Fixed a bug that caused SEGV if an accessible
1862 object's description is NULL, and a client
1863 requests it. An empty string is now returned.
1865 * cspi/spi_editabletext.c:
1866 * cspi/spi_hypertext.c:
1868 * cspi/spi_hyperlink.c:
1872 Doc coverage now 95%.
1874 2001-16-11 Bill Haneman <bill.haneman@sun.com>
1876 One last namespacing revision:
1877 * libspi/accessibleeventlistener.[ch]:
1878 Renamed SpiAccessibleEventListener to SpiEventListener,
1879 (no need for two namespaces ;-)
1881 And lots of documentation fixes:
1883 * docs/at-spi-docs.sgml:
1884 Fixed 'underscore vs. hyphen' bug that was preventing
1885 the gtk-doc API docs from being automatically generated.
1888 * cspi/spi-listener.h
1890 * cspi/spi_accessible.c
1892 * cspi/spi_application.c
1893 * cspi/spi_component.c
1894 * cspi/spi_editabletext.c
1896 * cspi/spi_hypertext.c
1898 * cspi/spi_registry.c
1899 * cspi/spi_selection.c
1903 * docs/at-spi-docs.sgml
1904 * docs/at-spi-sections.txt
1906 Added and fixed up gtk-doc documentation in cspi.
1908 Interfaces now (fully) documented (subject to revision and enhancement):
1910 Event Listener Support
1912 AccessibleApplication
1916 AccessibleEditableText
1923 AccessibleRelationSet
1928 2001-14-11 Bill Haneman <bill.haneman@sun.com>
1930 * at-bridge/bridge.c:
1931 Initial work for toolkit-level key snooper connection by bridge.
1936 New typedefs and fixes to support new namespacing, and cleaner
1937 separation of cspi bindings from libspi bonobo implementation.
1938 Removed inconsistent and extraneous Spi* namespace prefix that
1939 had crept into cspi headers.
1940 Lots of comment fixes that sed had missed.
1942 * cspi/spi-roletypes.h:
1943 * cspi/spi-statetypes.h:
1944 Added SPI_ prefix to Role and State typedefs, and changed all-caps ROLE type
1945 to AccessibleRoleType.
1947 * libspi/accessibleeventlistener.h:
1948 Fixed minor namespacing weirdness.
1950 * libspi/deviceeventcontroller.c:
1951 Reordered some internal API for device listeners.
1952 Changed the key registry final boolean to 'is_system_global'
1953 rather than 'is_synchronous', which is more descriptive of its
1955 Added spi_device_event_controller_new().
1956 Added SpiRegistry backpointer to SpiDeviceEventControllerClass.
1958 * libspi/keystrokelistener.[ch]:
1959 Namespaced KeystrokeListener to SpiKeystrokeListener.
1960 Changed uses of keymasks to use SPI_ prefix, and did other
1963 * libspi/keymasks.h:
1964 Namespaced keymask constants with SPI_ prefix.
1966 * libspi/registry.c:
1967 Some warning fixes, and knock-on fixes from namespace changes.
1970 Added rules for accessx-gui test program.
1972 * test/accessx-gui.c:
1973 Added a simple GUI program in GTK+-2.0 for the AccessX keyboard
1974 utility. It doesn't actually use at-spi, but it's still cool and
1977 * test/keysynth-demo.c:
1981 Fixes so that these test clients work properly with the namespaced
1982 libraries. (Incompletely tested for technical reasons, fixes may follow)
1985 2001-13-11 Michael Meeks <michael@ximian.com>
1987 * libspi/application.c
1988 (impl_accessibility_application_get_version),
1989 (impl_accessibility_application_get_toolkit_name):
1991 (impl_accessibility_application_set_id),
1992 (impl_accessibility_application_get_id): remove
1993 redundant casting code.
1995 * libspi/action.c (impl_getDescription): fix warnings.
1997 * libspi/accessible.c
1998 (impl_accessibility_accessible_get_parent),
1999 (impl_accessibility_accessible_get_child_at_index),
2000 (impl_accessibility_accessible_get_state),
2001 (impl_accessibility_accessible_get_relation_set):
2002 warning fixes & include action.h
2004 2001-13-11 Michael Meeks <michael@ximian.com>
2006 * *.[ch] fix bits I screwed up:
2008 s/([^ \tb(\*\&\?\",])spi_/\1/g;
2009 s/([^ \tb(\*\&\?\",])Spi/\1/g;
2011 2001-13-11 Michael Meeks <michael@ximian.com>
2013 * *.[ch] Namespace libspi into spi_ and Spi.
2015 2001-13-11 Michael Meeks <michael@ximian.com>
2017 * Makefile.am: dist & install at-spi-1.0.pc
2019 * libspi/Makefile.am: install into at-spi-1.0
2021 * idl/Makefile.am (idldir): install into at-spi-1.0
2023 * at-spi-1.0.pc.in: add.
2025 * configure.in: build it.
2027 2001-12-11 Bill Haneman <bill.haneman@sun.com>
2029 * test/keysynth-demo.c:
2030 Use a 'realize' signal-handler to set the WM properties for
2031 the virtual keyboard, rather than making it a "POPUP" type
2032 override-redirect window (thanks to anders carlsson for that
2035 2001-11-11 Bill Haneman <bill.haneman@sun.com>
2038 * test/keysynth-demo.c:
2039 Added new test of key synthesis, which creates a simple
2040 (mouse-operated) onscreen keyboard. It inserts key events into
2041 the currently-focused window, thus it does not grab keyboard focus
2044 * cspi/spi_registry.c:
2045 Added C binding for AT-SPI generateKeyEvent.
2047 * libspi/deviceeventcontroller.c:
2048 Added call to XFilterEvent so that key listener works with XIM (we
2049 hope). Added event_synth_type to generateKeyEvent, so that we can
2050 produce KEY_PRESS, KEY_RELEASE, KEY_PRESSRELEASE (pair), or
2051 synthesize a press/release pair for KeySyms.
2053 2001-11-09 Bill Haneman <bill.haneman@sun.com>
2055 * libspi/Makefile.am:
2056 * registryd/Makefile.am:
2057 (temporary) hack to include libXtst in libspi and registryd.
2058 (Needed for keystroke synthesis, see below).
2061 Improved API for registerKeystrokeListener, in accordance with
2062 discussions with Gnopernicus team and X server research.
2064 * libspi/registry.c:
2065 * libspi/deviceeventcontroller.c:
2066 * libspi/accessible.c:
2067 * libspi/keystrokelistener.c:
2068 Changes and fixes to support keylisteners for potentially
2069 consumed key events (that is, 'passive grabs').
2070 Added implementation for generateKeyEvent() [untested].
2073 Changes to registerKeystrokeListener() API, as above.
2074 Added deregisterGlobalEventListenerAll(), and
2075 deregisterKeystrokeListener(), which are needed for clean exit of
2077 Added typedefs for KeyListenerSyncType, KeyEventMask, and KeySet,
2078 and a macro ALL_KEYS which may be used in place of a KeySet pointer.
2080 * cspi/spi_registry.c:
2081 Added implementations of function prototypes mentioned above.
2083 * registryd/registryd.c:
2084 Added the key listener event source as a g_timeout(), to allow
2085 receipt of key events that are not caught by GDK (since GDK
2086 doesn't support passive keygrabs, this was necessary).
2089 Changed to attach a keylistener to 'Alt' keys, and
2090 respond to the following keycommands: Alt-M (toggle magnifier);
2091 Alt-F (toggle speech); Alt-Q (quit).
2092 Added an exit routine to deregister the listeners, and a key
2093 listener that prints some key info to the console when a key
2094 matches the listener mask (and is thus received by the listener).
2096 * util/idl/Magnifier.idl:
2097 Changes to magnifier API to support multiple zoom regions,
2098 non-uniform scaling in x and y, markDirty, and a host of other
2099 features that would be useful to magnification.
2102 * util/mag_client.c:
2103 * util/mag_client.h:
2104 * util/mag_control.c:
2106 Source code changes to support the above IDL changes.
2109 As above, and also changes to use a (slower) generic conversion
2110 path for colormap conversions, since the fast RGB conversions have been
2111 reported to fail for 16-bit displays.
2113 2001-10-26 Michael Meeks <michael@ximian.com>
2115 * libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
2117 <2001-10-26 Laszlo Peter <laca@ireland.sun.com>
2119 * at-bridge/Makefile.am: fix LDFLAGS.
2121 <2001-10-09 Bill Haneman <bill.haneman@sun.com>
2123 * at-bridge/bridge.c:
2124 Re-worked listeners for toolkit events, now we have signal
2125 and property listeners. Added a private method
2126 register_atk_event_listeners(), which registers with the
2127 various atk and gtk signals we need to monitor in order to emit
2129 Added emission hook for AtkObject:property-change events, to
2130 support the 'property listeners'.
2131 Fixed some alloc()s of Accessibility_Event structs to use CORBA
2134 * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
2135 which emit warnings and exit, respectively, if CORBA errors occur
2136 during remote calls, and we now use these methods to check most of
2137 our CORBA calls in the C bindings.
2139 * cspi/spi_accessible.c:
2140 Changed AccessibleSelection_refSelectedChild() to
2141 AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
2142 now increment refcounts.
2144 * cspi/spi_component.c:
2145 Fixed some long pointer casts (dangerous!) to pass pointers to
2146 CORBA_longs of the proper type to the CORBA stubs, and copy the
2147 data into the longs that were passed into the C bindings code.
2149 * at-bridge/bridge.c:
2151 * libspi/accessible.c:
2152 Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
2153 hyperlinks, AtkHyperlink is an object type.
2155 * libspi/application.c:
2156 Added various conversions to and from "generic" event types and
2157 atk-specific types; this is really part of the 'bridge'
2158 implementation but is valid for all AtkObject-based accessibility
2161 * libspi/editabletext.c:
2162 Fixed nasty bug wherein editable text's finalize method was
2163 unref'ing tha AtkObject reference that the text parent class was
2164 about to unref _again_. There was also a nasty inheritance bug
2165 that meant that the AccessibleEditableText class was corrupt.
2167 * libspi/selection.c:
2168 Provided implementations for some selection API that was broken.
2170 * idl/Application.idl:
2171 Added registerObjectEventListener () method.
2174 Fixed a number of return values that were Bonobo_Unknowns from
2175 bonobo_object_corba_objref(), which I
2176 forgot to dup before returning. Changed instances of
2177 bonobo_object_corba_objref (bonobo_object(o)) to
2178 BONOBO_OBJREF(o), for concision and clarity.
2180 <2001-10-13 Louise Miller <louise.miller@sun.com>
2182 * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
2183 idl/Event.idl, idl/Registry.idl
2184 Changed these files to include Bonobo_Unknown.idl instead
2187 <2001-09-10 Marc Mulcahy <marc.mulcahy@sun.com
2189 * libspi/component.c libspi/component.h:
2190 Fixed typo. Added assertions for object checks in
2191 AccessibleComponent code.
2193 <2001-10-09 Bill Haneman <bill.haneman@sun.com>
2195 * idl/Accessible.idl:
2196 Added 'isEqual (Accessible *object)'
2197 method for Accessible. (Not Yet Implemented).
2200 Changed signature of registerKeystrokeListener() to
2201 take a KeySet and KeyEventSeq so that specific keys and event
2202 types could be requested for monitoring, and added a flag
2203 is_synchronous so that either synchronous or asynchronous
2204 notification could be requested. (However this is not all
2205 implemented yet). This also meant adding two new typedefs,
2206 KeyEventSeq and KeySet.
2209 Added two new relations, RELATION_TOOLTIP_FOR and
2210 RELATION_LEAFNODE_OF.
2213 Added new state, STATE_HAS_TOOLTIP.
2215 * libspi/text.c, editabletext.c:
2216 Added new assertions to all casts of bonobo-objects from
2217 CORBA servants, to prevent Text API calls on non-text objects.
2218 Changed suspect casts of int-pointer types, so that we
2219 always send a valid CORBA_long pointer to the CORBA APIs that use
2220 in/out long parameters. We then have to copy from the CORBA_long
2221 into the regular long or int for return to the C bindings, or
2222 vice-versa when returning parameters from ATK calls to the bonobo wrappers.
2225 * libspi/deviceeventcontroller.c:
2226 Cleaned these sources up.
2228 Changed return type for getCharacterAtOffset to
2229 CORBA_unsigned_long, to allow for 32-bit characters.
2232 <2001-10-08 Bill Haneman <bill.haneman@sun.com>
2236 Fixed 'make dist' so that distro compiles...
2237 * libspi/keymasks.h:
2239 * cspi/spi-listener.c:
2240 KeystrokeListenerCB now returns a boolean.
2242 Added KeyEventType struct, and KeyStroke.
2243 Also added createKeystrokeListener(),
2244 KeystrokeListener_addCallback(),
2245 KeystrokeListener_removeCallback(), and added a keymask to
2246 registerKeystrokeListener().
2247 * cspi/spi_accessible.c:
2248 Changed numerous return types for interfaces from
2249 AccessibleComponent to Accessible<InterfaceName>; this was
2250 probably a cut-and-paste error.
2252 Implementations of new KeystrokeListener api (from spi.h,
2255 Changes to key modifier mapping.
2256 Created ControllerEventMask struct.
2257 Made DeviceEventController derive from Bonobo::Unknown.
2259 Removed TEXT_BOUNDARY_CURSOR_POS boundary type.
2260 * libspi/deviceeventcontroller.c:
2261 Added a number of new internal (private) methods.
2262 * libspi/editabletext.c:
2263 * libspi/editabletext.h:
2264 Fixed a number of bugs related to the fact that
2265 editabletext inherits from text. Fixed the EditableText struct,
2266 the init() call, and use correct casts when calling Text methods
2267 from an EditableText object. Removed (duplicate) atko from the
2268 EditableText structure, we use the one in the parent Text
2269 structure via the casts mentioned above.
2270 * libspi/keystrokelistener.[ch]:
2271 * libspi/registry.c:
2272 Changes in support of keyboard handling (above).
2274 Keyboard handling, though partly functional, is still not
2275 recommended for at-spi client use as there is considerable
2276 work yet to be done.
2279 Changed some places where pointers to various int types
2280 are cast to be pointers to CORBA_long types and vice-versa:
2281 pointer casting is not safe so we pass pointers of the correct
2282 types and then cast the result before putting it into the target
2285 * libspi/text.h: minor typos corrected.
2287 We now speak not only the name of a Text element, but the
2288 first sentence of its content, when it receives focus.
2289 I also changed the text compression to 75% from 50%.
2290 * util/Accessibility_Util.server.in:
2291 Changed the default magnifier type to be a 3x vertical
2292 splitscreen magnifier (was previously a 2x horizontal one).
2294 <2001-10-03 Bill Haneman <bill.haneman@sun.com>
2296 * libspi/keystrokelistener.h:
2297 * libspi/keystrokelistener.c:
2298 Initial functional implementations of KeystrokeListener.
2301 <2001-10-05 Marc Mulcahy <marc.mulcahy@sun.com>
2303 Fixed string handling for NULL strings in libspi.
2304 Added spi_freeString to free strings returned by C bindings.
2306 <2001-09-30 Bill Haneman <bill.haneman@sun.com>
2308 * libspi/keystrokelistener.h:
2309 * libspi/keystrokelistener.c:
2310 Began (no-op) implementations of KeystrokeListener
2312 * libspi/deviceeventcontroller.c:
2313 * libspi/deviceeventcontroller.h:
2314 Began creating implementations of DeviceEventController,
2315 to handle keystroke and mouse event listening and
2317 * libspi/accessible.c:
2318 Stubbed-in the implementations for
2319 Accessibility_Accessible_getState and
2320 Accessibility_Accessible_getRelationSet.
2321 * libspi/registry.c:
2322 Improved de-registration process and fixed some bugs,
2323 deregistration now works correctly.
2325 Added initialization of applications list (to NULL).
2327 Reduced speech compression from 0.5 to 0.7, for demo.
2328 Changed call to gdk_window_set_decorations()
2329 to gtk_window_set_decorated().
2330 * at-bridge/bridge.c:
2331 Bridge now deregisters when app exits, via
2332 registration of a cleanup function
2333 with the g_atexit() call.
2334 Required making 'app' static, renamed 'this_app'.
2335 Fixed broken use of bonobo_init, passing argv wrongly.
2337 <2001-09-27 Bill Haneman <bill.haneman@sun.com>
2341 Created a new directory for
2342 accessibility-related utilities, primarily for
2343 testing and demo purposes, but with possible
2350 Onscreen magnifier utility that
2351 is implemented as a bonobo service.
2353 * util/mag_client.c:
2354 * util/mag_client.h:
2355 Client-side support (simple C bindings)
2356 for Magnification service
2358 * util/mag_control.c:
2359 Client program example for
2360 Magnification service
2362 * util/Accessibility_Magnifier.server.in:
2363 Bonobo-activation file for the
2364 Magnification service.
2367 * util/idl/Magnifier.idl:
2368 IDL defining the bonobo Magnification
2372 Modifications to use the bonobo-activated magnifier
2373 above, in place of trying to connect to an existing
2374 magnifier that uses socket-listening IPC.
2376 If env variable MAGNIFIER is set, a magnifier service
2377 will be started if one does not exist.
2379 <2001-09-25 Bill Haneman <bill.haneman@sun.com>
2380 * at-bridge/bridge.c:
2381 applied patch from Marc to build and run
2382 against new glib and gtk+ (seemed like a change
2383 to bonobo_init signature was made ?)
2385 made festival-server support turned off by default.
2386 Added support for a simple magnifier (off by default)
2387 which will be added to a 'util' directory later.
2388 * at-bridge/Makefile.am:
2389 Changed "application.h" header from a 'source'
2390 to a 'dependency' of libat-bridge.
2392 <2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
2400 Added interface implementation c files to list of
2401 includes so they are included in libcspi.
2404 Changed prototype of AccessibleAction_doAction to return a
2406 Changed prototype of AccessibleTable_getCaption to
2407 return an Accessible.
2408 Changed prototype of AccessibleTable_getSelectedRows
2409 and AccessibleTable_getSelectedColumns to
2410 return a long (returns the number of selected rows
2411 or columns respectively).
2412 Changed name of AccessibleText_refRunAttributes to
2413 AccessibleText_getAttributes.
2414 Changed prototype of AccessibleText_getCharacterExtents to
2415 return a void rather than a boolean.
2416 Added support for a AccessibleCoordType parameter
2417 specifying what type of coordinates are desired.
2418 Added an AccessibleCordType parameter to
2419 AccessibleText_getPointAtOffset.
2421 * cspi/spi_accessible.c:
2422 Added code to return the outstanding interfaces from
2423 Accessible_queryInterface.
2425 * cspi/spi_action.c:
2427 Corrected call to getNActions to call the c binding
2430 * cspi/spi_editabletext.c:
2432 Changed name from setRunAttributes to setAttributes.
2434 * cspi/spi_hyperlink.c:
2436 Changed call to getNAnchors to correctly call the c
2437 binding for an attribute.
2439 * cspi/spi_hypertext.c:
2441 Changed getImageDescription to correctly call the
2442 binding for an attribute.
2444 * cspi/spi_selection.c:
2445 Changed getNSelectedChildren to correctly call the c
2446 binding for the attribute.
2447 Changed refSelectedChild to getSelectedChild.
2451 Changed getCaption to return an Accessible.
2452 Fixed calls which retrieve attributes.
2453 Changed refAt to getAccessibleAt.
2454 Changed getNSelectedRows and getNSelectedColumns to
2458 Changed getCharacterExtents and getPointAtOffset to accept an
2459 AccessibleCoordType.
2461 Changed calls which retrieve attributes.
2462 Changed refRunAttributes to getAttributes.
2467 * idl/Hyperlink.idl:
2468 Changed n_anchors attribute to nAnchors to keep naming
2469 convention consistent.
2472 Made Table inherit from Bonobo::Unknown.
2473 Added nSelectedColumns and nSelectedRows attributes.
2476 Made Value inherit from Bonobo::Unknown.
2478 * libspi/hyperlink.c:
2479 Change for nAnchors attributte name change.
2481 <2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
2489 Added interface implementation c files to list of
2490 includes so they are included in libcspi.
2493 Changed prototype of AccessibleAction_doAction to return a
2495 Changed prototype of AccessibleTable_getCaption to
2496 return an Accessible.
2497 Changed prototype of AccessibleTable_getSelectedRows
2498 and AccessibleTable_getSelectedColumns to
2499 return a long (returns the number of selected rows
2500 or columns respectively).
2501 Changed name of AccessibleText_refRunAttributes to
2502 AccessibleText_getAttributes.
2503 Changed prototype of AccessibleText_getCharacterExtents to
2504 return a void rather than a boolean.
2505 Added support for a AccessibleCoordType parameter
2506 specifying what type of coordinates are desired.
2507 Added an AccessibleCordType parameter to
2508 AccessibleText_getPointAtOffset.
2510 * cspi/spi_accessible.c:
2511 Added code to return the outstanding interfaces from
2512 Accessible_queryInterface.
2514 * cspi/spi_action.c:
2516 Corrected call to getNActions to call the c binding
2519 * cspi/spi_editabletext.c:
2521 Changed name from setRunAttributes to setAttributes.
2523 * cspi/spi_hyperlink.c:
2525 Changed call to getNAnchors to correctly call the c
2526 binding for an attribute.
2528 * cspi/spi_hypertext.c:
2530 Changed getImageDescription to correctly call the
2531 binding for an attribute.
2533 * cspi/spi_selection.c:
2534 Changed getNSelectedChildren to correctly call the c
2535 binding for the attribute.
2536 Changed refSelectedChild to getSelectedChild.
2540 Changed getCaption to return an Accessible.
2541 Fixed calls which retrieve attributes.
2542 Changed refAt to getAccessibleAt.
2543 Changed getNSelectedRows and getNSelectedColumns to
2547 Changed getCharacterExtents and getPointAtOffset to accept an
2548 AccessibleCoordType.
2550 Changed calls which retrieve attributes.
2551 Changed refRunAttributes to getAttributes.
2556 * idl/Hyperlink.idl:
2557 Changed n_anchors attribute to nAnchors to keep naming
2558 convention consistent.
2561 Made Table inherit from Bonobo::Unknown.
2562 Added nSelectedColumns and nSelectedRows attributes.
2565 Made Value inherit from Bonobo::Unknown.
2567 * libspi/hyperlink.c:
2568 Change for nAnchors attributte name change.
2571 <2001-09-05 Marc Mulcahy <marc.mulcahy@sun.com>
2573 implementations-- made server implementations own AtkObject pointers
2574 rather than their respective AtkInterrface pointers to fix
2575 refcounting. AtkHyperlink is still broken.
2577 <2001-09-04 Bill Haneman <bill.haneman@sun.com>
2578 * cspi/spi_accessible.c:
2579 Added method Accessible_Role_getName(),
2580 and requisite string array (role_names).
2581 Added conversion string_from_corba_strin() call
2582 to Accessible_getName and _getDescription.
2583 * libspi/accessible.c:
2584 Added implementation for Accessible_getRole()
2586 Added festival support, used if environment variable
2589 2001-09-04 Bill Haneman <bill.haneman@sun.com>
2591 * at-bridge/bridge.c:
2592 Now allocate Accessibility_Event using
2593 Accessibility_Event__alloc() instead of g_new0().
2594 * libspi/accessibleeventlistener.c:
2595 Initialize AccessibleEventListener->callbacks to NULL.
2596 Fixed accessible__event_listener_init() param, changed to
2597 "AccessibleEventListener *" type.
2598 Changed a bonobo_object_release_unref() call to
2599 Accessibility_Accessible_unref().
2600 * libspi/listener.c:
2601 Changed Bonobo_Unknown_unref to (equivalent)
2602 Accessibility_Accessible_unref.
2603 * libspi/registry.c:
2604 Changed bonobo_object_release_unref to
2605 Accessibility_Accessible_unref.
2607 <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
2610 spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
2611 spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
2612 spi-util.c spi-util.h
2613 Implementations for C bindings to remaining accessibility
2616 <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
2619 changed return value of Action from void to boolean to
2620 bring in line with ATK.
2623 Changed getText funcions to return "out" start and end offsets.
2624 Changed getAttributes to take and offset and return the start
2625 and end offset of the attribute run.
2626 Changed getOffsetAtPoint and getCharacterExtents to take an
2627 enum describing whether coordinates are window or screen.
2630 libspi/action.c libspi/action.h libspi/editabletext.c
2631 libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
2632 libspi/hypertext.c libspi/hypertext.h libspi/image.c
2633 libspi/image.h libspi/selection.c libspi/selection.h
2634 libspi/table.c libspi/table.h libspi/text.c libspi/text.h
2635 libspi/value.c libspi/value.h
2636 Added server implementations for outstanding ATK interfaces
2637 not yet implemented.
2639 2001-09-04 Bill Haneman <bill.haneman@sun.com>
2642 Added (missing) getName() method.
2643 Made nActions an attribute.
2644 * idl/EditableText.idl:
2645 Changed order of params in setAttributes.
2646 * idl/Hyperlink.idl:
2647 Removed getAnchor, added getURI.
2649 Changed attributes to methods, for efficiency
2650 (so that getting extents can be done in one call)
2651 * idl/Selection.idl:
2652 Changed nSelectedChildren to attribute, and re-indented.
2653 * idl/Table.idl: changed nrows, ncolumns, caption, summary
2655 * idl/Text.idl: reformatted to match our coding style.
2656 (temporarily?) removed getRowColumnAtOffset().
2657 Changed text selection API to support multi-select and
2658 non-contiguous selections, as in ATK.
2659 * idl/Value.idl: changed some methods to attributes.
2661 2001-08-24 Mark McLoughlin <mark@skynet.ie>
2663 * libspi/listener.c(impl_notify_event):
2664 BonoboUnkown_unref the source instead
2665 of bonobo_object_release_unref - the ORB
2666 handles the releasing.
2668 * configure.in: require ORBit-2.3.94 for
2671 2001-08-21 Bill Haneman <bill.haneman@sun.com>
2673 Tagged CVS repository 'EA_1_0'.
2674 * README.EARLY_ACCESS:
2675 Alphabetized acknowledgements list, and
2677 Listed some known dependencies of at-spi.
2679 2001-08-20 Bill Haneman <bill.haneman@sun.com>
2681 * docs/at-spi-docs.sgml:
2682 * docs/at-spi-sections.txt:
2683 * docs/at-spi-overrides.txt: (Added zero-length file)
2684 Documentation improvements - gtk-doc should build
2685 docs for all implemented C bindings now.
2688 * cspi/spi.c: (New file)
2689 * cspi/spi_event.c: (New file)
2690 * cspi/spi_registry.c: (New file)
2691 * cspi/spi_accessible.c: (New file)
2692 * cspi/spi_application.c: (New file)
2693 * cspi/spi_component.c: (New file)
2694 Split spi_main.c into six parts, and included them from
2695 "spi.c". This is a bit of a hack, probably temporary,
2696 but required by gtk-doc, apparently.
2698 2001-08-20 Bill Haneman <bill.haneman@sun.com>
2701 * docs/at-spi-docs.sgml:
2702 * docs/at-spi-sections.txt:
2704 Initial checkins/modifications for gtk-doc generation.
2707 Added (missing) interface query methods to Accessible's C binding.
2709 Added GenericInterface type definition.
2711 Added query for AccessibleComponent interface to focus event handler.
2712 Added printout of bounding box for focussed component.
2713 * libspi/component.c:
2714 Added partial implementation for AccessibleComponent to C binding.
2715 * idl/Application.idl:
2716 * libspi/registry.c:
2717 * libspi/listener.c:
2718 * libspi/application.c:
2719 * libspi/application.h:
2720 Changed "ID" attribute type from string to long.
2722 2001-08-19 Bill Haneman <bill.haneman@sun.com>
2726 Made method naming consistent: methods taking object args
2727 start with uppercase, other methods (except those using
2728 acronyms) start with lowercase. Underscores delimit between
2729 object names and method names:
2730 SPI_init() - uppercase since it starts with an acronym.
2731 getDesktopCount () - lowercase start since no object param0.
2732 Accessible_getName() - uppercase object type name, studlyCaps method
2736 Added gtk-doc documentation for all currently implemented
2737 methods in the C bindings API.
2739 2001-08-18 Bill Haneman <bill.haneman@sun.com>
2741 * Makefile.am : changed build order to build test last.
2744 Changed "createEventListener" to "CreateEventListener".
2745 * libspi/accessibleeventlistener.c :
2746 Bugfix for addition of callbacks.
2747 * test/Makefile.am :
2748 * test/simple-at.c :
2749 Added new test that uses the C bindings API.
2751 * libspi/listener.c :
2752 * libspi/registry.c :
2753 * libspi/accessibleeventlistener.c :
2754 * at-bridge/bridge.c :
2755 Renamed member "target" of Accessibility_Event to "source",
2756 which is more descriptive.
2759 2001-08-18 Bill Haneman <bill.haneman@sun.com>
2763 * cspi/Makefile.am :
2764 Added makefile support for at-spi/cspi directory.
2767 * cspi/spi-listener.h : (NEW FILE)
2768 Added support for/use of spi-listener.h.
2770 C bindings now build successfully, with no warnings.
2771 * libspi/accessibleeventlistener.h : (NEW FILE)
2772 * libspi/accessibleeventlistener.c : (NEW FILE)
2773 * libspi/Makefile.am :
2774 Added new object type "AccessibleEventListener"
2775 which inherits from Listener, and allows attachment
2776 of in-process callbacks (so that a client with a listening
2777 object instance can add functionality to the local
2778 implementation, dynamically).
2780 2001-08-18 Bill Haneman <bill.haneman@sun.com>
2782 * libspi/accessible.c:
2783 Add implementation for get_index_in_parent().
2785 Added #include of "spi-roletypes.h", and
2786 added enumerated type AccessibleCoordType.
2787 Added definition for KeystrokeListener (function type).
2790 * cspi/spi-statetypes.h :
2791 * cspi/spi-roletypes.h :
2793 Added these headers, used by spi.h.
2795 Added code (NOTE: not yet built by make).
2797 2001-08-18 Mark McLoughlin <mark@skynet.ie>
2799 * libspi/Makefile.am: generate imodule
2800 at the same time as other idl compiler
2803 2001-08-17 Bill Haneman <bill.haneman@sun.com>
2804 * libspi/registry.c :
2805 * libspi/application.c :
2806 * idl/Application.idl :
2807 Made registration with toolkit an application method,
2808 which is required since each app has its own toolkit static
2809 environment. Thus the bridge must register for
2810 notification of toolkit events from each application in turn.
2811 Toolkit notifications are now successfully registered for, and
2812 sent to the listening at client.
2814 Changed toolkit event string to use hyphens rather than underscores.
2815 * libspi/listener.c :
2816 listner now gives more info in debug mode - it reports the
2817 name of the event received, as well as the name of the source.
2820 2001-08-16 Bill Haneman <bill.haneman@sun.com>
2822 * libspi/registry.c :
2823 added more implementation for toolkit events.
2824 Fixed bug such that toolkit event registrations
2825 (via atk) use the whole event name string, not
2827 Removed a useless call to an ORBit_ method.
2828 * at-bridge/bridge.c :
2829 Removed unused local sbuf[] variable.
2831 We now register for Gtk:GtkWidget:button_press_event
2832 events as well as "focus:" events.
2834 Add some more API from Registry.idl that was missing,
2835 for keystroke listening, keystroke and mouse event
2836 synthesis, and enumeration of accessible desktops.
2838 2001-08-16 Michael Meeks <michael@ximian.com>
2840 * configure.in: use AM_GLIB_GNU_GETTEXT.
2842 * Makefile.am (SUBDIRS): kill intl.
2844 2001-08-15 Michael Meeks <michael@ximian.com>
2846 * registryd/Makefile.am: s/oaf/server/ relocate info file.
2848 * configure.in: upd.
2850 * configure.in: depend on a recent bonobo-activation that
2851 will find our server files ...
2853 2001-08-16 Bill Haneman <bill.haneman@sun.com>
2855 * libspi/accessible.c : accessible_new() :
2856 Now we add the Component interface via bonobo_object_add_interface,
2857 if the contained AtkObject implements AtkComponent.
2858 * libspi/accessible.h : now include "component.h"
2859 * libspi/component.h :
2860 * libspi/component.c : added files - implementation of
2861 bonobo wrapper object for Accessibility/Component
2862 * libspi/listener.c :
2863 Added test code to check for Accessibility/Component:1.0
2864 interface and report whether it is implemented by the
2866 * libspi/registry.c :
2867 Now we check for not only the hash of the whole event
2868 string before relaying the event, we also check the
2869 "minor" event string (without the detail string).
2870 This allows event listeners to be registered against
2871 all events of a certain major+minor type, or just
2872 against a specific major+minor+detail type.
2873 * libspi/accessible.c :
2874 Added implementations for Accessible:get_parent(),
2875 Accessible:getChildCount(), and Accessible:getChildAtIndex().
2876 * libspi/registry.c :
2877 * libspi/listener.c :
2878 Replaced calls to Accessibility_Accessible_ref() and
2879 Accessibility_Accessible_unref() with
2880 calls to bonobo_object_dup_ref() and
2881 bonobo_object_release_unref(), so that the CORBA object
2882 is dup-ed and released when relayed, as well as the bonobo object.
2884 2001-08-15 Mark McLoughlin <mark@skynet.ie>
2886 * libspi/Makefile.am,
2887 registryd/Makefile.am,
2888 at-bridge/Makefile.am.
2889 test/Makefile.am, configure.in:
2890 reverse previous changes.
2892 * /idl/Image.idl: fix typo.
2894 * test/Makefile.am: put DEBUG_FLAGS
2897 2001-08-15 Mark McLoughlin <mark@skynet.ie>
2899 * test/app.c: use argv[0] instead of
2902 2001-08-15 Mark McLoughlin <mark@skynet.ie>
2904 * libspi/Makefile.am,
2905 registryd/Makefile.am,
2906 at-bridge/Makefile.am.
2907 test/Makefile.am, configure.in:
2908 cleanup, replace individual LIBS/CFLAGS with
2909 AT_COMMON_{LIBS|CFLAGS}.
2913 2001-08-15 Mark McLoughlin <mark@skynet.ie>
2915 * configure.in, libspi/Makefile.am:
2916 Change IDL path checking for bonobo-activation
2919 2001-08-15 Bill Haneman <bill.haneman@sun.com>
2921 * registryd/registry.c : separated event listeners to use
2922 3 separate lists (focus, window, toolkit). Began testing
2923 event names against hashes before relaying events.
2924 * test/at.c : now register for events of type "focus:"
2925 * test/app.c : now generate events of type "focus:"
2926 * at-bridge/bridge.c : register with ATK for focus events,
2927 and we now relay those focus events to any "focus:" listeners.
2928 This now works with the bridge as a GTK_MODULE when running test/at.
2929 * libspi/registry.c :
2930 * libspi/listener.c :
2931 now we ref event sources before propagating, and unref on receipt.
2932 * libspi/registry.c :
2933 some changes to internal structs, to support event typestring hashes.
2934 * text/app.c : changed the way the appname is generated.
2935 * cspi : added directory that will hold the C bindings library for
2936 non-CORBA/bonobo-savvy clients.
2937 * cspi/spi.h : header file that contains the function prototypes for the C binding.
2938 * idl/Component.idl : added in parameter to indicate coord system for
2939 geometry-related calls.
2940 * idl/Hyperlink.idl : added readonly n_links attribute
2941 * idl/Image.idl : changed methods to attributes.
2943 2001-08-15 Mark McLoughlin <mark@skynet.ie>
2945 * at-bridge/Makefile.am: link against
2946 ../libspi/libspi.la instead of -lspi.
2948 * at-spi/test/app.c: include
2949 bonobo-activation.h. Use a default appname
2950 if one is not provided.
2952 2001-08-14 Bill Haneman <bill.haneman@sun.com>
2954 * idl/Registry.idl : temporarily changed register_Application
2955 to oneway, to work around issue with initial registration
2957 * idl/Application.idl : changed attribute "id" from readonly
2958 to read-write, since it needs to be assigned by Registry.
2959 * registryd/registryd.c : added call to set application id
2961 * registryd/registry.c : changed de-registration procedure to
2962 use CORBA_Object_hash() to find matching object ref in application
2963 lists and listener lists.
2964 * registryd/registry.c : defined EventTypeStruct and EventTypeMajor,
2965 began distinguishing between event types (work in progress).
2967 2001-08-13 Bill Haneman <bill.haneman@sun.com>
2970 * libspi/application.c:
2971 Added implementations for get/set id, get_toolkitName,
2973 * registryd/registryd.c :
2977 Converted from use of OAF to bonobo-activation.
2978 * libspi/desktop.h :
2979 * libspi/desktop.c :
2981 Removed references to atksimpleobject, since base atkobject
2982 implementation now provides functionality we need.
2983 * libspi/atksimpleobject.c :
2984 * libspi/atksimpleobject.h :
2989 * at-bridge/Makefile.am
2990 * at-bridge/bridge.c
2993 Added directory "bridge" and contents, and added dependencies
2994 in Makefile.am/configure.in.
2995 Initial checkin of "at-bridge".
2996 This code is a GTK_MODULE which automatically registers
2997 GTK+ apps with the accessibility registry, using an object
2998 reference to the root ATK object.
3000 2001-08-10 Mark McLoughlin <mark@skynet.ie>
3002 * po/Makefile.in.in: Remove. Again. If this
3003 doesn't get autogenerated - you need to update
3006 2001-08-07 Mark McLoughlin <mark@skynet.ie>
3008 * po/Makefile.in.in: Add. Again.
3010 2001-07-31 Bill Haneman <bill.haneman@sun.com>
3012 * libspi/accessible.c : added support for 'description' property.
3013 * libspi/accessible.c
3015 * libspi/registry.c : changed to use bonobo_object instead of bonobo_x_object
3016 (since the two are now equivalent in libbonobo)
3024 * idl/Value.idl : changed these 'secondary' interfaces to inherit from
3025 Bonobo::Unknown as does Accessibility::Accessible.
3026 * idl/StreamableContent.idl : as above, and replaced internal InputStream
3027 interface with Bonobo::Stream, since it was redundant with it.
3028 (The Stream returned by a StreamableContext object is expected to
3029 implement only a subset of Bonobo::Stream)
3031 2001-07-28 Anders Carlsson <andersca@gnome.org>
3033 * libspi/accessible.c (accessible_object_finalize): Change
3034 g_free to g_object_unref since the AtkObject is a GObject.
3036 2001-07-30 Bill Haneman <bill.haneman@sun.com>
3038 * idl/Accessibility.idl: add new IDL files
3041 * idl/Action.idl: Definitions of actionable UI object
3042 * idl/Component.idl: Definitions of UI component geometry, etc.
3043 * idl/Hyperlink.idl: Defs of hyperlink behavior
3044 * idl/Image.idl: Def of accessible image
3045 * idl/Selection.idl: Definition of UI object with selectable children
3046 * idl/StreamableContent.idl: Definition of UI object with streamable backing data
3047 * idl/Table.idl: Definitions for access to table ('spreadsheet') elements
3048 * idl/Text.idl: Interface defs for UI elements with complex textual content
3049 * idl/Value.idl: Definition of UI element that is a value controller or display
3051 2001-07-27 Michael Meeks <michael@ximian.com>
3053 * po/Makefile.in.in: remove autogenerated file from CVS.
3055 * libspi/Makefile.am: Radicaly re-vamp to simplify & add ORBit2
3058 * idl/Registry.idl: include guard.
3060 * idl/Accessibility.idl: Add, and include all the other IDL
3063 * idl/*.idl: remove mass of pragmas etc.
3065 2001-07-26 Michael Meeks <michael@ximian.com>
3067 * registryd/Makefile.am (registryd_SOURCES): remove
3070 2001-07-27 Mark McLoughlin <mark@skynet.ie>
3072 * libspi/.cvsignore, registryd/.cvsignore,
3073 test/.cvsignore: updated.
3075 * po/Makefile.in.in: gettext update.
3077 2001-07-25 Bill Haneman <bill.haneman@sun.com>
3079 * initial CVS checkin
3081 2001-06-29 Michael Meeks <michael@ximian.com>
3083 * configure.in: add AM_CONFIG_HEADER to gen config.h