2008-05-16 Mark Doffman <mark.doffman@codethink.co.uk>
authorMark Doffman <mdoff@silver-wind.(none)>
Fri, 16 May 2008 15:11:40 +0000 (16:11 +0100)
committerMark Doffman <mdoff@silver-wind.(none)>
Fri, 16 May 2008 15:16:19 +0000 (16:16 +0100)
Re-organize the directories. The main purpose of
this change is to remove CORBA code and references
that are no longer used.

* atk-adaptor/
Code here used to live in libspi and atk-bridge.

* droute/
The droute module has been moved from libspi to
its own directory.

* spi-common
Code and definitions common to registryd and
the atk-adaptor. Mostly moved from libspi/dbus.c
and accessible.h.

* cspi/
Removed for the moment. Will have to be
mostly rewritten for D-Bus.

269 files changed:
AUTHORS
ChangeLog [deleted file]
HACKING [deleted file]
MAINTAINERS
Makefile.am
NEWS [deleted file]
README
TODO [deleted file]
acconfig.h [deleted file]
atk-adaptor/Makefile.am [new file with mode: 0644]
atk-adaptor/accessible.c [moved from libspi/accessible.c with 100% similarity]
atk-adaptor/accessible.h [moved from libspi/accessible.h with 55% similarity]
atk-adaptor/action.c [moved from libspi/action.c with 100% similarity]
atk-adaptor/action.h [moved from libspi/action.h with 100% similarity]
atk-adaptor/application.c [moved from libspi/application.c with 100% similarity]
atk-adaptor/application.h [moved from libspi/application.h with 100% similarity]
atk-adaptor/atk-dbus.c [new file with mode: 0644]
atk-adaptor/base.c [moved from libspi/base.c with 100% similarity]
atk-adaptor/base.h [moved from libspi/base.h with 100% similarity]
atk-adaptor/bitarray.h [moved from libspi/bitarray.h with 100% similarity]
atk-adaptor/bridge.c [moved from atk-bridge/bridge.c with 100% similarity]
atk-adaptor/collection.c [moved from libspi/collection.c with 100% similarity]
atk-adaptor/collection.h [moved from libspi/collection.h with 100% similarity]
atk-adaptor/component.c [moved from libspi/component.c with 100% similarity]
atk-adaptor/component.h [moved from libspi/component.h with 100% similarity]
atk-adaptor/devicelistener.c [moved from libspi/devicelistener.c with 100% similarity]
atk-adaptor/devicelistener.h [moved from libspi/devicelistener.h with 100% similarity]
atk-adaptor/document.c [moved from libspi/document.c with 100% similarity]
atk-adaptor/document.h [moved from libspi/document.h with 100% similarity]
atk-adaptor/editabletext.c [moved from libspi/editabletext.c with 100% similarity]
atk-adaptor/editabletext.h [moved from libspi/editabletext.h with 100% similarity]
atk-adaptor/eventlistener.c [moved from libspi/eventlistener.c with 100% similarity]
atk-adaptor/eventlistener.h [moved from libspi/eventlistener.h with 100% similarity]
atk-adaptor/hyperlink.c [moved from libspi/hyperlink.c with 100% similarity]
atk-adaptor/hyperlink.h [moved from libspi/hyperlink.h with 100% similarity]
atk-adaptor/hypertext.c [moved from libspi/hypertext.c with 100% similarity]
atk-adaptor/hypertext.h [moved from libspi/hypertext.h with 100% similarity]
atk-adaptor/image.c [moved from libspi/image.c with 100% similarity]
atk-adaptor/image.h [moved from libspi/image.h with 100% similarity]
atk-adaptor/introspectable.c [moved from libspi/introspectable.c with 98% similarity]
atk-adaptor/keymasks.h [moved from libspi/keymasks.h with 100% similarity]
atk-adaptor/keystrokelistener.h [moved from libspi/keystrokelistener.h with 100% similarity]
atk-adaptor/libspi.h [moved from libspi/libspi.h with 100% similarity]
atk-adaptor/listener.c [moved from libspi/listener.c with 100% similarity]
atk-adaptor/listener.h [moved from libspi/listener.h with 100% similarity]
atk-adaptor/matchrule.c [moved from libspi/matchrule.c with 100% similarity]
atk-adaptor/matchrule.h [moved from libspi/matchrule.h with 100% similarity]
atk-adaptor/relation.c [moved from libspi/relation.c with 100% similarity]
atk-adaptor/relation.h [moved from libspi/relation.h with 100% similarity]
atk-adaptor/remoteobject.c [moved from libspi/remoteobject.c with 100% similarity]
atk-adaptor/remoteobject.h [moved from libspi/remoteobject.h with 100% similarity]
atk-adaptor/selection.c [moved from libspi/selection.c with 100% similarity]
atk-adaptor/selection.h [moved from libspi/selection.h with 100% similarity]
atk-adaptor/spi-private.h [new file with mode: 0644]
atk-adaptor/stateset.c [moved from libspi/stateset.c with 100% similarity]
atk-adaptor/stateset.h [moved from libspi/stateset.h with 100% similarity]
atk-adaptor/streamablecontent.c [moved from libspi/streamablecontent.c with 100% similarity]
atk-adaptor/streamablecontent.h [moved from libspi/streamablecontent.h with 100% similarity]
atk-adaptor/table.c [moved from libspi/table.c with 100% similarity]
atk-adaptor/table.h [moved from libspi/table.h with 100% similarity]
atk-adaptor/text.c [moved from libspi/text.c with 100% similarity]
atk-adaptor/text.h [moved from libspi/text.h with 100% similarity]
atk-adaptor/tree.c [moved from libspi/tree.c with 99% similarity]
atk-adaptor/util.c [moved from cspi/spi_matchrule.c with 58% similarity]
atk-adaptor/value.c [moved from libspi/value.c with 100% similarity]
atk-adaptor/value.h [moved from libspi/value.h with 100% similarity]
atk-bridge/Makefile.am [deleted file]
configure.ac [new file with mode: 0644]
configure.in [deleted file]
cspi-1.0-uninstalled.pc.in [deleted file]
cspi-1.0.pc.in [deleted file]
cspi/Makefile.am [deleted file]
cspi/bonobo/Makefile.am [deleted file]
cspi/bonobo/cspi-bonobo-listener.c [deleted file]
cspi/bonobo/cspi-bonobo-listener.h [deleted file]
cspi/bonobo/cspi-bonobo.c [deleted file]
cspi/cspi-lowlevel.h [deleted file]
cspi/spi-impl.h [deleted file]
cspi/spi-listener.h [deleted file]
cspi/spi-private.h [deleted file]
cspi/spi-roletypes.h [deleted file]
cspi/spi-statetypes.h [deleted file]
cspi/spi.h [deleted file]
cspi/spi_accessible.c [deleted file]
cspi/spi_action.c [deleted file]
cspi/spi_application.c [deleted file]
cspi/spi_collection.c [deleted file]
cspi/spi_component.c [deleted file]
cspi/spi_document.c [deleted file]
cspi/spi_editabletext.c [deleted file]
cspi/spi_event.c [deleted file]
cspi/spi_hyperlink.c [deleted file]
cspi/spi_hypertext.c [deleted file]
cspi/spi_image.c [deleted file]
cspi/spi_main.c [deleted file]
cspi/spi_registry.c [deleted file]
cspi/spi_selection.c [deleted file]
cspi/spi_streamablecontent.c [deleted file]
cspi/spi_table.c [deleted file]
cspi/spi_text.c [deleted file]
cspi/spi_value.c [deleted file]
docs/Makefile.am [deleted file]
docs/reference/Makefile.am [deleted file]
docs/reference/cspi/Makefile.am [deleted file]
docs/reference/cspi/at-spi-cspi-docs.sgml [deleted file]
docs/reference/cspi/at-spi-cspi-overrides.txt [deleted file]
docs/reference/cspi/at-spi-cspi-sections.txt [deleted file]
docs/reference/cspi/at-spi-cspi.types [deleted file]
docs/reference/cspi/tmpl/spi_accessible.sgml [deleted file]
docs/reference/cspi/tmpl/spi_action.sgml [deleted file]
docs/reference/cspi/tmpl/spi_application.sgml [deleted file]
docs/reference/cspi/tmpl/spi_component.sgml [deleted file]
docs/reference/cspi/tmpl/spi_editabletext.sgml [deleted file]
docs/reference/cspi/tmpl/spi_event.sgml [deleted file]
docs/reference/cspi/tmpl/spi_hyperlink.sgml [deleted file]
docs/reference/cspi/tmpl/spi_hypertext.sgml [deleted file]
docs/reference/cspi/tmpl/spi_image.sgml [deleted file]
docs/reference/cspi/tmpl/spi_main.sgml [deleted file]
docs/reference/cspi/tmpl/spi_registry.sgml [deleted file]
docs/reference/cspi/tmpl/spi_relation.sgml [deleted file]
docs/reference/cspi/tmpl/spi_selection.sgml [deleted file]
docs/reference/cspi/tmpl/spi_stateset.sgml [deleted file]
docs/reference/cspi/tmpl/spi_table.sgml [deleted file]
docs/reference/cspi/tmpl/spi_text.sgml [deleted file]
docs/reference/cspi/tmpl/spi_value.sgml [deleted file]
docs/reference/idl/Doxyfile [deleted file]
docs/reference/idl/Makefile.am [deleted file]
docs/reference/idl/README [deleted file]
docs/reference/idl/at-spi-idl-docs.sgml [deleted file]
docs/reference/idl/at-spi-idl-overrides.txt [deleted file]
docs/reference/idl/at-spi-idl-sections.txt [deleted file]
docs/reference/idl/tmpl/accessible.sgml [deleted file]
docs/reference/idl/tmpl/action.sgml [deleted file]
docs/reference/idl/tmpl/application.sgml [deleted file]
docs/reference/idl/tmpl/registry.sgml [deleted file]
droute/Makefile.am [new file with mode: 0644]
droute/droute.c [moved from libspi/droute.c with 99% similarity]
droute/droute.h [moved from libspi/droute.h with 100% similarity]
droute/introspect-loader.c [moved from libspi/introspect-loader.c with 90% similarity]
droute/introspect-loader.h [moved from libspi/introspect-loader.h with 98% similarity]
idl/Makefile.am
libloginhelper-1.0.pc.in [deleted file]
libspi-1.0-uninstalled.pc.in [deleted file]
libspi-1.0.pc.in [deleted file]
libspi/Makefile.am [deleted file]
login-helper/Makefile.am [deleted file]
login-helper/login-helper.c [deleted file]
login-helper/login-helper.h [deleted file]
patches/atk-bridge-log.patch [deleted file]
patches/atk-bridge-log.patch.README [deleted file]
po/ChangeLog [deleted file]
po/LINGUAS [deleted file]
po/POTFILES.in [deleted file]
po/POTFILES.skip [deleted file]
po/ang.po [deleted file]
po/ar.po [deleted file]
po/az.po [deleted file]
po/be.po [deleted file]
po/be@latin.po [deleted file]
po/bg.po [deleted file]
po/bn.po [deleted file]
po/bs.po [deleted file]
po/ca.po [deleted file]
po/cs.po [deleted file]
po/cy.po [deleted file]
po/da.po [deleted file]
po/de.po [deleted file]
po/dz.po [deleted file]
po/el.po [deleted file]
po/en_CA.po [deleted file]
po/en_GB.po [deleted file]
po/eo.po [deleted file]
po/es.po [deleted file]
po/et.po [deleted file]
po/eu.po [deleted file]
po/fa.po [deleted file]
po/fi.po [deleted file]
po/fr.po [deleted file]
po/gl.po [deleted file]
po/gu.po [deleted file]
po/he.po [deleted file]
po/hi.po [deleted file]
po/hr.po [deleted file]
po/hu.po [deleted file]
po/id.po [deleted file]
po/is.po [deleted file]
po/it.po [deleted file]
po/ja.po [deleted file]
po/ka.po [deleted file]
po/ko.po [deleted file]
po/ku.po [deleted file]
po/lt.po [deleted file]
po/mk.po [deleted file]
po/mn.po [deleted file]
po/mr.po [deleted file]
po/ms.po [deleted file]
po/nb.po [deleted file]
po/nds_DE.po [deleted file]
po/ne.po [deleted file]
po/nl.po [deleted file]
po/nn.po [deleted file]
po/oc.po [deleted file]
po/or.po [deleted file]
po/pa.po [deleted file]
po/pl.po [deleted file]
po/pt.po [deleted file]
po/pt_BR.po [deleted file]
po/ro.po [deleted file]
po/ru.po [deleted file]
po/rw.po [deleted file]
po/sk.po [deleted file]
po/sl.po [deleted file]
po/sq.po [deleted file]
po/sr.po [deleted file]
po/sr@Latn.po [deleted file]
po/sr@ije.po [deleted file]
po/sv.po [deleted file]
po/ta.po [deleted file]
po/th.po [deleted file]
po/tr.po [deleted file]
po/ug.po [deleted file]
po/uk.po [deleted file]
po/vi.po [deleted file]
po/wa.po [deleted file]
po/xh.po [deleted file]
po/zh_CN.po [deleted file]
po/zh_HK.po [deleted file]
po/zh_TW.po [deleted file]
registryd/Makefile.am
registryd/desktop.c
registryd/desktop.h
registryd/deviceeventcontroller.c
registryd/deviceeventcontroller.h
registryd/reentrant-list.c [moved from libspi/util.c with 89% similarity]
registryd/reentrant-list.h [moved from libspi/spi-private.h with 86% similarity]
registryd/registry-main.c
registryd/registry.c
registryd/registry.h
spi-common/Makefile.am [new file with mode: 0644]
spi-common/event-types.h [moved from test/keysynth-test.c with 52% similarity]
spi-common/spi-dbus.c [moved from libspi/dbus.c with 62% similarity]
spi-common/spi-dbus.h [new file with mode: 0644]
spi-common/spi-types.h [new file with mode: 0644]
test/Makefile.am [deleted file]
test/accessx-gui.c [deleted file]
test/app.c [deleted file]
test/at.c [deleted file]
test/demo.csh [deleted file]
test/event-listener-test.c [deleted file]
test/key-listener-test.c [deleted file]
test/keypad-test.c [deleted file]
test/keysynth-demo.c [deleted file]
test/login-helper-client-test.c [deleted file]
test/login-helper-server-test.c [deleted file]
test/screen-review-test.c [deleted file]
test/simple-at.c [deleted file]
test/stress-test.c [deleted file]
test/test-simple.c [deleted file]
test/visual-bell.c [deleted file]
test/window-listener-test.c [deleted file]
tests/AccessibleTree.py [moved from tools/python/AccessibleTree.py with 100% similarity]
tests/AccessibleTreeCache.py [moved from tools/python/AccessibleTreeCache.py with 100% similarity]
tests/Makefile.am [new file with mode: 0644]
tests/desktop.xml [moved from tools/python/desktop.xml with 100% similarity]
tests/makeTree.py [moved from tools/python/makeTree.py with 100% similarity]
tests/testClient.py [moved from tools/python/testClient.py with 100% similarity]
tests/testServer.py [moved from tools/python/testServer.py with 100% similarity]
tools/Makefile.am
xml/Makefile.am

diff --git a/AUTHORS b/AUTHORS
index 3ef8806..739568f 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,4 +1,9 @@
-The Gnome Accessibility Project SPI Team
+Authors of AT-SPI D-Bus implementation.
+========================================
+Mike Gorse <mike.gorse@novell.com>
+Mark Doffman <mark.doffman@codethink.co.uk>
+
+Authors of AT-SPI spec & implementation in CORBA
 ========================================
 Bill Haneman <bill.haneman@sun.com>
 Marc Mulcahy <marc.mulchay@sun.com>
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644 (file)
index bd359bc..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,8554 +0,0 @@
-2008-03-31  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c: (atk_bridge_init),
-       (spi_atk_bridge_do_registration):
-       Bug #498668. Call bonobo_activate at the beginning of the
-       initialization.
-
-2008-03-19  Li Yuan  <li.yuan@sun.com>
-
-       * idl/Accessibility_Accessible.idl:
-       Bug #431053. add accessible-role event in idl doc.
-
-2008-03-19  Li Yuan  <li.yuan@sun.com>
-
-       * libspi/document.c: (impl_getAttributes):
-       Bug #451553. Return NULL is there are no attributes. Patch from Ginn
-       Chen.
-
-2008-03-19  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c: (spi_atk_emit_eventv):
-       Bug #520490. Remove unused call.
-
-2008-03-19  Li Yuan  <li.yuan@sun.com>
-
-       * libspi/collection.c: (match_attributes_none_p), (inorder),
-       (getMatchesInOrder):
-       * registryd/deviceeventcontroller.c:
-       (impl_generate_keyboard_event):
-       Bug #521667. Patch from Jens Granseuer <jensgr@gmx.net>.
-       Fixes several C99 idioms that lead to compilation errors
-       with older compilers like gcc 2.x. Also removes a few unused
-       variables.
-
-2008-03-14  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c: (deregister_application):
-       Bug #522356. Since in desktop.c:spi_desktop_remove_application, we
-       call bonobo_object_release_unref for the object, we don't need to
-       unref the object again.
-
-2008-03-10  Li Yuan  <li.yuan@sun.com>
-
-       * NEWS:
-       * README:
-       * configure.in:
-       Uprev/release 1.22.0.
-
-2008-02-27  Ariel Rios  <ariel@gnu.org>
-
-       * idl/Accessibility_Collection.idl:(getMatchesTo,
-       getMatchesFrom) API Change that adds in order querys.
-       * libspi/collection.c: 
-       (sort_order_rev_canonical): Method to do querys and get results in
-       canonical reverse. New.
-       (inorder): Help method for getMatchesInOrder.
-       (getMatchesInOrder):New method to get next matches from a given object
-       in order.
-       (getMatchesInBackOrder): New method to get previous matches from a
-       given object in order.
-       (getMatchesFrom), (getMatchesTo): Old impl_getMatches[From/To] to be
-       able to accomodate in order querys.
-       (impl_getMatchesFrom), (impl_getMatchesTo): New implementation that
-       accomodate in order querys.
-       (spi_collection_interface_new),
-       (get_collection_from_servant), (impl_createMatchRule),
-       (child_interface_p), (match_states_all_p), (match_states_any_p),
-       (match_states_none_p), (match_states_lookup), (match_roles_all_p),
-       (match_roles_any_p), (match_roles_none_p), (match_roles_lookup),
-       (match_interfaces_all_p), (match_interfaces_any_p),
-       (match_interfaces_none_p), (match_interfaces_lookup),
-       (match_attributes_all_p), (match_attributes_any_p),
-       (match_attributes_none_p), (match_attributes_lookup), (traverse_p),
-       (sort_order_canonical), (query_exec), (impl_getMatches),
-       (spi_collection_init): Clean code.
-
-       Bug #496232. Work by Ariel Rios <ariel@gnu.org> and
-       Scott Haeger <scott@bashautomation.com>.
-
-2008-02-25  Li Yuan  <li.yuan@sun.com>
-
-       * NEWS:
-       * README:
-       * configure.in:
-       Uprev/release 1.21.92.
-
-2008-02-25  Li Yuan  <li.yuan@sun.com>
-
-       * registryd/deviceeventcontroller.c: (global_filter_fn),
-       (dec_lock_modifiers), (dec_unlock_modifiers),
-       (impl_generate_keyboard_event): patch from Franz.Netykafka@runbox.no.
-       Bug #508147. Lock/Unlock modifier keys when xkb extension is
-       missing.
-
-2008-02-22  Scott Haeger  <scott@bashautomation.com>
-
-       * libspi/collection.c:
-       Fixed bug #517761, Collection match rules not working for attributes.
-
-2008-02-19  Li Yuan  <li.yuan@sun.com>
-
-       Patch from Scott Haeger <scott@bashautomation.com>
-       * libspi/collection.c: (impl_freeMatchRule):
-       Bug #517250. Clear spimatchrule->_mrp when free match rule.
-
-2008-01-14  Li Yuan  <li.yuan@sun.com>
-
-       * NEWS:
-       * README:
-       * configure.in:
-       Uprev/release 1.21.5.
-
-2008-01-03  Li Yuan  <li.yuan@sun.com>
-
-       Patch from Gilles Casse <gcasse@oralux.org>
-       * atk-bridge/bridge.c: (spi_atk_register_event_listeners):
-       Bug #474480. Fix memory leak.
-
-2008-01-02  Li Yuan  <li.yuan@sun.com>
-
-       Patch from Luke Yelavich <themuso@themuso.com>
-       * registryd/Accessibility_Registry.server.in.in:
-       Marks translatable strings in 
-       registryd/Accessibility_Registry.server.in.in, so that intltool picks
-       them up.
-
-2007-12-03  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, README, NEWS:
-       Uprev/release 1.21.3.
-
-2007-12-03  Li Yuan  <li.yuan@sun.com>
-
-       * idl/Accessibility_Collection.idl:
-       * libspi/collection.c: 
-       (impl_getMatchesFrom), (impl_getMatchesTo):
-       Fix build error in Solaris, for restrict is a keyword in SS cc.
-
-2007-12-03  Li Yuan  <li.yuan@sun.com>
-
-       * idl/Accessibility_Collection.idl:
-       * libspi/accessible.c: (spi_accessible_construct):
-       * libspi/collection.c: (spi_collection_interface_new),
-       (get_atkobject_from_servant), (get_collection_from_servant),
-       (impl_createMatchRule), (impl_freeMatchRule), (child_interface_p),
-       (match_states_all_p), (match_states_any_p), (match_states_none_p),
-       (match_states_lookup), (match_roles_all_p), (match_roles_any_p),
-       (match_roles_none_p), (match_roles_lookup),
-       (match_interfaces_all_p), (match_interfaces_any_p),
-       (match_interfaces_none_p), (match_interfaces_lookup),
-       (match_attributes_all_p), (match_attributes_any_p),
-       (match_attributes_none_p), (match_attributes_lookup), (traverse_p),
-       (sort_order_canonical), (query_exec), (_accessible_list_to_set),
-       (impl_getMatchesFrom), (impl_getMatchesTo), (impl_getMatches),
-       (spi_collection_class_init), (spi_collection_init):
-       * libspi/collection.h:
-       Bug #326516. Patch from Ariel. Enhance collection support.
-
-2007-12-03  Li Yuan <li.yuan@sun.com>
-
-       * atk-bridge/Makefile.am:
-       * libspi/Makefile.am:
-       Bug #493547. Add X_CFLAGS to INCLUDES to fix build error.
-
-2007-11-12  Li Yuan  <li.yuan@sun.com>
-
-       * libspi/accessible.c: (impl_accessibility_accessible_get_state),
-       (impl_accessibility_accessible_get_relation_set):
-       Fix for #446277. Decrease the ref count to 1.
-
-2007-10-29  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, README, NEWS:
-       Uprev/release 1.21.1.
-
-2007-10-15  Li Yuan  <li.yuan@sun.com>
-
-       * MAINTAINERS: add Willie Walker and Eitan Isaacson
-       to the MAINTAINERS.
-
-2007-09-17  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, README, NEWS:
-       Uprev/release 1.20.0.
-
-2007-09-08  Li Yuan  <li.yuan@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       (spi_key_event_matches_listener):
-       Bug #474796. Should not checkmask bit 14 when sond out 
-       device event.
-
-2007-08-20  Li Yuan  <li.yuan@sun.com>
-
-       * libspi/base.c: (spi_base_construct):
-       Avoid unnecessary crash. Bug #467612.
-
-2007-08-01  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c: (spi_atk_bridge_key_listener):
-       Fix a potential dead-lock issue. Bug #462412.
-
-2007-07-09  Li Yuan <li.yuan@sun.com>
-
-       * configure.in, README, NEWS:
-       Uprev/release 1.19.5.
-
-2007-07-09  Li Yuan <li.yuan@sun.com>
-
-       * libspi/accessible.c: (impl_accessibility_accessible_get_state):
-       Bug #446277. Control the ref_count to 1, so Orca can unref the
-       state_set and avoid the memory leak.
-
-2007-06-26  Li Yuan <li.yuan@sun.com>
-
-       * atk-bridge/Makefile.am:
-       Bug #450897. Set logging domain.
-       * registryd/registry.c: (parse_event_type):
-       Bug #433802.
-       Handle the "document:" signal, set the type to
-       ETYPE_OBJECT.
-
-2007-06-04  Li Yuan <li.yuan@sun.com>
-
-       * configure.in, README, NEWS:
-       Uprev/release 1.19.3 for GNOME 2.19.3.
-
-2007-05-30  Willie Walker <william.walker@sun.com>
-
-       * configure.in, Makefile.am, pyatspi/Makefile.am: Fix for bug
-       439436 to add pyatspi to autotools stuff so it gets installed as
-       part of a make install.
-       
-2007-05-17  Li Yuan <li.yuan@sun.com>
-
-       * test/Makefile.am:
-       Bug #439057. Add the original PATH to PATH.
-
-2007-04-23  Li Yuan <li.yuan@sun.com>
-
-       * configure.in, NEWS:
-       Uprev/release 1.19.1 for GNOME 2.19.1.
-
-2007-04-18  Li Yuan <li.yuan@sun.com>
-
-       * pyatspi/__init__.py:
-       * pyatspi/accessible.py:
-       * pyatspi/constants.py:
-       * pyatspi/event.py:
-       * pyatspi/registry.py:
-       * pyatspi/utils.py:
-       Bug #430938. Add some files to create the uniform Python
-       wrapper for at-spi.
-
-2007-04-12  Li Yuan <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c: (spi_atk_bridge_get_registry),
-       (spi_atk_bridge_focus_tracker), (spi_atk_bridge_key_listener):
-       Fix #427836. Fix leak and unify the code style.
-
-2007-04-12  Yi Jin <yi.jin@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_focus_tracker):
-       Bug #428007. Fix a memory leak.
-
-2007-04-02  Ariel Rios  <ariel@gnu.org>
-
-       Implement the Matchrule interface required for Collection.
-       See bug #405774.
-
-       * cspi/Makefile.am:
-       * cspi/spi-impl.h:
-       * cspi/spi.h:
-       * cspi/spi_accessible.c: (Accessible_isCollection),
-       (Accessible_isMatchRule), (Accessible_getCollection),
-       (Accessible_getMatchRule):
-       * cspi/spi_collection.c:  new file.
-       * cspi/spi_matchrule.c:  new file.
-       * idl/Accessibility.idl:
-       * idl/Accessibility_Collection.idl: new file.
-       * idl/Makefile.am:
-       * libspi/Makefile.am:
-       * libspi/collection.c: new file.
-       * libspi/collection.h: new file.
-       * libspi/libspi.h:
-       * libspi/matchrule.c: new file.
-       * libspi/matchrule.h: new file.
-
-2007-03-29  Ariel Rios  <ariel@gnu.org>
-
-       * cspi/spi.h (AccessibleRoleSet): bug #407600. Define RoleSet structure.
-
-2007-03-22 Li Yuan <li.yuan@sun.com> 
-
-       * atk-bridge/bridge.c: don't call threads_leave and enter if own the 
-       main context. Fix for #329454.
-
-2007-03-12  Li Yuan <li.yuan@sun.com>
-
-       * configure.in, NEWS: Uprev/release 1.18.0 for GNOME 2.18.0.
-
-2007-03-02  Li Yuan <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c
-       (spi_atk_bridge_register_application),
-       (deregister_application), (spi_atk_bridge_focus_tracker),
-       (spi_atk_emit_eventv), (post_init), (spi_atk_bridge_exit_func),
-       (gnome_accessibility_module_shutdown): Bug #329454. Add guard variable
-       to prevent calling threads_enter/leave during the init and shutdown.
-
-2007-02-27  Li Yuan <li.yuan@sun.com>
-
-       * libspi/util.c:
-       (spi_re_entrant_list_delete_link):
-       Bug #412286. Reverse previous patch.
-       * configure.in, NEWS: Uprev/release 1.17.2.
-
-2007-02-26  Li Yuan <li.yuan@sun.com>
-
-       * libspi/accessible.c:
-       (impl_accessibility_accessible_get_attributes),
-       (impl_accessibility_accessible_get_relation_set):
-       Bug #404584 and #401299. Return an empty object instead of return NULL.
-       * configure.in, NEWS: Uprev/release 1.17.1.
-
-2007-02-20  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * Makefile.am: Dist MAINTAINERS.
-
-2007-01-24  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * atk-bridge/bridge.c: (spi_atk_bridge_init_event_type_consts),
-       (atk_bridge_init), (spi_atk_bridge_get_registry),
-       (spi_atk_bridge_exit_func), (spi_atk_bridge_init_base):
-       Fix some compiler warnings and plug a leak. Closes part of
-       bug #375319.
-
-2007-01-24  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * cspi/bonobo/cspi-bonobo-listener.h:
-       * cspi/bonobo/cspi-bonobo.c: (cspi_init):
-       * cspi/spi_hypertext.c: (AccessibleHypertext_getLink):
-       * cspi/spi_main.c: (SPI_eventIsReady):
-       * cspi/spi_streamablecontent.c: (AccessibleStreamableContent_read):
-       * libspi/streamablecontent.c:
-       * libspi/util.c: (spi_re_entrant_list_delete_link):
-       * login-helper/login-helper.c:
-       * registryd/deviceeventcontroller.c:
-       (spi_controller_update_key_grabs), (isEvent):
-       * registryd/registry.c:
-       * test/key-listener-test.c: (simple_at_exit):
-       * test/login-helper-server-test.c: (test_set_wm_dock),
-       (test_post_window):
-       Fix a bunch of warnings from sparse:
-       - ANSIfication of function declarations
-       - NULL vs 0
-       - Add some prototypes
-       - make some stuff static
-
-2007-02-14  Li Yuan  <li.yuan@sun.com>
-
-       * libspi/accessible.c:
-       (impl_accessibility_accessible_get_attributes):
-       Bug #404584. If there is no attributes, just return NULL.
-
-2007-02-12  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, NEWS: Uprev/release 1.17.0.
-
-2007-02-12  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c:
-       (atk_bridge_init): bug #400709. we must emit events even if we are not
-       registered as a full-fledged app.
-       (gnome_accessibility_module_shutdown): bug #404592, unset misc when
-       application like openoffice shutdown. They need to unload gtk before
-       the is spi_atk_bridge_exit_func called.
-
-2007-01-22  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, NEWS: Uprev/release 1.7.16 for gnome 2.18.0 Beta 1.
-
-2007-01-22  Li Yuan  <li.yuan@sun.com>
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_get_registry_ior), (cspi_init):
-       Bug #393010. Use REGISTRY IOR XAtom to get registryd.
-
-2007-01-19  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c:
-       (atk_bridge_init), (spi_atk_bridge_register_application),
-       (deregister_application), (spi_atk_bridge_focus_tracker),
-       (spi_atk_emit_eventv): 
-       Bug #329454. Use atk_misc_threads_enter/atk_misc_threads_leave
-       to prevent deadlock.
-
-2007-01-08  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, NEWS: Uprev/release 1.7.15 for gnome 2.17.5.
-
-2007-01-08  Li Yuan  <li.yuan@sun.com>
-
-       * registryd/registry-main.c:
-       (main): set registry ior only when register server successfully.
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_register_application), (spi_atk_emit_eventv):
-       Bug #372988, #381670. Fix memory leak.
-
-2007-01-02  Bill Haneman <billh@gnome.org>
-
-       * libspi/text.c:
-       (impl_getAttributeRun): Fix misuse of 'i' instead of 'j' when
-       appending default attributes to a text attribute set.
-       Bug #387960.
-
-2006-12-28  Li Yuan  <li.yuan@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_tidy_windows): init any again if call spi_atk_emit_eventv
-       the second time, because spi_atk_emit_eventv will free any. Bug
-       #364839.
-
-2006-12-15  Li Yuan  <li.yuan@sun.com>
-
-       * configure.in, NEWS: Uprev/release 1.7.14 for gnome 2.17.4.
-
-2006-12-14  Li Yuan  <li.yuan@sun.com>
-
-       Fix for #352444
-       * atk-bridge/bridge.c: (spi_atk_emit_eventv),
-       (spi_atk_bridge_property_event_listener),
-       (spi_atk_bridge_signal_listener):
-       Free some CORBA objects to fix memory leak and crash.
-
-2006-12-13  Li Yuan <li.yuan@sun.com>
-
-       Patch from Ariel Rios to fix #163132 and #377079.
-       * atk-bridge/bridge.c: (spi_atk_bridge_do_registration),
-       (spi_atk_bridge_get_registry_ior):
-       Use g_warning instead of g_error and g_critical to avoid crash.
-
-2006-12-11 Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/text.c:
-       (impl_getAttributeRun):Return an empty CORBA_seq instead of NULL,
-       if there are no non-default attributes defined at the current offset.
-       Fixes bug #372172.
-
-2006-12-04  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Role.idl: Fixed the documentation for
-       ROLE_FORM; bug #382271.  Thanks to George Kraft for finding this.
-       
-2006-12-04  Bill Haneman <bill.haneman@sun.com>
-       
-       * Added Li Yuan <li.yuan@sun.com> to MAINTAINERS.
-
-2006-11-07  Bill Haneman <bill.haneman@sun.com>
-
-       Patches from Padraig O'Briain for bugs #361386 and #369377.
-       
-       * registryd/registry.c:
-       (struct NotifyContext): Change the e_out
-       member from an Accessibility_Event struct to a pointer to 
-       struct.
-       (notify_listeners_cb): Modify to use the new struct definition above.
-       Allows use of ORBit_copy_value instead of CORBA_any__copy.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_button_update_and_emit): Free the event's any_data
-       after emission.
-       (spi_dec_mouse_check):Free the event details any struct
-       after emission.
-       (spi_device_event_controller_forward_mouse_event): Free any.
-       (spi_device_event_controller_forward_key_event): Ditto.
-       
-2006-11-07  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Uprev/release 1.7.13 for gnome 2.17.2.
-       Don't require gtk+ and gail for building most of at-spi
-       including libspi.
-
-       * registryd/registry-main.c (main): We now get te value of display
-       using the env var DISPLAY rather than using the gdk_display_get_default
-       to avoid dependancy of gdk. Also, once the registry is started, we set 
-       the ior of the registry as an X property.
-       (registry_set_ior): Set ior as the AT_SPI_IOR Root window property.
-
-       * atk-bridge/bridge.c (atk_bridge_init): We keep track whether 
-       the registration was successfull.
-       (spi_atk_bridge_do_registration): This function now returns success 
-       or not on activating the registry. 
-       (spi_atk_bridge_get_registry_ior): Look whether the AT_SPI_IOR property
-       has been set in the X root window and return it if available.
-       (spi_atk_bridge_get_registry): We now get the registry using the IOR 
-       saved as  a X property rather than using the OAFID. 
-
-2006-10-01  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Uprev/release 1.7.12 for gnome 2.16.1.
-
-2006-09-25  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/registry.c:
-       (desktop_remove_application): Don't pass a ref to the
-       dead application with the event, since it's probably
-       defunct and will cause SEGV if we try to unref, 
-       extract app name, etc.
-       Bug #353226.
-       
-2006-09-20  Bill Haneman <bill.haneman@sun.com>
-
-       Patch from Neo Liu <nian.liu@sun.com>,
-       bug #356688.
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_document_event_listener): New, for 
-       AtkDocument signals.
-
-2006-08-30  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/*.idl:
-       Changed some parameter names so as not to 
-       collide with class names - allows IDL to be compiled with
-       OMNIorb compiler.  Thanks to Gary Cramblitt for this patch.
-       
-2006-08-22  Bill Haneman <bill.haneman@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_signal_listener): 
-       Patch from Ginn Chen, assign detail1 in children-changed
-       so that the child object can be assigned to the Any when the
-       at-spi event is emitted.  Bug #350552.
-
-       * libspi/application.c:
-       (spi_application_finalize): Remove g_print debug output.
-       Bug #350958.
-       
-2006-08-21  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Revved to AT-SPI 1.7.11.
-
-       * libspi/accessible.c:
-       (spi_accessible_new): Aggregate Hyperlink interface
-       if the GObject is an ATK_HYPERLINK_IMPL. See bug #352227.
-
-       * libspi/hyperlink.c:
-       (spi_hyperlink_new): Don't aggregate Action a second time if this
-       interface is created for an AtkHyperlinkImpl object (i.e. for a 
-       child Accessible, as opposed to the Hyperlink instance from
-       Hypertext:getLink.
-       (get_hyperlink_from_servant): Obtain the hyperlink from
-       atk_hyperlink_impl_get_hyperlink, if ATK_IS_HYPERLINK_IMPL.
-       
-       Patch section from Ginn Chen...
-
-       * cspi/spi_accessible.c:
-       (_cspi_accessible_set_from_sequence): 
-       Changed g_newa to g_new0 on Ginn Chen's suggestion.
-
-       * libspi/accessible.c:
-       (impl_getAttributes): Fixed to use the AtkAttribute struct properly.
-       (spi_accessible_new): Add the Document interface if present.
-
-       * libspi/document.c:
-       (impl_getAttributes): Fixed to use AtkAttribute properly.
-
-       * libspi/text.c:
-       (impl_getAttributes, impl_getDefaultAttributes): 
-       (impl_getAttributeRun): Fixed to use AtkAttribute struct properly.
-       
-2006-08-17  Bill Haneman <bill.haneman@sun.com>
-
-       * cspi/spi-private.h, cspi/spi_accessible.c:
-       (_cspi_attribute_set_from_sequence): Renamed from
-       cspi_attribute_set_from_sequence, to suppress export.
-
-       * cspi/spi.h:
-       (SPIRelationType): Fixed typo in PARENT_WINDOW_OF 
-       inline docs, which was keeping the doc from appearing.
-       (SPIExceptionHandler): Doc this.
-       
-       * cspi/spi_document.c:
-       Added inline gtk-docs cut-n-pasted from the doxygen
-       docs in the corresponding IDL files.
-       (AccessibleDocument_getAttributes): Fix the retval here.
-
-       * cspi/spi_streamablecontent.c:
-       Fixed some 'Since' tags that were accidentally doxygen-style.
-
-       * cspi/spi_table.c:
-       (AccessibleTable_getRowColumnExtentsAtIndex): Cut and pasted
-       docs from the IDL file.
-
-       * docs/reference/cspi/at-spi-cspi-docs.sgml:
-       Added entities for Document and StreamableContent interfaces.
-
-       * docs/reference/cspi/at-spi-cspi-sections.txt:
-       Added some docs that were present inline but not getting
-       exported to HTML.
-       
-2006-07-31  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/text.c:
-       (impl_getRangeExtents): Use the atk_text_get_range_extents
-       API instead of looping over character bounds, now that
-       ATK includes it.
-       (impl_getBoundedRanges): Use atk_text_get_bounded_ranges.
-       (_spi_text_bounds_contain): Remove, not needed anymore.
-       (_spi_text_rect_union): Remove, not needed anymore.
-       
-2006-07-31  Bill Haneman <bill.haneman@sun.com>
-
-       * atk-bridge/bridge.c: 
-       (spi_atk_emit_eventv): Fix the CORBA_free call which was
-       causing 64-bit troubles and memory leaks.
-       Special thanks to Alexander Larsson who finally seems to 
-       have tracked down the problem, not just here but in
-       libspi/util.c...
-       
-       * libspi/util.c:
-       (spi_init_any_object): Make sure we copy the CORBA value
-       when initializing an object for passing as a CORBA_Any.
-       Bug #337239.
-       
-2006-07-21  Bill Haneman <billh@gnome.org>
-
-       * idl/Accessibility.idl:
-       Reverted pragma changes, this broke the build in some envs
-       including the Debian team's build and some tinderbox builds.
-       
-2006-07-19  Bill Haneman <billh@gnome.org> modifications to patch from
-
-       * configure.in:
-       Revved to 1.7.10, and edited the Xevie check (bug #319994).
-
-       * idl/Accessibility.idl:
-       Reworked inclusion of Bonobo_Unknown.idl, to 
-       avoid double-linking libs in the Bonobo environment.
-       Thanks to Michael Meeks for the workaround, see bug #313122.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_controller_notify_keylisteners): 
-       Set the SPI_NUMLOCK_MASK bit if the modifier 
-       corresponding to the conceptual numlock state is set.
-       Bug #143702.
-       
-2006-07-18  Bill Haneman <billh@gnome.org> modifications to patch from
-
-       * idl/Accessibility_Selection.idl:
-       (deselectChild): New method.
-
-       * libspi/selection.c:
-       (impl_deselectChild): Implement the new IDL method.
-
-       * cspi/spi.h:
-       (AccessibleSelection_deselectChild): Added new method.
-       
-       * cspi/spi_selection.c:
-       (AccessibleSelection_deselectChild): New method implemented.
-       
-2006-07-13  Bill Haneman <billh@gnome.org> modifications to patch from
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_init): Replace g_error with g_warning, prevent
-       SEGV if the registry cannot be activated. Bug #346393.
-       
-2006-07-12  Bill Haneman <billh@gnome.org> modifications to patch from
-
-       * po/LINGUAS: put LINGUAS where it belongs. Fixes i18n.
-       
-2006-07-12  Bill Haneman <billh@gnome.org> modifications to patch from
-2006-07-12  Ariel Rios  <arios@us.ibm.com>
-
-       See RFE #326536.
-       
-       * idl/Accessibility_Table.idl:
-       (getRowColumnExtentsAtIndex): New method for getting
-       selection status and extents in one API call.
-
-       * libspi/table.c:
-       (impl_getRowColumnExtentsAtIndex): Implementation of
-       new method above.
-       (spi_table_class_init): Add above to epv.
-
-       * cspi/spi.h:
-       * cspi/spi_table.c:
-       (AccessibleTable_getRowColumnExtentsAtIndex): New
-       method, retrieves selection status and row/col extents
-       for a table cell in a single API call.
-
-2006-07-12  Bill Haneman <billh@gnome.org> modifications to patch from
-2006-07-12  Ariel Rios  <arios@us.ibm.com>
-
-       * cspi/bonobo/cspi-bonobo.c: Remove warning adding <cspi/spi-private.h>
-
-       * cspi/spi_text.c: 
-       (AccessibleText_getAttributeRun,AccessibleText_getDefaultAttributes):
-       New bindings for new methods defined in idl and libspi.
-
-       * cspi/spi.h: 
-       (AccessibleText_getAttributeRun,AccessibleText_getDefaultAttributes):
-       Added prototype functions.
-
-       * libspi/text.c: 
-       (impl_getAttributeRun, impl_getDefaultAttributeSet): New method implementation
-       Bug #326520
-       (spi_text_class_init): Added previous methods.
-       
-       * libspi/spi.h:  
-       (impl_getAttributeRun, impl_getDefaultAttributeSet): Added prototypes
-       * libspi/spi-private.h: Corrections.
-
-2006-06-29  Bill Haneman <bill.haneman@sun.com>
-
-       Added Document interface (see bug #326520), 
-       with work from Ariel Rios <arios@us.ibm.com>.
-
-       * configure.in: Bump to 1.7.8.
-       
-       * libspi/Makefile.am: Added document.[ch] to sources 
-
-       * libspi/document.h: 
-       (SpiDocument, SpiDocumentClass):
-              New interface implementation.
-       (spi_document_get_type, spi_document_construct)
-       (spi_document_interface_new): New methods added. 
-       (SPI_DOCUMENT_TYPE, SPI_DOCUMENT)
-       (SPI_DOCUMENT_CLASS, IS_DOCUMENT, IS_DOCUMENT_CLASS): 
-       Added macros for SpiDocument 
-       for new object.                     
-
-       * libspi/document.c: 
-       (spi_document_interface_new): Get a  
-       new document interface. New.
-       (get_document_from_servant): Get an AtkDocument from servant New.
-       (impl_getLocale, impl_getAttributeValue, impl_getAttributes): 
-       Implementation of methods defined on idl.
-       (spi_document_class_init, spi_document_init) 
-       Init methods for SpiDocument. new
-
-       * idl/Accessibility.idl: Added Accessibility_Document.idl.
-
-       * cspi/Makefile.am: Added spi_document.c to sources.
-
-       * cspi/spi_document.c: 
-       (AccessibleDocument_ref, AccessibleDocument_unref):      Added.
-       (AccessibleDocument_getLocale, AccesibleDocument_getAttributeValue)
-       (AccessibleDocument_getAttributes): Bindings for methods defined
-       on libspi
-
-       * cspi/spi_accessible.c: 
-       (Accessible_isDocument, Accessible_getDocument) New.
-       * cspi/spi.h: 
-       (Accessible_isDocument, Accessible_getDocument)
-       (AccessibleDocument_ref, AccessibleDocument_unref)
-       (AccessibleDocument_getLocale, AccessibleDocument_getAttributeValue)
-       (AccessibleDocument_getAttributes): Bindings added.
-       
-       * idl/Makefile.am: Added Accessibility_Document.idl to
-       idl_DATA.
-       
-2006-06-29  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Document.idl: New interface
-       for complex documents.  First stage of fix for RFE
-       #326520.
-       
-2006-06-27  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/streamablecontent.c:
-       (impl_content_stream_close):
-       Unref the GIOChannel on close.
-       
-2006-06-23  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Role.idl: 
-       * libspi/accessiblerole.c:
-       * cspi/spi_accessible.c: Added ROLE_LINK,
-       ROLE_REDUNDANT_OBJECT, and ROLE_INPUT_METHOD_WINDOW.
-       Bug #345758 and bug #140635.
-
-       
-2006-06-22  Bill Haneman <bill.haneman@sun.com>
-
-       Bug #345701.
-       
-       * idl/Accessibility_StreamableContent.idl:
-       Fix derivation of StreamableContent and ContentStream.
-
-       * cspi/spi_streamablecontent.c:
-       (accessible_content_stream_client_read):
-       Fix the datatype of the content stream used.
-       Interpret short reads as EOF, and stop trying to 
-       read when we've fulfilled the request.
-       (AccessibleStreamableContent_getContentTypes):
-       Use g_strdup, not CORBA_string_dup, for the strings.
-       (AccessibleStreamableContent_open):
-       Correctly use the new getStream method for opening,
-       not the deprecated getContent method.
-       Use the object reference as the stream hash key.
-       Make note of the 'one stream per client per streamable'
-       limitation in the docs.
-       
-       * libspi/libspi.h:
-       Add streamablecontent.h to the list of #includes.
-
-       * libspi/streamablecontent.c:
-       (impl_content_stream_read): Initialize the GError.
-       Allocate the incoming buffer if reading a fixed length of
-       data.  Use g_memmove instead of memcpy.
-       (impl_accessibility_streamable_get_content_types):
-       Init typelist->_maximum.  Only allocate the buffer if
-       there is a non-zero number of content types available.
-       (BONOBO_TYPE_FUNC_FULL(SpiStreamable): Move to end.
-
-       * libspi/streamablecontent.h:
-       (SPI_STREAMABLE_TYPE): Fix this macro, it was totally broken.
-
-       * libspi/value.h: 
-       (SPI_IS_VALUE): Fix a typo in this macro too.
-       
-2006-06-16  Bill Haneman <bill.haneman@sun.com>
-
-       RFE #326532:
-       
-       * idl/Accessibility_StreambleContent.idl:
-       Deprecate the Bonobo_Stream-based methods in favor of
-       a self-contained "ContentStream" interface.  This should 
-       allow us to remove BonoboStream dependencies entirely, since
-       there were no non-NIL implementations of the old methods anyway.
-       (ContentStream): New interface.
-       (ContentStream::SeekType): Enum.
-       (ContentStream::seek): New.
-       (ContentStream::read): New.
-       (ContentStream::close): New.
-       (getContent): Deprecate.
-       (getURI): New method, returns a URI pointing to the content, if available.
-       
-       * libspi/streamablecontent.c:
-       (SpiContentStream): Internal object type definition used to
-       implement Accessibility::StreamableContent::ContentStream via
-       AtkStreamableContent's GIOChannel back-end.
-       (spi_content_stream_new, spi_content_stream_dispose): See above;
-       static methods.
-       (impl_content_stream_seek, impl_content_stream_read):
-       (impl_content_stream_close): New, implementations of
-       ContentStream's IDL.
-       (impl_accessibility_streamable_get_stream): Implement the 
-       public method Accessibility::StreamableContent::getStream.
-       (impl_accessibility_streamable_get_uri): Implement the 
-       public method Accessibility::StreamableContent::getURI.
-
-       * cspi/spi_streamablecontent.c:
-       (accessible_bonobo_stream_client_seek): Replaced by
-       (accessible_content_stream_client_seek).
-       (accessible_bonobo_stream_client_read): Replaced by
-       (accessible_content_stream_client_read).
-       (AccessibleStreamableContent_open):
-       (AccessibleStreamableContent_seek):
-       (AccessibleStreamableContent_read):
-       (AccessibleStreamableContent_close): Use the new 'getStream'
-       API instead of the deprecated 'getContent' API, inside the cspi wrappers.
-       
-2006-06-15  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility.idl: #include Bonobo_Unknown.idl,
-       remove from other .idl files (except LoginHelper).
-       See bug #313122.
-
-2006-06-14  Bill Haneman <bill.haneman@sun.com>
-
-       * */Makefile.am: Add WARN_CFLAGS to INCLUDES.
-       Bug #308239.
-
-       * configure.in, */Makefile.am: mingw patch, modified from
-       original patch by yselkowitz.  Bug #314216.
-
-       * cspi/spi-impl.h: Added #defines SPI_TRUE and SPI_FALSE
-       for completeness.  Bug #163111.
-
-       * atk-bridge/bridge.c, cspi/bonobo/cspi-bonobo.c:
-       * libspi/util.c,  registryd/registry-main.c:
-       Fix guint/char* casts.
-       Patch from chpe, bug #333883.
-       
-2006-06-12  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Require atk-1.12.0, to pick up
-       new API. (bug #344412).
-
-       * libspi-1.0-uninstalled.pc.in:
-       * libspi-1.0.pc.in:
-       * libloginhelper-1.0.pc.in: Remove gtk+ dependency.
-       Fix for #341488 from Samual Thibault.
-
-       * configure.in, LINGUAS: Use LINGUAS, bug #338023.
-       Thanks to Brian Pepple.
-       
-2006-06-09  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/table.c:
-       (impl_get_nSelectedRows, impl_get_nSelectedColumns):
-       New, missing implementations of attribute reading methods
-       in epv.  Bug #339021.
-
-       * cspi/spi.h, spi_value.c:
-       (AccessibleValue_getMinimumIncrement): New methods wrapping 
-       the (formerly unimplemented) property from Value.idl.
-       
-       * libspi/value.c:
-       (impl_get_minimumIncrement): Implementation for retrieving
-       the minimum valuator increment, (formerly unimplemented).
-       Bug #344265.
-       
-2006-06-09  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_State.idl:
-       Added STATE_VISITED (bug #338369).
-       
-       * cspi/spi_accessible.c: 
-       (spi_state_to_corba) Fixed marshalling of new statetypes.
-       
-       * libspi/stateset.c:
-       (spi_init_state_tables, impl_getStates): 
-       Fixed conversion of new statetypes to/from ATK.
-
-       * idl/Accessibility_Role.idl: Added ROLE_FORM (bug #344266).
-
-       * cspi/spi-roletypes.h, spi_accessible.c: Added marshalling 
-       definitions/conversions for new roles from ATK.
-
-       * idl/Accessibility_Relation.idl:
-       * libspi/relation.c:
-       * cspi/spi.h, spi_accessible.c: Added SPI_RELATION_DESCRIBED_BY and 
-       SPI_RELATION_DESCRIPTION_FOR.  (bug #344264) Also
-       SPI_PARENT_WINDOW_OF, which was in ATK but not AT-SPI.
-
-       * libspi/accessible.c: Fixed marshalling of new role types from
-       ATK.
-       
-2006-04-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * revert my previous change
-
-2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * configure.in: Remove obssolete no_NO locale
-       * po/no.po: And the translation.
-
-2006-04-05  Matthias Clasen  <mclasen@redhat.com>
-
-       * atk-bridge/bridge.c (spi_atk_emit_eventv): Fix a 
-       memory-management error that caused crashes on x86_64.
-       (#337239)
-
-2006-03-30  Guntupalli Karunakar  <karunakar@indlinux.org>
-
-       * configure.in: Added 'dz' (Dzongkha) to ALL_LINGUAS.
-
-2006-03-27  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Define $LIBTOOL_EXPORT_OPTIONS
-       to strip "cspi_*" from the symbol table.
-       
-       * cspi/spi_streamablecontent.c:
-       (get_streams): Make this method static.
-
-       * cspi/spi_main.c:
-       (_cspi_exception_throw): rename to cspi_exception_throw,
-       so we can strip it with the rest...
-
-       * cspi/Makefile.am:
-       Add LIBTOOL_EXPORT_OPTIONS to libcspi_la_LDFLAGS.
-       
-2006-03-27  Bill Haneman <bill.haneman@sun.com>
-
-       Add doxygen-generated IDL docs to tarball, and enable 
-       doxygen during build/install when available.  Bug #301345.
-       
-       * configure.in: Add docs/reference/idl/Makefile to AC_OUTPUT.
-
-       * docs/reference/Makefile.am: Add idl to SUBDIRS.
-
-       * docs/reference/idl/Makefile.am: Optionally use
-       doxygen to create docs.
-       
-2006-03-20  Vladimer Sichinava  <vlsichinava@gmail.com>
-
-        * configure.in: Added "ka" (Georgian) to ALL_LINGUAS
-
-2006-03-20  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/table.c:
-       (impl_get_selected_rows): Don't free the selection if it's
-       empty or has not been assigned; init it to NULL so you can tell.
-       Also, allow for zero selected rows.
-       (impl_getSelectedColumns): Ditto.  Bug #319088.
-
-2006-03-11  Vincent Untz  <vuntz@gnome.org>
-
-       Leak fix for bug #334217.
-
-       * libspi/application.c: spi_application_toolkit_event_listener():
-       don't duplicate the string we pass as an argument to
-       spi_init_any_nil() since spi_init_any_nil() already does it
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_button_update_and_emit): ditto
-       (spi_dec_mouse_check): ditto
-       (spi_dec_emit_modifier_event): ditto
-       (spi_device_event_controller_forward_mouse): ditto
-       * registryd/registry.c:
-       (desktop_add_application): ditto
-       (desktop_remove_application): ditto
-
-2006-02-20  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Rev to 1.7.6.
-
-       Leak fixes for bug #331924.
-       
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_init_base): Don't dup the string, it's already
-       been dup-ed.  Fixes a leak.
-       (spi_atk_emit_eventv): Move the CORBA_free call here, 
-       instead of spi_atk_state_event_listener; fixes another leak.
-       (spi_atk_bridge_key_listener):Free the dup'ed key strings after
-       notifying the registry; fixes another leak.
-
-       * registryd/registry.c:
-       (registry_flush_event_queue): Free the CORBA_any when 
-       flushing the event, not just the string.  Fixes another leak.
-       (registry_queue_event): Free the CORBA_any when dropping
-       events on the floor; fixes another leak.
-
-       * libspi/util.c:
-       (spi_init_any_object, spi_init_any_nil): 
-       Always set _release to TRUE.  Fixes another leak.
-
-2006-02-20  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Rev to 1.7.5.
-       Reinstate localization of this module.  Thanks for Rodney
-       Dawes for fixing my patch.
-
-       * registryd/Makefile.am: Remove Accessibility_Registry.server 
-       from dist, since it needs to be re-created at configure time.
-       Fixes bug #3331484.
-       
-2006-01-31  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Rev to 1.7.4 (to include build fix below).
-       
-       * idl/Makefile.am: Include Selector.idl in dist.
-       Fixes bug #328859.
-
-       * cspi/spi_event.c:
-       (cspi_internal_event_get_object): Handle case where
-       "object" isn't present, i.e. CORBA_TC_Object doesn't match
-       the EventDetails data.
-       (cspi_internal_event_get_text): Handle NULL string.
-       (cspi_internal_event_get_rect): Handle missing/empty rect
-       data, Accessibility_TC_RectBounds doesn't match any_data.
-
-2006-01-30  Bill Haneman <billh@gnome.org>
-
-       * Released 1.7.3.
-
-       * atk-bridge/bridge.c:
-       (spi_atk_emit_eventv): Check for SPI_REMOTE_OBJECT 
-       interface and use that when instantiating a new source
-       accessible.  Better fix for bug #321814.
-       
-2006-01-27  Bill Haneman <billh@gnome.org>
-
-       * idl/Accessibility_Selector.idl: Added to the cvs repository.
-
-       * configure.in: Revved to 1.7.3.
-       
-2006-01-17  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.7.2, re-dist to include docs.
-
-2006-01-09  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Removed po/Makefile.in inclusion, we do not need
-       it.  Revved to 1.7.0.
-
-       * idl/Accessibility.idl: Improved documentation here, and for all
-       IDL in the 'GNOME::Accessibility' namespace.
-
-       * idl/Accessibility_Accessible.idl:
-       (LOCALE_TYPE): Added enum.
-       (AttributeSet): New, for returning multiple name/value attribute pairs.
-       (RoleSet): New, sequence of Roles, to be used in upcoming
-       Collection API.
-       (getAttributes): New API, allows retrieval of name/value pair
-       annotations for all kinds of Accessible objects.  C.f. 
-       Text:getAttributes, which is only for typographic/textual/semantic tags in
-       text content.
-       (getApplication): New, retrieves the host/containing Application
-       instance for an object (without having to walk up the whole tree).
-
-       * idl/Accessibility_Component.idl:
-       (getAlpha): New method, returns the alpha blending (aka 'opacity')
-       value for an object.  An alpha of 1.0 is fully opaque, 0.0 is
-       fully transparent.
-
-       * idl/Accessibility_Event.idl:
-       (EventDetails): New struct definition, for encapsulating
-       commonly-queried information about emitted events.  The use of
-       this structure in emitted events (in the 'any' member of
-       Accessibility_Event) should greatly reduce the number of
-       client-server roundtrips necessary.
-
-       * idl/Accessibility_Image.idl:
-       (imageLocale): New, a readonly attribute indicating the POSIX 
-       LC_MESSAGES locale of the image and associated Alt/descriptive
-       text.
-
-       * idl/Accessibility_Relation.idl:
-       (RELATION_PARENT_WINDOW_OF): Include, as complement to
-       RELATION_POPUP_FOR.
-
-       * idl/Accessibility_Role.idl:
-       (ROLE_ENTRY, ROLE_CHART, ROLE_CAPTION, ROLE_DOCUMENT_FRAME)
-       (ROLE_HEADING, ROLE_PAGE, ROLE_SECTION): New roles for
-       complex document and form support.
-
-       * idl/Accessibility_State.idl:
-       (STATE_REQUIRED, STATE_TRUNCATED, STATE_ANIMATED)
-       (STATE_INVALID_ENTRY, STATE_SUPPORTS_AUTOCOMPLETION)
-       (STATE_SELECTABLE_TEXT, STATE_IS_DEFAULT): New states,
-       for support of complex documents and forms.
-
-       * idl/Accessibility_StreamableContent.idl:
-       (SeekType, IOError, NotSupported, NoPermission): New enum and exceptions, to
-       allow old bonobo-stream interfaces to be deprecated in the next
-       release.
-
-       * idl/Accessibility_Text.idl:
-       (getAttributeValue): New method, allows query-by-name of single
-       attributes.
-
-       * libspi/accessible.c:
-       Added support for new roles.  Implemented new methods
-       (impl_accessibility_accessible_get_application): New
-       (impl_accessibility_accessible_get_attributes): New
-
-       * libspi/component.c:
-       (impl_accessibility_component_get_alpha): New.
-
-       * libspi/image.c:
-       (impl_accessibility_image_get_locale): New.
-
-       * libspi/relation.c: Added support for new relation type.
-
-       * libspi/stateset.c: Added support for new state types.
-
-       * libspi/text.c: 
-       (impl_getAttributeValue): New.
-       
-       * libspi/util.c:
-       New prototypes for private methods
-       spi_init_any_nil,
-       spi_init_any_object, spi_init_any_string,
-       spi_init_any_rect.
-       
-       * libspi/spi_event.c: 
-       Use EventDetails in the event emission methods.
-
-       * cspi/spi-private.h:
-       (cspi_role_from_spi_role): Expose this adapter method, since
-       we need it in the bridge (see below).
-
-       * cspi/spi.h:
-       (AccessibleEvent_getSourceName):
-       (AccessibleEvent_getSourceRole):
-       (AccessibleEvent_getSourceApplication):
-       (AccessibleEvent_getSourceDetails):
-       New methods for interrogating/demarshalling
-       event details (i.e. source's accessible name, role, 
-       and host app).
-
-       * cspi/spi_accessible.c: Use cspi_role_from_spi_role.
-       Make use of the new EventDetails struct in events, if present.
-       (AccessibleEvent_getSourceName)
-       (AccessibleEvent_getSourceRole)
-       (AccessibleEvent_getSourceApplication)
-       (AccessibleEvent_getSourceDetails): Implement the newly exposed
-       methods from spi.h.
-       (Accessible_getAttributes): New, wraps
-       Accessibility_Accessible_getAttributes.
-       (Accessible_getHostApplication): New, wraps
-       Accessibility_Accessible_getApplication.
-
-       * cspi/spi_image.c:
-       (AccessibleImage_getImageLocale): New wrapper for
-       Accessibility_Image_get_imageLocale.
-
-       * cspi/spi_component.c:
-       (AccessibleComponent_getAlpha): New wrapper for
-       Accessibility_Component_getAlpha.
-       
-       * atk-bridge/bridge.c:
-       Use new prototyped for init_any methods.
-       (spi_atk_bridge_init_nil, spi_atk_bridge_init_object)
-       (spi_atk_bridge_init_string, spi_atk_bridge_init_rect)
-       (spi_atk_bridge_init_base): Wrappers
-       for spi_init_any_* methods, due to refactor; include extended
-       information in the Accessibility_EventDetails struct, for instance
-       accessible-name, Role, and containing Application.
-
-       * registryd/registry.c: 
-       Use new event emission (with EventDetails).
-       
-       * registryd/deviceeventcontroller.c:
-       Use new event emission (with EventDetails).
-
-2006-01-09  Kjartan Maraas <kmaraas@gnome.org>
-
-       * configure.in: Generate po/Makefile.in
-       * cspi/spi_main.c: Add #ifdef PRINT_LEAKS around a function
-       * cspi/spi_streamablecontent.c: 
-       (accessible_bonobo_stream_client_seek),
-       (AccessibleStreamableContent_seek): Remove unused vars.
-       * libspi/application.c: Missing header.
-       * libspi/text.c: (impl_getDefaultAttributes): Unused vars
-       * login-helper/login-helper.c: (login_helper_finalize),
-       (login_helper_init): Remove unused stuff
-       * registryd/deviceeventcontroller.c: (spi_dec_replace_map_keysym),
-       (spi_dec_init_mouse_listener), (is_key_released): Remove unused vars
-       and surround some with #ifdef GRAB_BUTTON.
-       * test/event-listener-test.c: (main), (report_event),
-       (report_caret_event), (report_detail_event),
-       (report_detail1_event), (report_bounds_event), (report_text_event),
-       (report_text_selection_event),
-       (report_active_descendant_changed_event),
-       (report_children_changed_event), (report_name_changed_event),
-       (report_description_changed_event), (report_parent_changed_event),
-       (report_window_event), (report_table_summary_event),
-       (report_table_header_event), (report_table_caption_event),
-       (report_table_row_description_event),
-       (report_table_column_description_event), (timing_test_event):
-       Remove a bunch of unused variables and fix a slew of format specifiers
-       * test/key-listener-test.c: (report_all_key_event): Format specifier
-       * test/keypad-test.c: (print_key_event): Same
-       * test/login-helper-server-test.c: (main): Include gtkmain.h and remove
-       unused var.
-       * test/screen-review-test.c: (main), (print_chunk_debug),
-       (review_buffer_get_text_chunk), (debug_chunk_list),
-       (string_guess_clip), (text_chunk_get_clipped_string),
-       (text_chunk_list_to_string), (get_screen_review_line_at):
-       Remove unused variables and fix format specifiers.
-       * test/simple-at.c: (report_text_event): Format specifier fix.
-       * test/stress-test.c: (main): Remove unused var.
-
-2005-12-29  Abel Cheung  <maddog@linuxhall.org>
-
-       * configure.in: Add zh_HK, zh_TW to ALL_LINGUAS
-       (yes I know that's useless)
-
-2005-11-20  Theppitak Karoonboonyanan  <thep@linux.thai.net>
-
-       * configure.in: Added "th" (Thai) to ALL_LINGUAS.
-
-2005-11-17  Michael Meeks  <michael.meeks@novell.com>
-
-       * atk-bridge/bridge.c (spi_atk_emit_eventv): 
-       urgh-fix embarassing typo.
-
-2005-11-16  Michael Meeks  <michael.meeks@novell.com>
-
-       * atk-bridge/bridge.c (spi_atk_emit_eventv):
-       do a faster, less problematic _unref call on this local
-       object, rather than a slower (potentially cross-thread
-       complicated) CORBA call.
-
-2005-11-02  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * atk-bridge/bridge.c: (spi_atk_bridge_signal_listener):
-       * cspi/spi_streamablecontent.c: (AccessibleStreamableContent_seek):
-       * registryd/deviceeventcontroller.c:
-       (spi_controller_notify_mouselisteners),
-       (impl_generate_keyboard_event):
-       * test/screen-review-test.c: (chunk_bounds_within):
-       * test/test-simple.c: (test_desktop): Remove some unused code
-       and fix compiler warnings. Closes bug #320049.
-
-2005-10-27 Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       (spi_controller_notify_keylisteners): Check
-       to make sure the event listener has requested 'preemptive'
-       status before pre-empting an event.
-       
-2005-08-29 Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in, README, NEWS: Release 1.6.5.
-       
-2005-07-25  Matthias Clasen  <mclasen@redhat.com>
-
-       * test/window-listener-test.c: Fix a printf
-       format error.  (#169453)
-
-2005-07-15  Bill Haneman <bill.haneman@sun.com>
-
-       * tests/test-simple.c: 
-       (key_listener_cb): Ensure that the keystring is dup'ed instead of
-       relying on the old string from the key event hanging around after
-       the event handler returns.  Fixes broken 'make check'.
-       
-2005-06-06  Swapnil Hajare  <dreamil@gmail.com>
-
-       * Added Marathi (mr_IN) translations.
-
-2005-05-27  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       (cspi_event_list_remove_by_cb): Fix the build.
-
-2005-05-26  Michael Meeks  <michael.meeks@novell.com>
-
-       * cspi/bonobo/cspi-bonobo-listener.c
-       (cspi_event_list_remove_by_cb): actually filter by callback.
-
-2005-05-25  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/registry.c (remove_listener_cb):
-       Make deregistration filter rules match the event emission rules.
-
-2005-05-25  Michael Meeks  <michael.meeks@novell.com>
-
-       * registryd/registry.c (remove_listener_cb),
-       (impl_accessibility_registry_deregister_global_event_listener),
-       (impl_accessibility_registry_deregister_global_event_listener_all): 
-       pass a closure to the remove callback to filter listeners more
-       accurately on remove.
-
-2005-04-05  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Revved to 1.6.4.
-       Remember to put quotes around XEVIE_LIBS assignment.
-       Fixed one of tertiary AC_CHECK_HEADER tests for XEvie.
-       Fixes bug #303694.
-
-       * tests/event-listener-test.c: Tweaked the tests - more detail
-       from caret events, and some interrogation of AccessibleText APIs.
-       Commented-out the bounds-changed events by default, since they can
-       be very noisy.
-
-2005-04-14  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * atk-bridge/bridge.c: (spi_atk_emit_eventv): Plug a leak.
-       * cspi/bonobo/cspi-bonobo-listener.c: (cspi_device_event):
-       Same here. Closes bug #167806
-
-2005-04-05  Bill Haneman <bill.haneman@sun.com>
-
-       * atk-bridge/bridge.c: 
-       (spi_atk_bridge_signal_listener):
-       Free the any._value if any._release is TRUE,
-       since the ORB won't do it for us in this case
-       [because this method is not a skel].
-       Fix for bug #168679.    
-       
-2005-03-30  Steve Murphy  <murf@e-tools.com>
-
-       * configure.in: Added "rw" to ALL_LINGUAS.
-
-2005-03-29  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Improved check for HAVE_XEVIE, to detect 
-       presence on XOrg, where -lXevie is a separate library.
-
-2005-03-08  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in, NEWS, README: Revved to 1.6.3.
-
-2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
-
-       * configure.in: Added "xh" to ALL_LINGUAS.
-
-2005-02-07  Bill Haneman <bill.haneman@sun.com>
-
-       * atk-bridge/bridge.c: 
-       (atk_bridge_init): Added missing NULL in g_strconcat(),
-       also check for symlink before logging to 
-       insecure directory.  Thanks to meissner@suse.de.
-
-2005-01-25  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * tests/login-helper-server-test.c: Add return call to main
-       function. Patch from Chris Lahey. Fixes bug #165129.
-
-2004-12-20  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi.h: Add description for SPI_RELATION_SUBWINDOW_OF.
-
-2004-12-09  Bill Haneman <billh@gnome.org>
-
-       * registryd/registry-main.c:
-       Added #define <string.h> for strrchr. (bug 160862).
-       Thanks to Vincent Berger for catching.
-       
-2004-12-09  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c (spi_atk_get_registry): Do not attempt to
-       restart registry process if the registry process is found to have died
-       and the current process is exiting.
-       (spi_atk_bridge_exit_func): Do not attempt to deregister the
-       application if the registry process has died.
-       (spi_atk_emit_eventv): Return if call to spi_atk_get_registry
-       does not return a registry object.
-       (spi_atk_tidy_windows): Give up if the registry process has died.
-
-       This fixes problems with hangs and crashes when logging out.
-
-2004-12-03  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/desktop.c: Add checking that we are not exiting before
-       calling spi_desktop_remove_application in 
-       abnormal_application_termination. Fix for bug #152147.
-
-2004-12-02  Bill Haneman <billh@gnome.org>
-
-       * configure.in, NEWS, README: Revved to 1.6.1.
-       
-       Patch from Padraig O'Briain <padraig.obriain@sun.com>
-       * atk-bridge/bridge.c:
-       (atk_bridge_init): Save the pid when we start, to detect forks.
-       (spi_atk_bridge_exit_func): Don't call the cleanup routines
-       if we're in a forked pid.
-       
-2004-10-09  Bill Haneman <billh@gnome.org>
-
-       * idl/Accessibility_LoginHelper.idl:
-       Improved inline documentation.
-
-2004-10-02  Jesus Bravo Alvarez  <suso@trasno.net>
-
-       * configure.in: Added gl (Galician) to ALL_LINGUAS
-
-2004-09-30  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * libspi/accessible.c:
-       (impl_accessibility_accessible_get_role_name),
-       (impl_accessibility_accessible_get_local_role_name):
-       NULL vs. 0 cleanups.
-       * libspi/component.c:
-       (impl_accessibility_component_get_accessible_at_point):
-       Same here.
-       * libspi/eventlistener.c: (spi_event_listener_new):
-       ANSIfication.
-       * libspi/stateset.c: (impl_compare): More of the same
-       * libspi/table.c: (impl_getRowDescription): Again.
-       * registryd/desktop.c: (spi_atk_desktop_get_type): Same
-       * registryd/deviceeventcontroller.c: (spi_clear_error_state),
-       (impl_generate_keyboard_event): Same.
-       * registryd/registry-main.c: (main): Same
-       * test/event-listener-test.c: (test_exit): Same
-       * test/keysynth-demo.c: (scan_state), (create_vkbd): Same
-       * test/keysynth-test.c: (test_key_synthesis): Same
-       * test/login-helper-server-test.c: (main): Fix warning.
-       * test/screen-review-test.c: (test_exit): Fix include.
-       * test/simple-at.c: (simple_at_exit), (_festival_init):
-       ANSIfication.
-
-2004-09-13  Padraig O'Briain <padraig.vriain@sun.com>
-
-       * configure.in, NEWS, README: Revved to 1.6.0.
-
-2004-09-12  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Rev and re-dist, since the 1.5.4 tarball
-       was missing the HTML docs.
-
-2004-09-12  Tomasz Kłoczko <kloczek@pld.org.pl>
-
-       * configure.in: only cleanups:
-       - better looking PKG_CHECK_MODULES() output,
-       - justification,
-       - declare in one common place required versions of other tools using
-         m4_define().
-
-2004-09-11  J.H.M. Dassen (Ray) <jdassen@debian.org>
-
-       * configure.in: libspi/accessible.c uses ATK_ROLE_EMBEDDED
-       (unconditionally) which was introduced in ATK 1.7.2. Bumped the
-       required ATK version accordingly.
-
-2004-09-03 Bill Haneman    <bill.haneman@sun.com>
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_display_name): Fix C99ism.
-       * atk-bridge/bridge.c:
-       (spi_display_name): Fix C99ism.
-       Patch from Jens Granseuer, jensgr@gmx.net.
-       
-2004-09-03  Gora Mohanty  <gmohanty@cvs.gnome.org>
-       * configure.in: Added "or" to ALL_LINGUAS.
-
-2004-08-20  Bill Haneman    <bill.haneman@sun.com>
-
-       * configure.in, NEWS, README: Revved to 1.5.4.
-       
-       * registryd/registry-main.c:
-       (main): Set the reg_env to use AT_SPI_DISPLAY instead of
-       $DISPLAY.  
-       
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_display_name): New convenience method, gets DISPLAY with
-       screen number stripped, if AT_SPI_DISPLAY isn't already set.
-       (cspi_init): Set the activation env value above before getting
-       the registry.
-       
-       * atk-bridge/bridge.c:
-       (spi_display_name): Create the AT_SPI_DISPLAY activation
-       environment for an app, based on the DISPLAY environment with the
-       screen number stripped off.
-       (atk_bridge_init):  Allow redirection of error messages to a log.
-       (spi_atk_bridge_get_registry): Call
-       bonobo_activation_set_activation_env_value for AT_SPI_DISPLAY.
-
-       Fixes for bugs #149962, #136986, #144086.
-       
-2004-08-16  Christian Rose  <menthos@menthos.com>
-
-       * configure.in: Added "bs" to ALL_LINGUAS.
-
-2004-08-12  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * configure.in: Added nb to ALL_LINGUAS.
-
-2004-09-03 Bill Haneman <bill.haneman@sun.com>
-
-       * cspi/spi_main.c:
-       (SPI_init): Return error code '2' if the activated
-       registry cannot be pinged. Fixes bug #147648.
-       
-2004-07-28 Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_init_mouse_listener): Don't do XGrabButton, 
-       rely on timer-poll instead, to avoid conflict with 
-       xstroke.
-       
-2004-07-20  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Revved to 1.5.3.
-
-       * idl/Accessibility_Role.idl: Added ROLE_EMBEDDED (bug #144415).
-
-       * libspi/accessible.c: Added support for ROLE_EMBEDDED.
-
-       * cspi/spi_accessible.c: Support for ROLE_EMBEDDED.
-
-       * cspi/spi-roletypes.h: Added SPI_ROLE_EMBEDDED.
-       
-2004-06-11  Bill Haneman <bill.haneman@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_do_registration): 
-       Register with ATK for AtkComponent:bounds-changed events.
-       (api_atk_bridge_signal_listener): 
-       Marshal the AtkRectangle info into the event notification
-       for object:bounds-changed events.
-       
-       * libspi/util.c:
-       (spi_init_any_rect): New method, inits a corba struct of
-       type Accessibility_BoundingBox from an AtkRectangle.
-
-       * libspi/spi-private.h: Declared spi_init_any_rect (above).
-       
-       * cspi/spi.h:
-       (SPIRect): New struct definition.
-       (SPI_freeRect): New declaration.
-       (AccessibleBoundsChangedEvent_getNewBounds): New, see below.
-
-       * cspi/spi_event.c:
-       (AccessibleBoundsChangedEvent_getNewBounds): New method,
-       implemented.  Gets the bounding box data from the CORBA_any
-       associated with a bounds-changed event notification.
-       (cspi_internal_event_get_rect): New, used internally by above method.
-       
-       * cspi/spi_main.c:
-       (SPI_freeRect): Implemented this new method, for freeing
-       SPIRect structs.
-       
-       * test/event-listener-test.c:
-       (main, report_bounds_event):
-       Added a test for object:bounds-changed events.
-       
-2004-06-01  Bill Haneman <bill.haneman@sun.com>
-
-       * test/login-helper-server-test.c:
-       (main): Fix C99-ism.  Thanks to Jens Granseuer.
-       
-2004-05-28  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * libloginhelper-1.0.pc.in:
-       * idl/Accessibility_LoginHelper.idl: 
-       * login-helper/Makefile.am:
-       * login-helper/login-helper.[ch]:
-       * test/login-helper-client-test.c:
-       * test/login-helper-server-test.c: Added files missing from CVS.
-       Files obtained from at-spi-1.5.2 tarball.
-
-2004-05-27  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Create login-helper/Makefile.  
-       Incremented micro version.
-
-       * Makefile.am:  Add login-helper subdir and pkgconfig data.
-       
-       * login-helper: New subdir.
-
-       * libloginhelper-1.0.pc.in: New.
-
-       * idl/Accessibility_LoginHelper.idl: New file, defines
-       interface whereby authentication clients can identify agents which
-       need access to services during the login process, e.g. screen lock
-       dialogs, etc.
-
-       * login-helper/Makefile.am : New.
-
-       * login-helper/login-helper.[ch] : New, implementation of
-       a LoginHelper base class.  Services needing LoginHelper can subclass.
-
-       * test/Makefile.am : Added test for login-helper, client and
-       server.
-
-       * test/app.c, at.c, keypad-test.c, keysynth-test.c, stress-test.c:
-       Use proper prefix in #include files.
-
-       * test/login-helper-client-test.c: New.
-       
-       * test/login-helper-server-test.c: New.
-
-2004-05-27  Alexander Shopov <ash@contact.bg>
-
-       * configure.in (ALL_LINGUAS): Added "bg" (Bulgarian)
-
-2004-05-14  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_main.c (cspi_object_unref): Add check that reference count
-       is positive. This should make it easier to detect inapprorpiate unref
-       calls.
-
-2004-05-11  James Henstridge  <james@daa.com.au>
-
-       * configure.in: remove GNOME_PLATFORM_GNOME_2 macro, which is a
-       no-op and deprecated.
-
-2004-05-03  Pablo Saratxaga  <pablo@mandrakesoft.com>
-
-       * configure.in: Added "wa" (Walloon) to ALL_LINGUAS.
-
-2004-04-28 Bill Haneman <billh@gnome.org>
-
-       * Makefile.am: Added --enable-gtk-doc to
-       DISTCHECK_CONFIGURE_FLAGS; fixes make distcheck.
-       
-2004-04-19 Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.5.1.
-
-       * registryd/deviceeventcontroller.c:
-       #define XK_LATIN1.
-       (DEControllerPrivateData): Added fields for 
-       reserved_keycode, reserved_keysym, and reserved_reset_timeout.
-       (spi_dec_replace_map_keysym): New internal utility for
-       replacing a keysym in the keymap - used to allow
-       synthesis of individual characters which aren't in the
-       current X keymap.
-       (spi_dec_reset_reserved): New; resets the changed keysym value 
-       in the map.
-       (keycode_for_keysym): We now try to deal with failed
-       XKeysymToKeycode requests by changing a keymap value
-       and returning a reserved keycode.  We now take 
-       a DEController pointer as first arg.
-       (spi_controller_register_with_devices): Call XkbGetMap with 
-       the XkbKeySymsMask.  Find the highest keycode in the current
-       keymap which doesn't have any grabs, and mark that one for
-       temporary re-mapping when out-of-range KeySyms are synthesized.
-       (dec_synth_keycode_press): Call XFlush after synthesizing the key
-       event.
-       
-2004-04-08  Guntupalli Karunakar  <karunakar@freedomink.org>
-
-       * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
-
-2004-03-24  Alexander Winston  <alexander.winston@comcast.net>
-
-       * configure.in: Added "en_CA" (Canadian English) to ALL_LINGUAS.
-
-2004-03-24  Bill Haneman <billh@gnome.org>
-
-       * cspi/spi.h:
-       (AccessibleTable_addRowSelection),
-       (AccessibleTable_addColumnSelection),
-       (AccessibleTable_removeRowSelection),
-       (AccessibleTable_removeColumnSelection):
-       Add declarations for spi wrappers which were
-       inadvertantly omitted.  Fixes bug #133413.
-
-       * configure.in:
-       Revved to 1.5.0 (unstable series for GNOME 2.7).
-       
-2004-03-24  Bill Haneman <billh@gnome.org>
-
-       * atk-bridge/bridge.c:
-       Bracketed some debug output in 
-       conditionals, to avoid printing it in normal use.
-       Fixes bug #136660.
-
-       * libspi/hyperlink.c:
-       Don't cast 'object' to ATK_OBJECT when constructing
-       an AtkAction interface for a hyperlink.
-       See discussion in bug #120659.
-
-       * test/key-listener-test.c:
-       (report_all_key_event): Send output to stderr,
-       not stdout, for consistency with the rest of the test callbacks.
-
-       * configure.in:
-       Add -lXext to XINPUT_LIBS. Fix for bug #132237.
-       Don't add X_LIBS to CFLAGS (Fix for bug #134332).
-       Incremented to 1.4.1 (but didn't dist yet - I'm going to 
-       try incrementing the revision AFTER doing a dist, at least
-       for awhile).
-       
-2004-03-22  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.4.0, libtool 9.14.9
-
-2004-03-17  Laszlo Peter  <laca@sun.com>
-
-       * libspi-1.0-uninstalled.pc.in: add idldir
-
-       * cspi-1.0-uninstalled.pc.in: add idldir
-
-2004-03-16  Gareth Owen <gowen72@yahoo.com>
-
-       * configure.in: Added "en_GB" to ALL_LINGUAS
-
-2004-03-15  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.3.16, 
-       libtool 9.13.9.
-       
-2004-03-15  Laszlo Peter  <laca@sun.com>
-
-       * libspi-1.0-uninstalled.pc.in: new file
-
-       * cspi-1.0-uninstalled.pc.in: new file
-
-       * configure.in: add the new pc files to AC_OUTPUT
-
-       * Makefile.am: add the new pc files to EXTRA_DIST
-
-2004-03-12  Bill Haneman <billh@gnome.org>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_key_listener):
-       Make sure to return consumed=FALSE if snoop 
-       event is not dispatched to listener.
-       Fixes #134037.
-       
-2004-03-01  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.3.15, 
-       libtool 9.12.9.
-       
-2004-03-07  Danilo Segan  <dsegan@gmx.net>
-
-       * configure.in: Added "sr@ije" to ALL_LINGUAS.
-
-2004-03-03  Guntupalli Karunakar  <karunakar@freedomink.org>
-
-       * configure.in: Added "pa" for Punjabi in ALL_LINGUAS.
-
-2004-03-01  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.3.14.
-       
-       * cspi/spi_main.c:
-       (SPI_exit): Removed "bye-bye" exit message.
-       Moved "leak" report to happen before the
-       iteration over the leaked refs list.
-       Don't PRINT_LEAKS unless DEBUG_OBJECTS is also #defined.
-       
-2004-02-24  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.3.13.
-
-       * docs/reference/cspi/Makefile.am:
-       Correct typo that was breaking the docs build.
-
-2004-02-11  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * autogen.sh: Require version 1.7 of automake.
-       
-       * configure.in: call GTK_DOC_CHECK([1.0])
-
-       * atk-bridge/Makefile.am: Remove use of LDFLAGS and CFLAGS
-
-       * docs/reference/cspi/Makefile.am: Update to use new gtk-doc.
-
-       * libspi/Makefile.am: Remove use of LDFLAGS and CFLAGS.
-
-       * test/Makefile.am:  Remove use of CFLAGS.
-
-       This fixes bug #132987.
-
-2004-02-11  Bill Haneman <billh@gnome.org>
-
-       * reverted most of Tomasz' patch below, since it was breaking
-       builds (see bug #134058).
-       
-2004-02-10  Tomasz Kłoczko <kloczek@pld.org.pl>
-
-       * docs/reference/cspi/at-spi-cspi.types: added empty file for
-         correct pass "make dist" (empty .. because seems no sach types in
-         header files with gtk-doc markups).
-       * docs/reference/cspi/Makefile.am, configure.in:
-         Added better gtk-doc support using GTK_DOC_CHECK aclocal macro
-         from gtk-doc >= 1.0 (modyfications based on scheme from atk).
-       * Makefile.am: added:
-         DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
-         for force correct pass generate documentation on "make distcheck".
-       * libspi/Makefile.am: fixes for automake >= 1.6.
-       * configure.in: Trivial cleanup: remove AC_SUBST(CFLAGS),
-         AC_SUBST(CPPFLAGS) and AC_SUBST(LDFLAGS). This variables are
-         substed by default.
-
-Sun Feb  8 11:20:50 2004  Matthias Clasen  <maclas@gmx.de>
-
-       * docs/reference/cspi/Makefile.am (install-data-local): Install
-       index.sgml since the doc autobuilder on widget.gnome.org looks for
-       that file.
-
-2004-02-02  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c (spi_atk_tidy_windows): Correct g_free call to
-       g_object_unref.
-
-2004-02-01  Robert Sedak  <robert.sedak@sk.htnet.hr>
-
-        * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
-
-2004-01-27  Brian Cameron <brian.cameron@sun.com>
-
-       * test/simple-at.c: Fixed null string problems that cause core
-         dumping problems on Solaris.
-
-2004-01-12  Bill Haneman <billh@gnome.org>
-       
-       * configure.in: Incremented version to 1.3.11.
-
-2004-01-05  Padraig O'Briain  <padraig.obriain@sun.com>
-
-        * docs/reference/cspi/at-spi-cspi-docs.sgml: Added XML in
-        DOCTYPE statement. Fixes bug #129728. Patch supplied by Sebastien
-        Bacher.
-
-2004-01-01  Roozbeh Pournader  <roozbeh@sharif.edu>
-
-       * configure.in: Added "fa" to ALL_LINGUAS.
-
-2003-12-20  Arafat Medini <lumina@silverpen.de>
-
-       * configure.in: Added "ar" to ALL_LINGUAS
-
-2003-12-16     Bill Haneman <billh@gnome.org>
-
-       * registryd/registry-main.c:
-       (main):
-       Set the reg_env DISPLAY variable before registering the
-       activated registry service.  Fixes bug #129479.
-
-2003-12-16     Mohammad DAMT  <mdamt@bisnisweb.com>
-
-       * configure.in: Added "id" in ALL_LINGUAS
-       * po/id.po: Indonesian translation by Ahmad Riza H Nst <ari@160c.afraid.org>
-
-2003-12-15  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/deviceeventcontroller.c (global_filter_fn):
-       When an event is consumed discard any XEvents were added to
-       the queue while dealing with the the event. This can happen if
-       processing of the event takes a long time. Call XUngrabKeyboard
-       if an event was discarded. This fixes bug $124837.
-       Only call wait_for_release_event for a KeyPress.
-       Use local variable display instead of spi_get_display().
-       (spi_controller_update_key_grabs): Move call to keycode_for_keysym
-       outside for loop.
-
-2003-12-11  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/deviceeventcontroller.c (spi_dec_translate_mask):
-       Allow for mask to contain values other than NumLock mask.
-       Fixes bug #129103.
-
-2003-12-10  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/devieceventcontroller.c:
-       (wait_for_release_event): Change first parameter from GdkEvent to 
-       XEvent.
-       (global_filter_fn); Correct call to wait_for_release_event.
-
-       Fixes bug #128912.
-
-2003-12-08  Bill Haneman <billh@gnome.org>
-
-       Version 1.3.10.
-
-       * registryd/ucs2keysym.c: New file.
-
-       * registryd/deviceeventcontroller.c:
-       (dec_keysym_for_unichar): Remove old partial implementation and
-       replace with call to ucs2keysym(), which is much more complete.
-       Thanks to Marcus G. Kuhn who put the original keysym2ucs.c into
-       the public domain.
-
-       Fixes bug #128824.
-
-2003-12-05  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Version 1.3.9.
-
-       * docs/reference/cspi/tmpl/spi_registry.sgml:
-       Added reference to libspi/keymasks.h to the
-        description of Registry queries: AccessibleKeyMaskType.
-       Fixes bug #118103.
-
-2003-12-04  Bill Haneman <billh@gnome.org>
-
-        Fix for bug #121974.
-       
-       * idl/Accessibility_Application.idl:
-       (Accessibility::LOCALE_TYPE): New enum, corresponds to
-       setlocale's LC_TYPEs.
-       (Accessibility::Application::getLocale): New method.
-       Allows clients to query the locale, by type, of an app.
-       
-       * cspi/spi.h:
-       * cspi/spi_application.c:
-       (AccessibleApplication_getLocale): New method, wraps IDL above.
-
-       * libspi/application.c:
-       (spi_application_class_init): Init epv entry for getLocale.
-       (impl_accessibility_application_get_locale): Impl for above.
-
-       * test/test-simple.c:
-       (test_application): Added assertion for getLocale, i.e.
-       that the string from AccessibleApplication_getLocale (app, type) 
-       is the same as that from setlocale (type, NULL);
-
-2003-12-03  Padraig O'Briain <padraig.obriain@sun.com>
-
-       *registryd/deviceeventcontroller.c: Add an idle handler which polls
-       the keyboard on a timeout intil the key state goes from pressed to
-       released. Fixes bug #111429.
-
-2003-12-03  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c: (atk_bridge_init): Create accessible application 
-       root object so that it is present when a context menu in an 
-       out-of-process applet is popped up.
-       (spi_atk_bridge_do_registration): Create acceessible application root
-       object only if it does not exist.
-
-       This fixes bug #125834.
-
-2003-12-01  Bill Haneman <billh@gnome.org>
-
-       Fix for bug #114926.  Thanks to Michael Meeks for some of this patch.
-
-       * cspi/spi.h:
-       Added enum for AccessibleStreamableContentSeekType.
-       (AccessibleStreamableContent_freeContentTypeList): New.
-       
-       * cspi/spi_streamablecontent.c:
-       (accessible_bonobo_stream_client_seek): New private method.
-       (AccessibleStreamableContent_seek): Implemented this method,
-       using Bonobo_Stream_seek.
-       (AccessibleStreamableContent_freeContentTypeList): New method
-       for freeing the return value from 
-       AccessibleStreamableContent_getContentTypes.
-       (stream_cache_item_free): Replaces stream_release; stop leaks.
-       (stream_release): removed.
-       (AccessibleStreamableContent_read): Use properly init'd CORBA_evs, 
-       free the memory properly.
-
-2003-12-02  Padraig O'Briain <padraig.obriain@sun.com>
-
-       Fix for bug #116009.
-
-       * cspi/spi-roletypes.h: Add SPI_ROLE_EDITBAR.
-
-       * cspi/spi_accessible.c (cspi_init_role_table): Add SPI_ROLE_EDITBAR.
-
-       * docs/reference/cspi/tmpl/spi-accessible.sgml: Add SPI_ROLE_EDITBAR
-
-       * idl/Accessibility_Role.idl: Add ROLE_EDITBAR.
-
-2003-12-01  Bill Haneman <billh@gnome.org>
-
-       Fix for bug/rfe #127463.
-       
-       * idl/Accessibility_Accessible.idl:
-       (getLocalizedRoleName): New.
-       (unimplemented4): Removed (replaced by above).
-
-       * libspi/accessible.c:
-       (impl_accessibility_accessible_get_local_role_name): New.
-       (spi_accessible_class_init): Add getLocalizedRoleName entry to
-       epv.
-       
-       * cspi/spi.h:
-       (Accessible_getLocalizedRoleName): New.
-
-       * cspi/spi_accessible.c:
-       (Accessible_getLocalizedRoleName): New.
-       
-2003-12-01  Bill Haneman <billh@gnome.org>
-       
-       Fix for bug #118581.
-       * idl/Accessibility_Text.idl:
-       (getDefaultAttributes): New.
-       (unimplemented4): Removed (replaced by above method).
-
-       * libspi/text.c:
-       (impl_getDefaultAttributes): New method.
-       (spi_text_class_init):
-       initialize the get_default_attributes slot in the epv.
-
-       * cspi/spi.h:
-       (AccessibleText_getDefaultAttributes): New prototype.
-
-       * cspi/spi_text.c:
-       (AccessibleText_getDefaultAttributes): New method.
-
-2003-11-06  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_accessible.c (cspi_init_relation_type_table): Do not
-       write beyond the end of the table. Fixes bug #120473.
-
-2003-09-30  Christian Rose  <menthos@menthos.com>
-
-       * configure.in: Added "eu" to ALL_LINGUAS.
-
-2003-09-28  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * configure.in: ALL_LINGUAS: Added no.
-
-2003-09-28  Gediminas Paulauskas  <menesis@delfi.lt>
-
-    * configure.in: Added lt to ALL_LINGUAS.
-
-2003-09-25  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c:
-       (atk_bridge_init): Register event listeners always even for 
-       out-of-process applet.
-       (spi_atk_bridge_toplevel_added): Remove call to 
-       spi_atk_bridge_event_type_consts as it is now called in atk_bridge_init
-       (spi_atk_bridge_toplevelk_removed): Remove call to 
-       spi_atk_deregister_event_listenersa as the listeners are now always
-       registered
-       (spi_atk_bridge_register_application): Remove call to
-       spi_atk_register_event_listeners as it is not done in atk_bridge_init
-
-       This fixes bug #120991.
-
-       * libspi/table.c (impl_getColumnDescription): Correct typo,
-       pointed out by Bolian.Yin@sun.com.
-
-2003-09-21  Ã\85smund Skjæveland  <aasmunds@fys.uio.no>
-
-       * configure.in: Added nn to ALL_LINGUAS (which is commented out).
-
-2003-09-08  Bill Haneman <billh@gnome.org>
-
-       * configure.in: Revved to 1.3.7.
-
-       This is the GNOME 2.4.0 release of at-spi.
-
-       * docs/reference/cspi/Makefile.am:
-       Removed spurious inclusion of 'index.sgml' in the
-       html directory; this was breaking make distcheck and
-       also some other build environments.
-
-2003-09-05  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/registry.[ch}:
-       Add queue_handler_id and focus_object to SpiRegistry data structure.
-       (registry_flush_event_queue): If event being discarded is 
-       "state-change:focused" store object as focus_object.
-       (registry_start_queue): Remove queue handler and focus object
-       if present.
-       (registry_discard_event): New function which discards a focus event
-       if we had stored focus object in the registry.
-       (registry_queue_event): Add new check that is_queueing is set as this
-       function is reentrant.
-       (registry_filer_event): Add call to registry_discard_event.
-       
-       This resolves issues raised in bug #108664.
-       
-2003-09-05  Taneem Ahmed  <taneem@bengalinux.org>
-
-       * configure.in: Added "bn" to ALL_LINGUAS.
-
-2003-09-04  Bill Haneman <billh@gnome.org>
-
-       * cspi/spi_event.c: Documentation improvements for
-       (SPI_registerAccessibleKeylistener).
-
-       * docs/reference/tmpl/spi_registry.sgml:
-       Documentation improvements for SpiAccessibleKeylistenerCB.
-
-2003-09-02  Mugurel Tudor  <mugurelu@go.ro>
-
-       * configure.in: Added "ro" to ALL_LINGUAS.
-
-
-2003-09-01  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_main.c (cspi_object_return): Ensure that reference count is
-       not decremented to zero. Fixes bug #120725.
-
-2003-08-30  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>
-
-       * configure.in: Added "ja" to ALL_LINGUAS.
-
-2003-08-22  Samúel Jón Gunnarsson  <sammi@techattack.nu>
-
-       * configure.in: Added "is" to ALL_LINGUAS.
-       
-2003-08-22  Christian Rose  <menthos@menthos.com>
-
-       * configure.in: Added "nl" to ALL_LINGUAS.
-
-2003-08-19  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi-private.h: Add declaration for _cspi_exceptoin_throw
-       * cspi/spi_accessible.c (cspi_init_relation_type_table): Add call
-       to return a value.
-       * cspi/spi_event.c: (AccessibleEvent_unref); Add casts to gfree
-       arguments.
-       * cspi/spi_main.c (SPI_Exception_getSourceType); Return the correct
-       type for unspecified exception.
-       * cspi_streamablecontect): Add include of string.h for memcpy.
-       (stream_release): Correct call to bonobo_object_release_unref
-       (stream_cache_item_free): Correct call to bonobo_object_release_unref
-       * cspi/bonobo/spi-bonobo.c: (cspi_check_event): Add cast to second
-       argument of _cspi_expection_throw.
-       * libspi/hyperlink.c: Add include of libspi/action.h:
-       (spi_hyperlink_new): Cast argument to spi_action_interface_new.
-       * libspi/streamablecontent.c: add include of libspi/component.h.
-       * regisrtyd/deviceeventcontroller.c:
-       (spi_dec_translate_mask): Removed unused variable priv.
-       (dec_synth_keysym): Initialize lock_mods to avoid compilker warning/
-       * registryd/registry.c:
-       (registry_filter_event): Remove unused variable queue_is-empty.
-       (impl_registry_notify_event): Use correct modifier in fprintf call.
-
-       This fixes compiler warnings reported in bug #120220.
-       
-2003-08-18  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/registryd.c: Remove this file.
-
-2003-08-17  Sanlig Badral  <badral@openmn.org>
-
-       * configure.in: Added mn to ALL_LINGUAS.
-
-2003-08-16  Tõivo Leedjärv  <toivo@linux.ee>
-
-       * configure.in: Added et to ALL_LINGUAS.
-
-2003-08-13  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * test/event-listener-test.c: Change active-descendant to 
-       active-descendant-changed.
-
-2003-08-10  Sami Pesonen  <sampeson@iki.fi>
-
-       * configure.in: Added "fi" in ALL_LINGUAS.
-
-2003-08-08  Guntupalli Karunakar  <karunakar@freedomink.org>
-
-       * configure.in: Added "hi" in ALL_LINGUAS.
-
-2003-08-08  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * configure.in: Revved to 1.3.6.
-
-       * NEWS: updated.
-       
-2003-08-07  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/deviceeventcontroller.c
-       (spi_device_event_controller_object_finalize): Fix typo in previous 
-       commit.
-
-2003-08-07  Marc Mulcahy  <marc.mulcahy@sun.com>
-
-       * registryd/deviceeventcontroller.c
-       (spi_device_event_controller_object_finalize): Fix build on
-       systems without XEvIE.
-       
-2003-08-06  Brian Cameron <Brian.Cameron@sun.com>
-
-       * acconfig.h, configure.in, registryd/Makefile.am,
-         registryd/devicecontoller.[ch]: Add XEViE support.
-
-2003-08-06  Wang Jian  <lark@linux.net.cn>
-
-       * configure.in: Added "zh_CN" to ALL_LINGUAS.
-
-2003-08-06  Metin Amiroff<metin@karegen.com>
-
-       * configure.in: Added "az" (Azerbaijani) to ALL_LINGUAS
-
-2003-08-06  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * idl/Accessibility_Registry.idl: Put MODIFIER_SHIFTLOCk and
-       MODIFIER_ALT in correct place. 
-
-       This fixes part of bug #118114.
-
-2003-07-30  Alessio Frusciante  <algol@firenze.linux.it>
-
-       * configure.in: Added "it" (Italian) to ALL_LINGUAS.
-
-2003-07-28  Changwoo Ryu  <cwryu@debian.org>
-
-       * configure.in: Added "ko" to ALL_LINGUAS.
-
-2003-07-28  Ole Laursen  <olau@hardworking.dk>
-
-       * configure.in: Added "da" to the commented out ALL_LINGUAS.
-
-2003-07-27  Laurent Dhima  <laurenti@alblinux.net>
-
-       * configure.in: Added "sq" to ALL_LINGUAS.
-
-2003-07-27  Hasbullah Bin Pit  <sebol@ikhlas.com>
-                                                                                
-       * configure.in: Added 'ms' (Malay) in ALL_LINGUAS.
-
-2003-07-24  Pablo Saratxaga  <pablo@mandrakesoft.com>
-
-       * configure.in: updated ALL_LINGUAS list
-
-2003-07-24  Dmitry G. Mastrukov  <dmitry@taurussoft.org>
-
-       * configure.in: Added Belarusian to ALL_LINGUAS.
-
-2003-07-23  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_event.c (AccessibleEvent_unref): Call CORBA_free for
-       event->data.
-       * cspi/bonobo/cspi-bonobo-listener.c (cspi_event): Call 
-       CORBA_any__alloc to allocate CORBA_Any in InternalEvent.
-
-       This fixes bug #116949.
-
-2003-07-22  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_registry.c (SPI_registerAccessibleKeyStrokeListener):
-       Correct CSPI to SPI in function documentation.
-
-       This fixes bug #118054.
-
-2003-07-16  Dmitry G. Mastrukov  <dmitry@taurussoft.org>
-
-       * configure.in: Added Russian to ALL_LINGUAS.
-
-2003-07-16  Duarte Loreto <happyguy_pt@hotmail.com>
-
-        * configure.in: Added Portuguese (pt) to ALL_LINGUAS.
-
-2003-07-14  Danilo Å Segan  <dsegan@gmx.net>
-
-       * configure.in: Added "sr" and "sr@Latn" (Serbian) to ALL_LINGUAS.
-
-2003-07-10  Joel Brich <joel.brich@laposte.net>
-
-       * configure.in: Added "eo" (Esperanto) to ALL_LINGUAS.
-
-2003-07-07  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>
-
-       * configure.in (ALL_LINGUAS): Added "es" (Spanish).
-
-2003-07-07  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_event.c (AccessibleEvent_unref): Update code to free
-       resources allocated for AccessibleEvent. See cspi_event().
-
-       * cspi/spi_streamablecontent.c (cspi_streams_close_all): Set
-       static variable streams to NULL.
-
-       * cspi/bonobo/cspi-bonobo-listener.c (cspi_event):
-       Update so that AcessibleEvent_ref will work.
-
-       This fixes bug #116624.
-
-2003-07-06  Jordi Mallach  <jordi@sindominio.net>
-
-       * configure.in (ALL_LINGUAS): Added "ca" (Catalan).
-
-2003-07-06  Christophe Merlet  <redfox@redfoxcenter.org>
-
-       * configure.in: Added "fr" (French) to ALL_LINGUAS.
-
-2003-07-02  Christian Neumair  <chris@gnome-de.org>
-
-       * configure.in: Added "de" (German) to ALL_LINGUAS.
-
-2003-07-01  Dafydd Harries  <daf@parnassus.ath.cx>
-
-       * configure.in: Added "cy" (Welsh) to ALL_LINGUAS.
-
-2003-07-01  Miloslav Trmac  <mitr@volny.cz>
-
-       * configure.in: Addded "cs" to ALL_LINGUAS. Why is it commented out?
-
-2003-07-01  Artur Flinta  <aflinta@cvs.gnome.org>
-
-       * configure.in: Added "pl" to ALL_LINGUAS.
-
-2003-07-01  Gil "Dolfin" Osher <dolfin@rpg.org.il>
-
-       * configure.in: Added "he" (Hebrew) to ALL_LINGUAS.
-
-2003-06-30  Bill Haneman <bill.haneman@sun.com>
-       
-       * libspi/action.c:
-       (get_action_from_servant): 
-       Removed assertion that action is implemented on an AtkObject.
-
-       * libspi/hyperlink.c:
-       (spi_hyperlink_new):
-       Aggregate AccessibleAction interface on the hyperlink object if
-       the object implements AtkAction.  (This convention is used in
-       gtkhtml2.)
-       
-2003-06-30  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Revved to 1.3.5.
-       
-       * registryd/Accessibility_Registry.server.in.in:
-       Marked up appropriate strings for translation.
-       
-       * atk-bridge/bridge.c: Marked a couple of
-       user-visible warnings for translation.  Questionable
-       whether they are really useful, but possibly so.
-
-       
-2003-06-28  Christian Rose  <menthos@menthos.com>
-
-       * configure.in: Added "sv" to ALL_LINGUAS.
-
-2003-06-26  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/registry.c: 
-       (spi_registry_object_finalize): Unref the deviceeventcontroller.
-       (registry_defer_on_event): Defer focus: events, this is an
-       improvement to the patch for bug #108664.
-
-       * TODO: Update with 2.4/"Dev Complete" items.
-
-2003-06-26  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_init_event_type_consts): Ensure that this function only
-       looks up signals once.
-       (atk_bridge_init): Call spi_atk_bridge_init_event_type_consts only
-       if doing registration.
-       (spi_atk_bridge_toplevel_added): Call spi_bridge_init_event_type_consts
-       when doing registration.
-       
-       This fixes bug #115014.
-
-2003-06-25  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c:
-       (atk_bridge_init): Add signal handler for children-changed:remove on
-       root when in a BonoboComponent.
-       (spi_atk_bridge_toplevel_added): Call spi_atk_bridge_do_registration
-       for first toplevel only other incrememt variable toplevels.
-       (spi_atk_bridge_toplevel_removed): For last toplevel deregister 
-       application and remove listeners.
-       (spi_atk_bridge_get-registry): Change NULL to CORBA_OBJECT_NIL for
-       consistency.
-       (spi_atk_deregister_event_listeners): New function which removes
-       listeners.
-       (reinit_register_vars): New fuction which reinitializes variables.
-
-       This fixes bug #111578.
-
-2003-06-13  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: version 1.3.4.
-
-       * cspi/spi_accessible.c:
-       Changed test of obj==NULL to obj==CORBA_OBJECT_NIL.
-
-
-2003-06-13  Michael Meeks  <michael@ximian.com>
-
-       * cspi/bonobo/cspi-bonobo.c (cspi_check_ev): use it.
-
-       * cspi/spi_main.c (cspi_peek_ev): impl.
-
-2003-06-11  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi-roletypes.h: Add role SPI_ROLE_AUTOCOMPLETE
-
-       * cspi/spi_accessible.c (cspi_init_role_table): Add ROLE_AUTOCOMPLETE.
-
-       * docs/reference/cspi/tmpl/spi_accessible.sgml: Add role 
-       SPI_ROLE_AUTOCOMPLETE
-
-       * idl/Accessibility_Role.idl: Add role ROLE_AUTOCOMPLETE
-
-       * libspi_accessible.c(spi_init_role_lookup_table): Add lookup
-       for ROLE_APPLICATION and ROLE_AUTOCOMPLETE
-
-2003-06-11  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/streamablecontent.h:
-       * libspi/streamablecontent.c:
-       New files, provide implementation/wrappers for
-       Accessibility_StreamableContent.
-
-       * cspi/spi_streamablecontent.c:
-       Connected the C wrappers to the libspi C bindings.
-       (AccessibleStreamableContent_close): New method.
-
-       * cspi/spi.h:
-       (AccessibleStreamableContent_close): New method, needed
-       since we have an "open, [seek], read, close" model in cspi.
-       
-2003-06-11  Bill Haneman <bill.haneman@sun.com>
-
-        Fix for #108664; Padraig's revision of my original patch.
-       
-       * registryd/registry.h:
-       Added event queue list, is_queuing, and exit_notify_timeout
-       to the registry struct.
-       
-       * registryd/registry.c:
-       (registry_init): Initialize new struct from registry.h.
-       (impl_registry_notify_event):
-       Filter events before notifying, in case some need to be
-       deferred, etc.
-       (registry_filter_event): New,
-       we defer certain incoming events (for instance 
-       window:deactivate) because we may wish to hide
-       or reject them based on pending events.  This is
-       mostly a workaround for bug #108664.
-       (registry_queue_event, registry_start_queue): New.
-       (registry_defer_on_event): Test event to see if it
-       initiates queuing.
-       (registry_reset_on_event): Returns TRUE if the
-       event should cause a queue reset.
-       (registry_discard_on_event): Returns TRUE if the event
-       should cause the previous queue contents to be discarded.
-       (registry_timeout_flush_queue): Flushes the pending event
-       queue if no reset/discard-triggering events have come in 
-       within the timeout period.
-       (registry_emit_event): New.
-       (registry_clone_notify_context): New, used when queueing the 
-       event notify contexts.
-
-2003-06-10  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Version revved to 1.3.2, lt 0.9.2
-       Incremented ATK required version to 1.3.4.
-
-       * cspi/spi_registry.c:
-       (SPI_generateKeyEvent):
-       We now pass the keystring along if it's non-null.
-       
-       * registryd/deviceeventcontroller.c:
-       (keysym_mod_mask): New method, returns modifier mask 
-       required to generate a keysym from a given keycode.
-       (dec_synth_keysym): New method.
-       (dec_synth_keystring): New method.
-       (dec_get_modifier_state): New method.
-       (dec_lock_modifiers): New
-       (dec_unlock_modifiers): New.
-       (dec_keysym_for_unichar): New, rather brute-force
-       conversion from UCS-4 to X KeySyms.  Only works for
-       Latin at the moment, with partial implementations for
-       Greek, Hebrew, and (incomplete) Katakana.
-       (impl_generate_keyboard_event): Now implement 
-       "KEYSTRING" synthesis and implement "KEYSYM"
-       synthesis properly.
-       (keycode_from_keysym): Improved, passes a returned
-       modmask value now if the corresponding param is non-NULL.
-       
-       Fixes bugs #92143  and #109776.
-
-       * test/Makefile.am:
-       * test/keysynth-test.c:
-       New test program for key synthesis, to confirm fixes for
-       above bugs.
-
-
-2003-06-10  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi.h: Add relation SPI_RELATION_POPUP_FOR
-
-       * cspi/spi_accessible.c (cspi_init_relation_type_table):
-       Add line for RELATION_POPUP_FOR
-
-       * docs/reference/cspi/tmpl/spi_relation.sgml: 
-       Add relation SPI_RELATION_POPUP_FOR
-
-       * docs/reference/cspi/tmpl/spi_stateset.sgml: 
-       Change state SPI_STATE_INCONSISTENT to SPI_STATE_INDETERMINATE 
-
-       * idl/Accessibility_Reloation.idl: Add RELATION_POPUP_FOR.
-
-       * libspi/relation.c (spi_init_relation_type_table): 
-       Add line for RELATION_POPUP_FOR
-
-2003-06-10  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/atk-bridge/bridge.c (spi_atk_bridge_exit_func): Check if 
-       there are still windows which have not been deleted and emit 
-       window:deactivate, if necessary and window:destroy events.
-       This fixes bug #114370. The change on June 5th was not correct.
-
-2003-06-09  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Revved to 1.3.3. (lt-version 9:2:9, .so.0.9.2)
-
-       * cspi/spi.h: 
-       (SPI_dupString): Allow dup-ing of a string such that it's safe to
-       SPI_freeString it.
-       New methods for client exception handling and interception.
-       (SPI_exceptionHandlerPush): New - push a handler onto the stack.
-       (SPI_exceptionHandlerPop): You guessed it... 
-       (SPI_getSourceType): Return the type of object which offended.
-       (SPI_getExceptionCode): Return an enum code telling, possibly, 
-       what sort of thing went wrong, i.e. DISCONNECT (object died), etc.
-       (SPIAccessibleException_getSource): get the source object for
-       exceptions that come from Accessibles, if SPIExceptionSourceType is
-       SPI_EXCEPTION_SOURCE_ACCESSIBLE.
-       (SPIException_getDescription): New, returns a string description of
-       the problem.  [Not yet a stable ABI, strings are not frozen]
-
-       * cspi/spi-private.h:
-       Added implementation details of opaque SPIException
-       structure.
-       
-       * cspi/spi_main.c:
-       Implementations of above.  Also
-       (_cspi_exception_throw): new private method that 
-       dispatches exceptions to handlers, called from cspi-bonobo.c
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_check_ev): call _cspi_exception_throw.
-       Don't print a warning message if the exception has been 
-       handled by _cspi_exception_throw.
-       
-2003-06-05  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/atk-bridge/bridge.c (spi_atk_bridge_exit_func): Check if 
-       there are still windows which have not been deleted and emit 
-       window:deactivate, if necessary and window:destroy events.
-       This fixes bug #114370.
-
-2003-06-03  Bill Haneman <bill.haneman@sun.com>
-
-       * cspi/spi_main.c:
-       (cspi_accessible_is_a): Make non-fatal 
-       if the object reference is dead.
-
-Mon Jun  2 15:35:29 2003  Jonathan Blandford  <jrb@redhat.com>
-
-       * cspi/spi_main.c: #include <stdio.h>
-       * test/simple-at.c: ditto
-       * test/event-listener-test.c: ditto
-       * test/screen-review-test.c: ditto
-
-2003-05-30  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c (main): use CORBA_ORB_perform_work
-       instead of an unnecessary linc_ call.
-
-2003-05-20  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi-statetypes.h, cspi/docs/tmpl/spi_stateset.sgml:
-       Add SPI_STATE_INDETERMINATE.
-
-       * cspi/spi_accessible.c (spi_state_to_corba): Add support for
-       INDETERMINATE.
-
-       * idl/Accessibility_State.idl: Add support for STATE_INDETERMINATE.
-
-       * libspi/stateset.c (init_state_type_tables): Add support for
-       INDETERMINATE.
-
-2003-05-19  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * configure: Update versions of atk and gail required.
-       This fixes bug #113268.
-       
-2003-05-02  Bill Haneman  <bill.haneman@sun.com>
-
-       * configure.in: Revved micro version to 1.3.1 (because of build fix).
-
-2003-05-02  Frederic Crozat  <fcrozat@mandrakesoft.com>
-
-       * libspi/Makefile.am:
-       Ensure headers are generated before being used by c sources.
-
-2003-05-01  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Simplified lt versioning rules.
-       Incremented version to 1.3.0, to indicate that we're on the
-       unstable branch now.  
-
-2003-04-29  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * docs/reference/cspi/Makefile.am, docs/reference/idl/Makefile.am:
-       Add MKDB_OPTIONS=--outtput-format=xml
-
-       * docs/reference/cspi/at-spi-cspi-docs.sgml
-       docs/reference/idl/at-spi-idl-docs.sgml:
-       Convert to Docbook XML.
-
-       This fixes bug #111793.
-
-2003-04-25  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi-listener.h: Add documentation for AccessibleDeviceEventType,
-       AcccessibleKeyEventType, AccessibleKeyMaskType.
-
-       * cspi/spi-roletypes.h: Update documentation for AccessibleRole.
-
-       * cspi/state-types.h: Add documentation for AccessibleState.
-
-       * cspi/spi.h: Add documentation for AccessibleTextBoundaryType,
-       AccessibleTextClipType, AccessibleRelationType, AccessibleCoordType,
-       AccessibleKeySynthType, AccessibleKeyListenerSyncType, 
-       AccessibleComponentLayer.
-
-       * cspi/spi_event.c, cspi/spi_registry.c, cspi/spi_text.c: Fix bugs 
-       in documentation.
-
-       * docs/reference/cspi/at-spi-cspi-sections.txt: Add undefined symbols.
-
-       * docs/reference/cspi/tmpl/spi_registry.sgml: Add description of 
-       Accessible.  Add description of AccessibleEvent, 
-       AccessibleEventListenerCB.
-
-       * docs/reference/cspi/tmpl/spi_event.sgml: Update with extra 
-       documentation.
-
-       * docs/reference/cspi/tmpl/spi_registry.sgml: Update with extra 
-       documentation. Add description of AccessibleKeystrokeListenerCB,
-       AccessibleKeyEventMask, AccessibleModifierMaskType, 
-       AccessibleKeyMaskType, AccessibleKeystroke, AccessibleDeviceEvent,
-       AccessibleDeviceEventMask, AccessibleDeviceListenerCB. 
-
-       * docs/reference/cspi/tmpl/spi_stateset.sgml: Add description of
-       AccessibleStateSet.
-
-       * docs/reference/cspi/tmpl/spi_text.sgml: Update with extra 
-       documentation.
-
-       This fixes bug #104730.
-
-2003-04-24  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c (spi_init_keystroke_from_atk_key_event):
-       Set is_text field of Accessibility_DeviceEvent data structure.
-
-       * cspi/bonobo/cspi-bonobo-listener.c (cspi_device_event): Set
-       is-text field of AccessibleDeviceEvent data structure.
-
-       This addresses part of bug #108666.
-
-       * registryd/devcieeventcontroller.c: Unset debug option.
-
-2003-04-14  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/accessible.c:
-       (cpi_initial_relation_type_table): New function which initializes 
-       mapping between Accessibility_RelationType and AccessibleRelationType.
-       (cspi_relation_type_from_spi_relation_type): New function which
-       translates an Accessibility_RelationType into an AccessibleRelationType.
-       (AccessibleRelation_getRelationType): Use 
-       cpi_relation_type_get_spi_relation_type to return correct value.
-       (spi_state_to_corba): Return correct type for default case.
-
-       * cspi/spi_registry.c (SPI_registerAccessibleKeyStrokeListener):
-       Use Accessibility_EventType instead of Accessibility_KeyEventType.
-
-       * cspi/cspi-bonobo-listener.c:
-       Remove semicolon after BONOBO_TYPE_FUNC. Add casts to avoid compiler
-       warnings.
-
-       * libspi/accessible.c, libspi/action.c, libspi/application.c,
-       libspi/base.c, libspi/component.c, libspi.devicelistener.c,
-       libspi/editabletable.c, libspi/hyperlink.c, libspi/hypertext.c,
-       libspi/image.c, libspi/listener.c, libspi/selection.c, 
-       libspi/stateset.c, libspi/table, libspi/text.c, libspi/value.c, 
-       registryd/desktop.c, registryd/registry.c:
-       Remove semicolon after BONOBO_TYPE_FUNC_FULL.
-
-       * libspi/eventlistener.c
-       Remove semicolon after BONOBO_TYPE_FUNC.
-
-       * libspi/relation.c:
-       Remove semicolon after BONOBO_TYPE_FUNC_FULL.
-       (spi_init_relation_type_table): Initialize using correct type.
-
-       * registryd/desktop.c:
-       Remove semicolon after BONOBO_TYPE_FUNC_FULL.
-       (spi_keystroke_from_x_key_event): Use Accessibility_EventType instead 
-       of Accessibility_KeyEventType.
-
-       * test/key-listener-test.c (report_tab_key_event): Use fprintf
-       instead of g_print.
-
-       * tests/simple-at.c, tests/screen-review-test.c:
-       Add include for <strings.h>.
-
-       * tests.stress-test.c:
-       Add includes for <unistd.h> and <bonobo/bonobo-main.h>
-
-       These changes fix compiler warnings when using FORTE compiler on
-       Solaris; fixes bug #107479.
-
-       
-2003-04-10  Bill Haneman <bill.haneman@sun.com>
-
-
-       * configure.in: revved to 1.1.10
-       
-       * libspi/keymasks.h:
-       (SPI_KEYMASK_NUMLOCK): Added.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_key_event_matches_listener): AND with a smaller
-       bitmask (as we should).  
-       (spi_dec_translate_mask): 
-       New method, sets the virtual NumLock modifier bit
-       if numlock is on.  Eventually it can handle other virtual
-       modifier bits if needed, or other marshalling from
-       at-spi modifier masks to platform (X) masks.
-       (spi_dec_key_listener_new):
-       Call spi_dec_translate_mask to set up virtual mod bits
-       in the 'mask' field when creating a new listener struct.
-       (spi_dec_emit_modifier_event):
-       Set the virtual (i.e. NumLock) bits before emitting event.
-       (spi_controller_register_with_devices):
-       Query for the NumLock modifier 'physical' bit if Xkb is
-       present, for use in above methods.
-
-       Fix for 107261.
-       
-2003-04-10  Bill Haneman <bill.haneman@sun.com>
-       
-       * registryd/deviceeventcontroller.c:
-       (spi_keystroke_from_x_key_event):
-       Instead of checking to see if the keysym is
-       printable, check the string from XLookupString
-       if available, get the first unicode character from it,
-       and call g_unichar_isprint to determine whether the
-       is_text flag should be TRUE or FALSE.
-       
-       Fix for bug 110419.
-
-2003-04-02  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c: Add support for extended events
-       * cspi/spi_event.c: Add documentation and implementation for
-       extended events.
-       * tests/event-listener-test.c: Add tests for extended events.
-
-       This fixes bugs #100424 and #100426.
-2003-04-02  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * configure.in: Add 100 to AT_SPI_BINARY_AGE and update calculation
-       of LT_CURRENT. This fixes bug #89350.
-
-2003-04-01  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c (spi_bridge_signal_listener):  Add check for
-       number of signal parameter values before accessing them. This fixes
-       bug #109626.
-
-2003-04-01  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Fixed duplicate inclusion of -lspi.
-       * branched for gnome-2-2/HEAD.  
-       [created tag "gnome-2-2"]
-
-2003-03-07  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: 1.1.9 release.
-       * NEWS: updated.
-       
-2003-03-07  Bill Haneman <bill.haneman@sun.com>
-
-       [needed by GOK, to fix bugs 107985 and 107988]
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_clear_unlatch_pending):
-       New method, unsets the 'unlatch' mask for XkbStateNotifyEvents.
-       (spi_dec_set_unlatch_pending):Revised DEBUG comment.
-       (spi_dec_init_mouse_listener):Emit warning if mouse button
-       passive grab fails.
-       (spi_device_event_controller_forward_mouse_event):
-       Removed unnecessary parens from a conditional.
-       (global_filter_fn):Added TODO comment.
-       (impl_generate_keyboard_event):
-       Cancel a pending relatch if a 'delatching' key was 
-       synthesized.
-       
-2003-03-07  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c:
-       Change atk_signal_child_changed to atk_signal_children_changed. 
-       Reorganize code in spi_atk_bridge_signal_listener().
-
-       * test/event-listener-test.c:
-       Add children_changed_listener and report_children_changed_event()
-       to test AccessibleChildEvent_getChildAccessible.
-
-2003-03-05  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * cspi/spi_event.c (cspi_internal_event_get_text): Change
-       g_strdup to CORBA_String_dup (bug #105291)
-
-       * test/event-listener-test.c (report_text_event): Add call to
-       SPI_freeString.
-
-2003-02-28  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       (spi_keystroke_from_x_key_event): 
-       Fix string and keysym return codes to match modifier state. 
-       [bug #107256]
-
-2003-02-28  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       (spi_keystroke_from_x_key_event): 
-       Fix segv due to improper use of isprint(c). [bug #107254]
-
-2003-02-24  Bill Haneman <bill.haneman@sun.com>
-
-       * cspi/spi_text.c:
-       (get_accessible_text_boundary_type):
-       Move default return value to (new) default case in switch.
-       (get_accessible_text_clip_type):
-       Move default return value to (new) default case in switch.
-       
-       * libspi/application.c:
-       (lookup_toolkit_event_for_name, reverse_lookup_name_for_toolkit_event):
-       Remove unused methods.
-       (impl_accessibility_application_register_object_event_listener):
-       Remove unused methods.
-
-       * libspi/value.c:
-       Added #include of <math.h>.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_ungrab_mouse): Bracketed with #ifdefs, since 
-       we don't currently use this method.
-       (spi_dec_init_mouse_listener): Don't call XkbGetMap unless
-       have_xkb is TRUE.
-       (impl_generate_key_event):
-       Remove unused variables.
-       (impl_generate_mouse_event):
-       Initialize button to zero, just in case we get an invalid
-       input.  Added support for mouse buttons 4 and 5.
-       (spi_device_event_controller_new):
-       Removed unused variable declaration for 'private'.
-       (registry.h):
-       Added #include of <gdk/gdk.h>
-
-2003-02-14  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * configure.in: Update to work when X is not installed in expected 
-       location. Fixes bug #105836.
-
-       * atk-bridge/bridge.c
-       (spi_atk_bridge_init_event_type_consts): Look up "link-selected" for
-       AtkHypertext
-       (spi_atk_register_event_listener): Add signal listener for 
-       link-selected
-       (spi_atk_bridge_signal_listener): Event event when link-selected
-       signal is emitted. (bug #104622)
-
-       * cspi/spi_event.c (cspi_internal_event_get_text): Call g_strdup()
-       on returned string. (bug #105291)
-
-       * test/event-listener-test.c: Add test for link-selected.
-       
-2003-02-14  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/Makefile.am: Correct typo in previous commit.
-
-2003-02-13  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * atk-bridge/Makefile.am: Allow for build directory to be different 
-       from source directory
-
-       * registryd/Makefile.am: Allow for build directory to be different
-       from source directory
-
-       Bug #104744.
-
-2003-01-29  Bill Haneman <bill.haneman@sun.com>
-       
-       * cspi/Makefile.am:
-       Fixed dependencies for libcspi so that libspi gets pulled in
-       properly.  Fixes 104741.
-
-       * cspi/spi.h:
-       * cspi/spi_event.c:
-       Clean up inline docs a little.
-
-2003-01-27  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/desktop.c: Implement AccessibleComponent for SpiDesktop.
-       This is done by implementing AtkComponent for SpiAtkDesktop, which is
-       the AtkObject within an SpiDesktop.
-       This addresses bug #101524.
-
-       * registryd/deviceeventcontroller.c (spi_device_event_controller_init):
-       Remove call to gdk_init().
-
-       * registryd/registry.c (spi_registry_init): Add call to gdk_init()
-       so that Display is set when SpiDesktop is created.
-
-2003-01-21  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * registryd/deviceeventcontroller.c: Add include of <sys/time.h>
-       This fixes bug #102830.
-
-2003-01-15  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * test/test-simple.c: Update to take account of fact that GailButton 
-       now implements AtkText.
-       (create_text_window): Set name on AtkObject for GtkEntry.
-       (validate_accessible): Check accessible name before calling test_text().
-
-       * libspi/Makefile.am: Fix problem with building outside of source
-       directory. Bug #98120.
-
-       * cpsi/spi_table.c (AccessibleTable_getNSelectedColumns): Fix
-       typo in documentation comments. Bug #94275.
-
-2003-01-15  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * libspi/text.c (impl_getBoundedRanges): Bug fix.
-
-2003-01-10  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * libspi/text.c:
-       Add includes to avoid compiler warnings on Solaris.
-       (impl_getRangeExtents): Bug fix.
-
-2002-12-17  Bill Haneman <bill.haneman@sun.com>
-
-        Fix for 100944, [API addition approved by Gman and murrayc].
-       
-       * NEWS: updated.
-       
-       * configure.in:
-       Revved to 1.1.8.
-
-       * idl/Accessibility_Text.idl:
-       (Text::Range, Text::RangeList, TEXT_CLIP_TYPE): New typedefs
-       (Text::getRangeExtents): New method for efficient 
-       bounds query of a text range.
-       (Text::getBoundedRanges): New method for efficient
-       clipping of text to bounding boxes.
-       (unImplemented7, unImplemented8): 
-       Removed these padding methods to preserve bincompat.
-
-       * libspi/text.c:
-       (impl_getRangeExtents): implementation of new IDL.
-       (impl_getBoundedRanges): implementation of new IDL.
-       (SpiTextRect): Internal use struct.
-       (_spi_text_rect_union): internal method, calculates union of two
-       SpiTextRect bounding rects.
-       (_spi_text_range_seq_from_gslist): internal method, allows us
-       to build our sequence efficiently as a gslist then convert it
-       to a CORBA seq.
-       (_spi_bounds_contain): internal method, determines whether
-       a text character is "in" or "out" of a clip rect according to
-       values of TEXT_CLIP_TYPE.
-       (spi_text_class_init): Initialize the new methods in the epv.
-       
-       * cspi/spi.h:
-       (AccessibleTextClipType): New enum used by screen review api.
-       (AccessibleTextRange): New struct used by screen review api.
-       (AccessibleText_getRangeExtents): 
-       cspi binding for Accessibility_Text_getRangeExtents.
-       (AccessibleText_getBoundedRanges):
-       cspi binding for Accessibility_Text_getBoundedRanges.
-       (AccessibleTextRange_freeRanges): convenience method.
-       
-       * cspi/spi_text.c:
-       (AccessibleText_getRangeExtents): 
-       cspi binding for Accessibility_Text_getRangeExtents.
-       (AccessibleText_getBoundedRanges):
-       cspi binding for Accessibility_Text_getBoundedRanges.
-       (AccessibleTextRange_freeRanges): convenience method.
-       (get_accessible_text_clip_type): internal conversion method.
-       (get_accessible_text_ranges_from_range_seq): internal conversion method.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_mouse_check):
-       Improved behavior for mouse:abs events 
-       [same granularity as mouse:rel events, and no
-       events when mouse is idle].     
-       
-2002-12-16  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_accessible.c (spi_state_to_corba): rename.
-
-       * libspi/stateset.c (state_spi_to_atk): split out
-       ( fix several remote array bounds nasties )
-       (spi_atk_state_set_from_sequence, impl_contains, impl_add),
-       (impl_remove): make safe from array bounds issues.
-       (spi_atk_state_from_spi_state): impl.
-
-       * libspi/stateset.h (spi_state_set_cache_is_empty): 
-       add a set of wrapper defines to get layering right.
-
-       * cspi/spi_accessible.c: update state set stuff to
-       use it.
-
-2002-12-14  Michael Meeks  <michael@ximian.com>
-
-       * atk-bridge/bridge.c (spi_atk_bridget_get_dec): impl.
-       to avoid 2 roundtrips to the registry per key event
-       (spi_atk_bridge_key_listener): upd.
-       (deregister_application): release the dec.
-
-       * registryd/registry.c (notify_listeners_cb):
-       bin lots of re-enterant complexity - we no longer
-       do a round-trip bonobo ref here, ensure that a single
-       listener's exception failure won't poison all other
-       notifications.
-       (impl_registry_notify_event): bin obvious memory leak.
-
-2002-12-13  Michael Meeks  <michael@ximian.com>
-
-       * atk-bridge/bridge.c (spi_atk_bridge_focus_tracker):
-       init the ev so the error is meaningful.
-       (spi_atk_bridge_key_listener): ditto.
-
-       * cspi/spi_main.c (cspi_ev): init the ev so we start
-       with a clean slate, otherwise the first exception
-       kills us completely.
-
-       * cspi/spi_text.c (get_accessible_text_boundary_type): 
-       add a fallthrough for no warnings.
-
-       * cspi/spi_registry.c: prune unused warnings.
-
-       * cspi/spi_main.c (cspi_object_take): fix
-       mind-blowing brokenness ( by watching the compile
-       warnings )
-
-       * cspi/spi_accessible.c (Accessible_getStateSet):
-       re-impl. to use an AtkStateSet.
-       (spi_state_type_from_accessible_state),
-       (init_state_table): bin these.
-
-       * libspi/stateset.c (spi_atk_state_set_from_sequence):
-       split out from
-       (atk_state_set_from_accessibility_state_set): here.
-
-       * cspi/spi_accessible.c (spi_state_to_atk): impl.
-       (AccessibleStateSet_contains, AccessibleStateSet_ref),
-       (AccessibleStateSet_unref, AccessibleStateSet_contains),
-       (AccessibleStateSet_add, AccessibleStateSet_remove),
-       (AccessibleStateSet_equals, AccessibleStateSet_compare),
-       (AccessibleStateSet_isEmpty): re-write to use a local
-       AtkStateSet object.
-
-2002-12-13  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: Revved to 1.1.7 (new keymask vals).
-
-2002-12-10  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/keymasks.h:
-       Added SPI_KEYMASK_MOD4 and SPI_KEYMASK_MOD5.
-
-2002-12-10  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * cspi/spi_event.c 
-       (cspi_internal_event_get_object): Use CORBA_TypeCode_Equivalent() 
-       to compare two CORBA_TypeCodes.
-       (cspi_internal_event_add): Silence warning from FORTE compiler.
-
-       * cspi/bonobo/cspi_bonobo-listener.h: Add function declarations to 
-       avoid implicit declaration of functions.
-       
-2002-12-09  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_init_event_type_consts): Store signal id for
-       active-descendant-changed signal.
-       (spi_atk_register_event_listeners): Add signal listener for
-       active-descendant-changed signal,
-       (spi_atk_bridge_signal_listener): Move code in function 
-       spi_atk-signal_emit_event() into this function.
-       Add support for active-descendant-changed
-       Update support for child-changed signal.
-       (spi_bridge_window_event_listener): Silence warning.
-
-       * libspi/spi_private.[ch]:
-       (spi_init_any_object): Change second parameter from CORBA_Object to
-       CORBA_Object*.
-       Omit call to CORBA_Object_duplicate(). 
-       Set CORBA_any's _value to CORBA_Object*.        
-
-2002-12-06  Bill Haneman  <bill.haneman@sun.com>
-
-       * configure.in:
-       Revved to 1.1.6.
-       
-       * cspi/spi.h: 
-       (AccessibleEvent_ref, AccessibleEvent_unref):
-       New methods, for persisting an event outside the emission context.
-       Must be used if the new accessor methods are to be called
-       outside of the event listener's callback.
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_dup_ref): Pass 'ev' to bonobo_object_dup_ref
-       as second parameter instead of NULL, so we can call
-       cspi_check_ev afterwards.
-       
-       * cspi/spi_main.c:
-       (cspi_object_take): New internal method, 
-       converts a CORBA_Object reference to a hard ref on
-       an Accessible if possible, returning NULL if the object
-       reference is invalid or an Accessible * otherwise.
-
-       * cspi/spi_event.c:
-       (AccessibleEvent_ref): 
-       Increment the event's internal private refcount, and 
-       add the event's internal struct to an internal cache 
-       if it's not already there.
-       (AccessibleEvent_unref): 
-       Decrement the event's refcount and remove it from
-       the cspi event cache if refcount==0.
-       (cspi_event_compare): New private method.
-       Compares two event structs via their ids. Used 
-       for queue lookup.
-       (cspi_internal_event_lookup): New private method.
-       (cspi_internal_event_check): New private method,
-       a 0-order sanity check for events to make sure their
-       private data is intact.
-       (cspi_internal_event_add, cspi_internal_event_remove):
-       New private methods for managiing the event cache.
-
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       (cspi_event):
-       Initialize the new private data elements (id, magic, ref_count).
-       
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_signal_listener):
-       Fixed bug #100530, passing wrong params to emission func.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_dec_button_update_and_emit): 
-       Fixed type in mask bit operations; fix for #99799.
-       
-2002-12-02  Bill Haneman  <bill.haneman@sun.com>
-
-       Removed some of the more dangerous workarounds from
-       previous commit; they are only needed by GOK, which
-       in reality should be using another method to accomplish
-       the goals.  So on reconsideration some of the workarounds
-       need to be reverted:
-       
-       * registryd/deviceeventcontroller.c:
-       (spi_keycodes_contain, spi_dec_init_keycode_list): 
-       Removed these methods, used only by a nasty hack to try
-       and detect whether a key synthesis should be allowed
-       to reset the XKB latch state or not. This code was only
-       required to work around an interaction between GOK,
-       button events, and XKB.
-       (impl_generate_key_event):
-       Removed hack at end of key generation that tried to
-       "do the right thing" if XKB latch keys were generated
-       in the midst of button press/release pairs.  
-
-       * configure.in:
-       Added a check for HAVE_XINPUT.  Not normally used yet.
-
-2002-11-25  Bill Haneman  <bill.haneman@sun.com>
-
-        Workarounds and fixes for mouse event/XKB interaction.
-       
-       * registryd/deviceeventcontroller.c:
-       (spi_keycodes_contain, spi_dec_init_keycode_list): 
-       New internal methods.
-       (spi_dec_set_unlatch_pending):
-       Split the method that tells XKB to expect an
-       unlatch (and revert it) out of the rest of the
-       event handling code.  This method is called by the
-       two mouse event handlers (the poll and the filter).
-       (spi_dec_update_and_emit, spi_dec_mouse_check): 
-       New methods split from spi_dec_poll_mouse_moved.
-       The second one is now called from inside the filterFn
-       when an XKB delatch event is received, to determine 
-       whether to revert the delatch or not.
-       (spi_poll_mouse_moved): Refactor; also we can now
-       properly handle the case where multiple button states
-       have changed between polling cycles and we didn't get
-       notified due to another client's grab.
-       (global_filter_fn): 
-       Synchronize the server while handling an XKB notification.
-       Ugly, but apparently necessary to avoid nasty races.
-       Check the mouse state on receipt of an XKB latch change,
-       to decide whether to revert the latch or not. (Latches are
-       reverted if there is an immediately preceding mouse button
-       event that a client has consumed, in which case we don't want
-       the user to see the side-effect of the event).
-       (spi_device_event_controller_forward_mouse_event):
-       Check for modifier events and fire before resetting mouse_mask_state,
-       prevents losing modifier events.
-
-       (impl_generate_keyboard_event):
-       If we've just generated a keyboard event for a non-shift key,
-       we don't want to revert the pending XKB latch. 
-       Otherwise, check the modifier state (via a call to 
-       spi_dev_mouse_check) and set the relatch mask to 
-       that state before returning.
-       
-2002-11-24  Bill Haneman  <bill.haneman@sun.com>
-
-        * NEWS: 
-       Updated NEWS (accidentally didn't make it into 1.1.5 tarball,
-       retagged).
-       
-       * atk-bridge/bridge.c:
-       (spi_atk_register_event_listeners):
-       Don't re-register for ATK events if the registry has died
-       and the app needs to re-register; the ATK listeners are in
-       process and doing so will cause duplicate emission.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_poll_mouse_moved):
-       Reformat the source, detect and emit multiple button-change
-       events (i.e. if multiple buttons have changed between poll
-       intervals).
-       Add code to detect mouse-down events even when the pointer
-       is grabbed; workaround for GOK bug 98420.
-       (spi_controller_register_with_devices):
-       Call XTestGrabControl with 'impervious' flag set to True,
-       allows us to synthesize events and query the pointer even during
-       an active grab by another client.
-       (spi_device_event_controller_forward_mouse_event):
-       Set the mouse_mask_state to the mouse_button_state from
-       the intercepted event, to synchronize the grab listener with
-       the poll state.
-       
-2002-11-20  Bill Haneman  <bill.haneman@sun.com>
-
-       * cspi/spi_accessible.c:
-       (AccessibleRole_getName):
-       Added necessary strings for making this (deprecated) 
-       method work with the new role types. 
-       (init_role_table, role_table):
-       Added definition of SPI_ROLE_APPLICATION.
-
-       * libspi/spi-roletypes.h:
-       Added SPI_ROLE_APPLICATION.
-
-       * idl/Accessibility_Role.idl:
-       Added ROLE_APPLICATION. 
-
-       * docs/reference/cspi/at-spi-cspi-decl.txt:
-       Added SPI_ROLE_APPLICATION to docs.
-
-2002-11-20  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * cspi/spi_accessible.c
-       (cspi_init_role_table): Do not write beyond end of role_table.
-       (Accessible_getRole): Use correct type for value returned by
-       Accessibility_Accessible_getRole().
-
-       * libspi/accessible.c (spi_init_role_lookup_table): Do not write
-       beyond end of role_table. (This fixes bug #98269)
-
-       * libspi/application.c: Add include file spi-private.h for 
-       definition of spi_init_any_nil.
-
-2002-11-19 Bill Haneman <bill.haneman@sun.com>
-
-        FIX for bug 99024.
-       
-       * libspi/spi-private.h:
-       Added DGB() macro, and extern int _dbg declaration.
-       
-       * registryd/registry.c:
-       (definitions) storage for _dbg.
-       (spi_registry_init):
-       Get environment variable "AT_SPI_DEBUG".
-       (spi_registry_set_debug):
-       New method, to initialize _dbg value.
-       (spi_listener_struct_new, spi_registry_object_finalize):
-       (notify_listeners_cb):
-       Changed fprintfs to use DBG and g_warning().
-
-       * registryd/deviceeventcontroller.c:
-       (_deregister_keygrab, spi_controller_register_device_listener):
-       Changed debug/warning messages to use DBG macro.
-
-       * libspi/listener.c:
-       (impl_notify_event):
-       Changed warning messages to use DBG macro and g_warning().
-
-       * atk-bridge/bridge.c:
-       (atk_bridge_init, spi_atk_bridge_get_registry):
-       (spi_atk_bridge_exit_func):
-       (spi_atk_bridge_property_event_listener):
-       Changed status, warning, and error messages to use
-       g_warning, g_message, and DBG macros.
-
-       (atk_bridge_init):
-       Read the state of the AT_SPI_DEBUG environment variable
-       and set a local '_dbg' accordingly.
-       
-2002-11-19 Bill Haneman <bill.haneman@sun.com>
-
-        FIXES for 98836, 98842, other bugs.
-       
-       * configure.in:
-       Revved to 1.1.4, interface-age=4, binary-age=4.
-
-       * registryd/deviceeventcontroller.c:
-       (statics):
-       Fixed crasher bug in last_mouse_pos initialization.
-
-       * registryd/registry.c:
-       (desktop_add_application, desktop_remove_application):
-       Added (and then commented out) some support for
-       object context marshalling. [TODO]
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_event_context_create):
-       Commented out object context creation until it can
-       be properly tested and debugged.
-
-       * registryd/registry.c:
-       (impl_registry_notify_event):
-       Fixed crasher bug, we were calling 
-       spi_re_entrant_list_foreach () with an empty list.
-
-2002-11-18  Bill Haneman <bill.haneman@sun.com>
-       
-       * idl/Accessibility_Action.idl:
-       * idl/Accessibility_Component.idl:
-       * idl/Accessibility_Desktop.idl:
-       * idl/Accessibility_Event.idl:
-       * idl/Accessibility_Hyperlink.idl:
-       * idl/Accessibility_Image.idl:
-       * idl/Accessibility_Relation.idl:
-       * idl/Accessibility_Selection.idl:
-       * idl/Accessibility_State.idl:
-       * idl/Accessibility_Value.idl:
-       Updated unimplemented slot count to minimum of
-       four for all interfaces, for ABI freeze. 
-
-       * idl/Accessibility_EditableText.idl:
-       * idl/Accessibility_Text.idl:
-       Updated unimplemented slot count to six
-       for ABI freeze. 
-       
-       * idl/Accessibility_Registry.idl:
-       Updated unimplemented slot count to six
-       (also for DeviceEventController), 
-       for ABI freeze. 
-
-       * idl/Accessibility_Table.idl:
-       Updated unimplemented slot count to eight,
-       for ABI freeze. 
-
-       * idl/Accessibility_Event.idl:
-       Added CORBA_any "any_data" member to Event struct.
-
-       * idl/Accessibility_Event.idl:
-       Added CORBA_any "any_data" member to Event struct.
-
-       * atk-bridge/bridge.c:
-       (statics):
-       atk_signal_text_changed, atk_signal_child_changed,
-       signal ids queried from gtype system.
-       (AtkBridgeEventContextType): New enum.
-       (AtkBridgeEventContextData): New struct.
-       (AtkBridgeEventContext): New struct.
-       (atk_bridge_init_event_type_consts):
-       New method, initializes type contants for comparison 
-       prior to emit_eventv.
-       (atk_bridge_event_context_init): New method,
-       initializes a CORBA_any from an AtkBridgeEventContext.
-       (atk_bridge_focus_tracker): Call spi_init_any_nil to
-       initialize the event.any_data struct.
-       (spi_atk_bridge_event_context_create): New method,
-       creates an AtkBridgeEventContext from signal/event info.
-       (spi_atk_bridge_event_context_free): New method.
-       (spi_atk_emit_eventv): Changed to take an 
-       AtkBridgeEventContext parameter. We now initialize
-       the event.any_data member prior to notifying the 
-       Registry, via the AtkBridgeEventContext.
-       (spi_atk_bridge_property_event_listener):
-       (spi_atk_bridge_state_event_listener):
-       Match emit_eventv signature.
-       (spi_atk_bridge_object_event_listener):
-       Match emit_eventv signature, and create an
-       event context from the event details.
-       Free the event context afterwards.
-       (spi_atk_bridge_window_event_listener):
-       Create an event context, pass it to the
-       emit_eventv call.
-       
-       * cspi/spi_event.c:
-       (AccessibleEvent_getContextString):
-       (AccessibleEvent_getContextObject):
-       New methods, allow query of AccessibleEvent objects
-       for more context details (via the "any_data" member 
-       of the Event struct, above).
-       
-       * cspi/spi.h:
-       Definitions for AccessibleEvent_getContextString
-       and AccessibleEvent_getContextObject.
-
-       * cspi/spi_listener.h:
-       (InternalEvent): New struct.
-
-       * cspi/spi_event.c:
-       (AccessibleEvent_getContextString):
-       (AccessibleEvent_getContextObject):
-       Implementations of new methods, for obtaining
-       additional context information from some event types.
-
-       * cspi/spi_registry.c:
-       (SPI_registerGlobalEventListener):
-       Added mention of active-descendant-changed event in docs.
-
-       * cspi/cspi-bonobo-listener.c:
-       (cspi_event):
-       Marshal the any into the AccessibleEvent via
-       InternalEvent.
-       
-       * libspi/spi-private.h:
-       #include <orbit/orbit.h>
-       (spi_init_any_nil):
-       (spi_init_any_string):
-       (spi_init_any_object):
-       New convenience function declarations.
-
-       * libspi/util.c:
-       (spi_init_any_nil):
-       (spi_init_any_string):
-       (spi_init_any_object):
-       New convenience function implementations.
-
-       * registryd/deviceeventcontroller.c:
-       (spi_poll_dec_mouse_moved):
-       (spi_device_event_controller_forward_mous_event):
-       Initialize any_data member of event.
-       (spi_deregister_controller_device_listener):
-       Fix incorrect param pass which was preventing deregistration.
-
-       * registryd/registry.c:
-       (desktop_add_application):
-       (desktop_remove_application):
-       Add object data to event's any_data before dispatch.
-       (parse_event_type):
-       Fix for error messages from GAIL.
-       
-       * test/event-listener-test.c:
-       Test new ContextString and "any_data" API:
-       (report_text_event): New method query and output context string.
-       (main): register a new text listener with report_text_event
-       callback.
-
-2002-11-19  Darren Kenny  <darren.kenny@sun.com>
-
-       Fixes for bugs 98127 and 97914.
-       * cspi/spi-roletypes.h:
-       Added SPI_ROLE_HEADER, SPI_ROLE_FOOTER, SPI_ROLE_PARAGRAPH,
-       SPI_ROLE_RULER
-       * cspi/spi-statetypes.h:
-       Added SPI_STATE_MANAGES_DESCENDANTS
-       * cspi/spi.h:
-       Added SPI_RELATION_FLOWS_TO, SPI_RELATIONS_FLOWS_FROM,
-       SPI_RELATION_SUBWINDOW_OF, SPI_RELATION_EMBEDS, SPI_RELATION_EMBEDDED_BY
-       * cspi/spi_accessible.c:
-       Added mapping in role_table from new Accessibility_ROLE_* to SPI_ROLE_*
-       Added mapping from SPI_STATE_MANAGES_DESCENDANTS to 
-       Accessibility_STATE_MANAGES_DESCENDANTS
-       * libspi/accessible.c:
-       Added Mapping from ATK_ROLE_{FOOTER,HEADER,PARAGRAPH,RULER} to
-       Accessibility_ROLE_{FOOTER,HEADER,PARAGRAPH,RULER} 
-       As requested by Bill, I also cleaned up the alignment.
-       * libspi/relation.c:
-       Added mapping of the ATK_RELATION_{FLOWS_TO,FLOWS_FROM,SUBWINDOW_OF,
-       EMBEDS,EMBEDDED_BY} to equivalend Accessibility_RELATION_*
-       * libspi/stateset.c:
-       Added mappings between ATK_STATE_MANAGES_DESCENDANTS and
-       Accessibility_STATE_MANAGES_DESCENDANTS
-       * docs/reference/cspi/tmpl/spi_accessible.sgml:
-       Document changes reflecting modifications to roles.
-       * docs/reference/cspi/tmpl/spi_relation.sgml:
-       Document changes reflecting modifications to relations.
-       * docs/reference/cspi/tmpl/spi_stateset.sgml:
-       Document changes reflecting modifications to states.
-
-2002-11-17  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Revved to 1.1.3, interface-age=3, binary-age=3.
-       Added REBUILD macro.
-
-       * test/Makefile.am:
-       Removed accessx-gui from the tests, since we have a nice
-       keyboard accessibility capplet now :-)
-
-       * test/keysynth-demo.c:
-       (increment_scan): removed do-nothing default: case,
-       silences warning.
-
-       * test/visual-bell.c:
-       (main) : removed do-nothing default: case, 
-       silences warning.
-
-       * cspi/spi_action.c:
-       (AccessibleAction_getKeyBinding_): 
-       Documented keybinding string format.
-       FIX for bug 97916.
-
-       * cspi/spi_text.c:
-       (AccessibleText_getAttributes):
-       Documented the text attribute string format.
-       It's changed to use semicolon delimiters also,
-       to prevent clashes with CSS attributes, but the old
-       trick of looking for ", " strings will still work
-       (as unreliably as ever).  Fix for bug related to 97916.
-
-       * cspi/spi_event.c:
-       Include <cspi/bonobo/cspi-bonobo-listener.h>
-       Fixes build warning.
-       (SPI_freeAccessibleKeySet):
-       (AccessibleKeystrokeListener_addCallback):
-       (AccessibleKeystrokeListener_removeCallback):
-       Modify to use AccessibleDeviceListener API internally,
-       instead of AccessibleKeystrokeListener.
-       
-       * idl/Accessibility_Event.idl:
-       Added two more empty slots to EventListener (for a total of four).
-
-       * idl/Accessibility_Accessible.idl:
-       Added four empty slots to Accessible interface.
-
-2002-11-15  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Registry.idl:
-       (KeyEventType, EventType):
-       Marked KeyEventType as deprecated; it duplicates
-       functionality of EventType, which has been extended to
-       include Mouse-button events.
-       (KeyEventTypeSeq): defined in terms of EventType.
-       (registerDeviceEventListener, deregisterDeviceEventListener):
-       New methods, for managing listeners to device events,
-       which potentially may consume them.     
-       
-       * cspi/spi-impl.h:
-       Added definition for AccessibleDeviceListener.
-
-       * cspi/spi-listener.h:
-       (enum AccessibleDeviceEventType):
-       Added SPI_BUTTON_PRESSED and SPI_BUTTON_RELEASED.
-       Typedef'd AccessibleKeyEventType to AccessibleDeviceEventType
-       for backwards compat.
-       (AccessibleKeystroke): Renamed AccessibleKeystroke to AccessibleDeviceEvent,
-       and typedef'd AccessibleKeystroke to it for back-compat.
-       (AccessibleDeviceListenerCB):
-       New function prototype typedef.
-
-       * cspi/spi.h:
-       (AccessibleDeviceEventMask): New typedef.
-       (AccessibleModifierMaskType): New typedef (renamed from AccessibleKeyMaskType).
-       (AccessibleKeyMaskType): 
-       Set equivalent to AccessibleModifierMaskType for back-compat.   
-       (SPI_createAccessibleKeystrokeListener):
-       (AccessibleKeystrokeListener_unref):
-       Deprecated in favor of equivalent (better-named) new API below..
-       keystroke listeners are like all device listeners.
-       (SPI_createAccessibleDeviceListener, AccessibleDeviceListener_unref)
-       New API names for old features :-).
-       (AccessibleDeviceListener_addCallback):
-       (AccessibleDeviceListener_removeCallback): 
-       (SPI_registerDeviceEventListener): 
-       (SPI_deregisterDeviceEventListener): 
-       New methods.
-       
-       * cspi/spi_event.c:
-       (SPI_createAccessibleKeystrokeListener):
-       Use new preferred API, cspi_device_listener_new() and
-       cspi_device_listener_add_cb().
-       (AccessibleKeystrokeListener_removeCallback):
-       Use new preferred API, cspi_device_listener_remove_cb().
-       (AccessibleKeystrokeListener_unref):
-       Use new preferred API, cspi_device_listener_unref().
-       (SPI_createAccessibleDeviceListener):
-       (AccessibleDeviceListener_addCallback):
-       (AccessibleDeviceListener_removeCallback):
-       Implementation of new API.
-
-       * cspi/spi_registry.c:
-       (SPI_registerDeviceEventListener):
-       (SPI_deregisterDeviceEventListener):
-       Implementation of new API.  Fixed memory leak and removed need to
-       allocate EventTypeSeq (thanks Michael for catching this).
-       Squashed a wayward CORBA_exception_free that shouldn't get called.
-
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       (EventHandler):
-       Changed union (bin-and-api-compatibly) to refer to AccessibleDeviceListenerCB.
-       (cspi_key_event): renamed to cspi_device_event().
-       Internal use of CSpiKeystrokeListener changed to CSpiDeviceListener.
-       Extended to handle mouse button events as well as key events.
-       (CSpiKeystrokeListener):
-       Class superceded by CSpiDeviceListener.
-       (cspi_keystroke_listener_add_callback, cspi_keystroke_listener_get_corba):
-       These internal APIs changed to "*device_listener" from "*keystroke_listener".
-
-       * cspi/bonobo/cspi-bonobo-listener.h:
-       (CSpiKeystrokeListener):
-       Class superceded by CSpiDeviceListener.
-       (cspi_keystroke_listener_add_callback, cspi_keystroke_listener_get_corba):
-       These internal APIs changed to "*device_listener" from "*keystroke_listener".
-
-       * libspi/Makefile.am:
-       Replaced keystrokelistener.h and keystrokelistener.c
-       with devicelistener.h and devicelistener.c; keystrokelisener.h
-       stub retained for back-compat.
-
-       * libspi/keystrokelistener.c:
-       Removed file.
-
-       * libspi/libspi.h:
-       Replaced inclusion of keystrokelistener.h with devicelistener.h.        
-
-       * registryd/deviceeventcontroller.c:
-       (DEControllerListener): Added Accessibility_EventTypeSeq member.
-       (DEControllerKeyListener): Removed Accessibility_KeyEventTypeSeq member.
-       (DEControllerPrivateData): Added xkb settings data.
-       (spi_dec_poll_mouse_moved): Changed to dispatch device events for
-       button release events (which can't be captured via XGrabButton).
-       Don't dispatch via the 'normal' event mechanism if the device event was
-       consumed.
-       (spi_dec_key_listener_new, spi_key_listener_clone, spi_key_listener_data_free):
-       Handle the typeseq data in its new location (see above).
-       (spi_dec_listener_new, spi_listener_clone, spi_listener_clone_free):
-       New methods, for "generic" device listeners.
-       (spi_controller_register_device_listener):
-       Now handle mouse event listeners as well as key listeners.
-       (spi_controller_notify_mouselisteners):
-       New internal method.
-       (spi_device_event_controller_forward_mouse_event):
-       Now we notify mouse device listeners as well as generating the
-       non-consumable "mouse:" events.  
-       (global_filter_fn):
-       We must check and restore the XKB
-       modifier map if we consume the event, since the act of triggering
-       a mouse event will normally reset the XKB latch.  This is required for 
-       instance by GOK.
-       (spi_controller_register_with_devices):
-       Load the XKB settings when registering, and register for XKB 
-       state notify events. 
-       (spi_key_eventtype_seq_contains_event):
-       Renamed spi_eventtype_seq_contains_event, since it's used
-       internally for all device event types now.
-       (spi_key_event_matches_listener):
-       Uses spi_eventtype_seq_contains_event now.
-       (spi_device_event_controller_object_finalize):
-       Free the private data and the XkbKeyboard struct.
-       (impl_register_device_listener, impl_deregister_device_listener):
-       Implementation of new IDL.
-       (spi_deregister_controller_device_listener):
-       New internal method.
-       (dec_xkb_get_slowkeys_delay dec_xkb_get_bouncekeys_delay):
-       More efficient implementation, we don't have to create a new
-       XkbControls structure every time we query.
-       (spi_device_event_controller_class_init):
-       Initialize the epv entries for the new IDL.  Assign the 
-       "spi-dec-private" quark.
-       (spi_device_event_controller_init):
-       Initialize the private data.
-       (spi_device_event_controller_forward_key_event):
-       Removed a bogus CORBA_exception_free() call.
-       
-       * registryd/deviceeventcontroller.h:
-       Replaced inclusion of keystrokelistener.h with
-       devicelistener.h.
-
-       * test/event-listener-test.c:
-       (report_mouse_event):
-       New method.
-       (main):
-       Added mouse-event device listener.
-
-       * test/test-simple.c:
-       (create_test_window):
-       Fixed regression (we were instantiating a GtkRange,
-       which is now an abstract class).  Also fixed to match
-       existing AtkRole names, this seems to have changed in ATK
-       awhile ago; too late now I think, and the new
-       mechanism is at least elegant and consistent with the
-       glib enum "nick" APIs.  
-
-2002-11-15  Darren Kenny  <darren.kenny@sun.com>
-
-       * idl/Accessibility_Relation.idl:
-       add RELATION_FLOWS_TO,RELATION_FLOWS_FROM,RELATION_SUBWINDOW_OF,
-       RELATION_EMBEDS,RELATION_EMBEDDED_BY
-       * idl/Accessibility_Role.idl:
-       add ROLE_HEADER, ROLE_FOOTER, ROLE_PARAGRAPH, ROLE_RULER
-       * idl/Accessibility_State.idl:
-       add STATE_MANAGES_DESCENDANTS
-       * test/event-listener-test.c:
-       Added a listener for active-descendant events.
-
-2002-11-15  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c
-       (atk_bridge_init): If application is Bonobo component wait until top
-       level is added before registering
-       (spi_atk_bridge_do_registration): New function which contains code, 
-       formerly in atk_bridge_init, to do application registration.
-       (spi_atk_bridge_toplevel_added): Signal called when top level
-       added to Bonobo component
-
-       This fixes bug #83134.
-
-2002-10-23  Vitaly Tishkov  <tvv@sparc.spb.su>
-
-       * registryd/deviceeventcontroller.c
-        Fixed compilation error caused by calling gettimeofday() 
-        with 1 parameter
-
-2002-10-18  Bill Haneman  <bill.haneman@sun.com>
-
-       BUGFIX for #95828.
-
-       * acconfig.h:
-       Added template for HAVE_XKB.
-       
-       * configure.in:
-       Changes to check for XKB, and to set the HAVE_XKB #define if it 
-       is available.
-       
-       * libspi/listener.c:
-       ()impl_notify_event): Make failure to get event source name
-       nonfatal.
-
-       * registryd/deviceeventcontroller.c:
-       (#include): include X11/XKBlib.h.
-       (DEControllerPrivateData) : New struct.
-       (dec_xkb_get_slowkeys_delay) (dec_xkb_get_boucekeys_delay) : 
-       New methods.
-       (dec_synth_keycode_press) (dec_synth_keycode_release):
-       New methods; split the key synthesis code into these methods.
-       They check XKB settings before determining the "time" values to
-       pass to Xtest; this fixes bug #95828.
-       (impl_generate_keyboard_event): Changed to use methods above,
-       instead of callng Xtest directly.
-       (spi_device_event_controller_init): Initialize new privae struct s
-       above.
-       (spi_device_event_controllr_object_finalize):
-       Free the (new) private data.
-
-       * registryd/deviceeventcontroller.h:
-       Add new gpointer to end of struct data.
-
-2002-10-16  Bill Haneman  <bill.haneman@sun.com>
-
-       * configure.in:
-       Incremented revision to 1.1.2, SONAME is still '.so', library
-       extensions are ".so.0.0.2".
-
-       * registryd/deviceeventcontroller.c:
-       FIXES FOR #93592 and #95940.
-       (statics):  renamed mouse_button_state to mouse_mask_state, 
-       added key_modifier_mask.
-       (spi_dec_poll_mouse_moved): 
-       Added key modifier checks, and emit "keyboard:modifiers"
-       events when the key modifiers currently in use change.
-       Also generate "mouse:abs" events periodically, even if the mouse
-       is stationary (should we?).
-       Alternatively we could generate "mouse:abs" events for either all
-       mouse movements, or every 'nth' mouse movement, or at the
-       beginning and end of every "active" mouse period.
-       
-       * test/event-listener-test.c:
-       (main): Added listener for "keyboard:modifiers" events.
-       
-2002-10-15  Bill Haneman  <bill.haneman@sun.com>
-
-       * libspi/keymasks.h:
-       Added key mask #defines for mouse buttons; e.g.
-       SPI_KEYMASK_BUTTON1, etc.
-
-       * configure.in:
-       Incremented dependency on ATK to version 1.1.0. (This dependency
-       is probably premature but will soon be real enough).
-
-2002-10-11  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * libspi/hyperlink.[ch]
-       (spi_hyperlink_new): Change parameter from AtkObject to AtkHyperlink.
-       (get_hyperlink_from_servant): Check object is AtkHyperlink not 
-       AtkObject.
-
-       * libspi/hypertext.c (impl_getLink): Remove cast of AtkHyperlink to
-       AtkObject.
-
-       Fixes bug #95517.
-
-2002-10-10  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * registryd/deviceeventcontroller.c
-       (global_filter_fn): Correct typo which caused KeyPress and KeyRelease
-       events to be ignored.
-       (spi_controller_update_key_grabs): Use GrabModeSync for pointer_mode
-       keyboard_mode so that XAllowEvents() can be called.
-
-       Fixes bug #93658.
-
-2002-10-08  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * cspi/spi-accessible.c: Correct names of roles returned by
-       AccessibleRole_getName(). Fixes bug #95055.
-
-2002-10-03  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * cspi/spi_main.c (report_leaked_ref): Report address of leaked
-       object.
-
-       * registryd/registry.c
-       (desktop_remove_application: Write diagnostic message to stderr for
-       consistency.
-
-       (impl_accessibility_registry_deregister_global_event_listener):
-       Correct size of lists array. This addresses bug #94555).
-
-2002-09-24  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * libspi/accessible.c (spi_init_role_lookup_table): Correct typos
-       in some role names.
-
-2002-09-19  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * registryd/Makefile: Add CLEANFILES so that .server file is removed
-       on make clean
-
-       * registryd/registry.c (impl_registry_notify_event): Remove
-       unnecessary call to parser_event_type().
-
-       * docs/reference/cspi/tmpl/spi_component.sgml:
-       Add reference to SPI_LAYER_WINDOW.
-
-2002-09-17  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * registryd/registry.c
-       (desktop_add_application): Remove leak.
-       (desktop_remove_application): Remove leak.
-       (parser_event_type): Remove leak.
-
-2002-09-16  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * registryd/deviceeventcontroller.c (spi_dec_mouse_moved): Removed
-       bogus call to CORBA_string_dup(). Also removed unnecessary
-       g_string_dup/g_free calls.
-       
-2002-09-13  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       spi_dec_mouse_moved: Fixed memory leaks and reordered 2 code blocks.
-
-       * test/event-listener-test.c:
-       main: commented out three redundant listeners, to reduce output
-       noise. (They still are potentially useful for testing).
-       
-
-2002-09-13  Michael Meeks  <michael@ximian.com>
-
-       * Update all the copyrights to include Ximian.
-
-2002-09-06  Mark McLoughlin  <mark@skynet.ie>
-
-       * cspi/spi.h: add SPI_LAYER_WINDOW.
-
-       * cspi/spi_component.c: (AccessibleComponent_getLayer):
-       add Accessibility_LAYER_WINDOW case.
-
-       * idl/Accessibility_Component.idl: add LAYER_WINDOW.
-
-       * libspi/component.c: (impl_accessibility_component_get_layer):
-       add ATK_LAYER_WINDOW case.
-
-2002-08-28  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: incremented micro version.
-
-       * branched for gnome-2-0 (a gnome-2-0-0 branch already exists).
-
-2002-08-20  Bill Haneman <bill.haneman@sun.com>
-
-       * HACKING: 
-       Clarified and reworded our commit policy.
-
-       * NEWS:
-       Started an API "todo" addition list for 2.2.
-
-       * libspi/text.c:
-       (impl_getSelection):
-       Free char pointer from atk_text_get_selection, which was being leaked.
-
-2002-08-19  Bill Haneman <bill.haneman@sun.com>
-
-       * AUTHORS: 
-       Small revision to author acknowledgement.
-
-2002-08-19  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c (spi_atk_bridge_signal_listener):
-       If signal has detail add it to the type of the event.
-       (bug #90838)
-       
-2002-08-12  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c (global_listener_cb): bin bogosity.
-       (test_keylisteners): disable, still doesn't work reliably,
-       certainly not on my system anyway.
-
-       * atk-bridge/bridge.c (spi_atk_bridge_key_listener):
-       don't leak a reference on the DEC. This round-trip
-       fetching of the DEC per keystroke sucks, it should be
-       cached.
-
-       * cspi/spi-private.h,
-       * cspi/cspi-lowlevel.h,
-       * cspi/bonobo/cspi-bonobo-listener.[ch],
-       * cspi/bonobo/cspi-bonobo.c: get the copyright
-       notices better - there is still a large amount of
-       work in at-spi falsely attributed solely to Sun.
-
-       * cspi/spi_main.c (cspi_object_ref): kill bogus
-       hash lookup, just increment the ref.
-       (SPI_freeString): make explicit the fact that we
-       handle NULL strings just fine.
-       (report_leaked_ref): obey coding standards.
-       (cspi_object_hash, cspi_object_equal): kill retval.
-       (cspi_object_release): only release if not on loan.
-       (cspi_object_get_ref): add 'loan' concept, bin 'do_ref'.
-       (cspi_object_borrow, cspi_object_return): impl.
-
-       * cspi/bonobo/cspi-bonobo-listener.c (cspi_event):
-       use cspi_object_borrow / return.
-
-2002-08-12  Darren Kenny  <darren.kenny@sun.com>
-
-       * cspi/bonobo/cspi-bonobo-listener.c: 
-       (cspi_event):
-       Don't call cspi_oject_new() because this is creating a new Accessible
-       every single time that an event is fired. This causes ATs like at-poke
-       to nolonger recognise the source of the event and thus ignore it.
-       Re-use the object from the cache, ref it and then unref it after the
-       listeners have been called.
-
-2002-08-06  Darren Kenny  <darren.kenny@sun.com>
-
-       * test/event-listener-test.c: 
-       Added command-line options to disable mouse events (m) and
-       show usage (h). 
-
-2002-07-31  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * configure.in: Update required versions of ATK, GTK+ and GAIL
-
-       * cspi-1.0.pc.in: Add dependency for X include files
-
-       * cspi/Makefile.am:
-       * cspi/bonobo/Makefile.am: 
-       Add $(X_CFLAGS) so that X include files 
-       are picked up even if not in standard place (bug #71686)
-
-2002-06-25  Bill Haneman  <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c: fix for 84261
-       (spi_dec_mouse_moved):
-       Added test of mouse button mask, so that we can detect mouse
-       button release.  Unfortunately we can't otherwise detect mouse
-       button release events without consuming the mouse press event,
-       because of the way XGrabButton works.  This means that our mouse
-       release events have a latency dependent on the polling period
-       while the mouse button is down.  At least in this case we only
-       have to poll while the button is down, and not at other times.
-       If the button masks don't match with what the last press event
-       reported, we report the appropriate button release event.
-       (spi_dec_ungrab_mouse):
-       New method (not yet called).
-       (spi_device_event_controller_forward_mouse_event):
-       New method, sends mouse press event from GdkFilter.
-       (spi_dec_init_mouse_listener):
-       Added code to call XGrabButton, redirecting mouse button events to
-       the root window and our Gdk event loop.
-       (global_filter_fn):
-       Added code to filter mouse button events, and reordered.
-       
-       * test/event-listener-test.c:
-       (main):
-       Added registration for mouse events of type "mouse:button".
-
-2002-06-25  Bill Haneman  <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c: partial fix for 84261
-       (spi_dec_poll_mouse_idle):
-       New method, a timeout which checks to see if the mouse
-       has moved.
-       (spi_dec_poll_mouse_moving):
-       A timeout to be called when mouse motion is underway.
-       (spi_dec_poll_mouse_moved):
-       A method which fires an event if the mouse has moved, and reports
-       whether or not it did so. 
-       (spi_dec_init_mouse_listener):
-       A method which sets up the timeouts above.
-       (spi_device_event_controller_new):
-       Now calls spi_dec_init_mouse_listener.
-
-       * registryd/registry.c:
-       (spi_registry_init):
-       Now we initialize the device event controller when the registry is
-       initialized, instead of waiting until a client has requested a key
-       event notification; this is because we need the event controller
-       for mouse events, but the mouse event registration API is a
-       "registry" call and doesn't explicitly call the 
-       deviceeventcontroller.
-       We now report mouse motion events with a 100 ms idle latency and
-       a 20 ms granularity when motion is in progress.
-
-       * test/event-listener-test.c:
-       (main):
-       We now register the "detail listener" for events of type 
-       "mouse:rel" and "mouse:abs" (Note, mouse-abs events generally are
-       delivered only for the first mouse event received, and thereafter
-       "mouse:abs" events are delivered.)
-
-       * cspi/spi_registry.c:
-       DOCS: Documented the above mouse event typestrings.
-       
-2002-06-21  Bill Haneman  <bill.haneman@sun.com>
-
-       Happy Summer Solstice...
-
-       * registryd/deviceeventcontroller.c: [fix for bug 84100]
-       (spi_controller_notify_keylisteners):
-       Changes to remove a listener from the listener list, freeing its
-       open keygrabs, if a notification to that listener fails.  This
-       means that although a dead listener can continue to hold a passive
-       keygrab, a maximum of one dispatch to such a listener can fail
-       before the listener is removed from the list, thus the keygrab
-       will be released on the next occurrence.
-       As part of this fix:
-       (spi_notify_keylisteners):
-       Renamed to spi_controller_notify_keylisteners, as the controller
-       instance must now be passed as an argument.
-       The copied 'notify' GList is now a list of DEControllerKeyListener
-       objects, since we need more than just the CORBA reference if a
-       notify fails and we need to deregister the listener.
-       (impl_notify_listeners_sync):
-       (impl_notify_listeners_async):
-       (spi_device_event_controller_forward_key_event):
-       Modify use of notify_keylisteners in accordance with above
-       changes.
-       (spi_deregister_controller_key_listener):
-       New method introduced by refactoring, from 
-       impl_deregister_keystroke_listener.
-       (impl_deregister_keystroke_listener):
-       Call spi_deregister_controller_key_listener.
-       (spi_key_listener_clone):
-       New method to copy a key listner without doing a 'ref' on the
-       remote object instance; used to create a notifier list.
-       (spi_key_listener_data_free):
-       New method, frees data without unreffing the source.
-       Used in refactor.
-       (spi_key_listener_clone_free): new method.
-       (spi_key_listener_free): 
-       refactored to call spi_key_listener_data_free.
-       
-2002-06-20  Bill Haneman  <bill.haneman@sun.com>
-
-       * registryd/registry.c: [fix for bug 86048]
-       (notify_listeners_cb):
-       Clear CORBA system exceptions which occur when notifying
-       listeners, before returning to the source of the original event,
-       since the event source doesn't care if the relayed notify failed.
-       In other words, don't complain to the atk-bridge if the registry
-       could not notify all its listeners, that's no fault of the
-       application and thus should not appear to be an error from the
-       application's perspective.
-       
-       * cspi/spi_main.c: [fix for bug 85980]
-       (cspi_object_ref):
-       Replaced use of bonobo_object_dup_ref with call to the wrapper
-       method, csou_dup_ref (); this silences a compiler warning and
-       provided more portability.
-       (cspi_registry):
-       Ping the registry before return, and restart if necessary.
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_ping):
-       New internal method.
-       (cspi_dup_ref):
-       Fixed this method to return an object reference, as it should have
-       all along.
-
-       * cspi/cspi-lowlevel.h:
-       Added internal definition for cspi_ping() and fixed 
-       return type of cspi_dup_ref().
-       
-
-2002-06-19  Bill Haneman  <bill.haneman@sun.com>
-
-       * atk-bridge/bridge.c:  [fix for bug 85305]
-       (spi_atk_bridge_register_application):
-       New method where the initial application registry calls have been
-       moved; it allows an application to re-register in response to
-       certain error conditions (such as a registry restart, see below).
-       (atk_bridge_init):
-       Moved some initialization code to the method
-       spi_atk_bridge_get_registry, below.
-       (spi_atk_bridge_get_registry):
-       New, private accessor function for the Accessibility_Registry
-       instance.  If the registry has not been started before, or has
-       died (as detected by failure of a CORBA exception), it is
-       restarted before return, and spi_atk_bridge_register_application
-       is called again to register with the new bridge instance.
-       (spi_atk_emit_eventv):
-       Set registry_died on error; use spi_atk_bridge_get_registry () to
-       access the registry.
-       
-       * registryd/registry.c:
-       (impl_accessibility_registry_register_global_event_listener):
-       Set listener's event_type_quark to etype.minor instead of
-       etype.major (fix for bug 84856).
-
-       * test/event-listener-test.c:
-       (report_detail_event):
-       Change the output string so that user/tester can tell that the
-       'detail listener' was called instead of the 'generic listener'.
-       
-2002-06-18  Bill Haneman  <bill.haneman@sun.com>
-
-       Fixes for bugs 84900, 84908, 84897, 84898.
-
-       * NEWS: updated.
-       
-       * configure.in:
-       Revved version to 1.1.0 
-       (reserving the 1.0.X branch for gnome-2-0-0 branch, this
-       version is going to HEAD which will be used for gnome-2-0-1 and later.)
-       
-       * idl/Accessibility_Registry.idl:
-       (EventListener::notifyEvent):
-       Removed 'oneway' directive after extensive consulation with
-       ORBit2 team and others.  This means also that unref() of the event
-       source can and should be done synchronously after emission, rather
-       than remotely in the client, after servicing the notify call on
-       the listener side.
-
-       NOTE: This change speeds up listener performance considerably, but
-       introduces new latency on the application side.  We may want to
-       add an event queue to the atk-bridge.
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_focus_tracker):
-       Do a local unref() on the event source after emission.
-       
-       * registryd/registry.c:
-       (desktop_remove_application):
-       Do an unref() on the event source after emission.
-       (desktop_add_application):
-       Do an unref() on the event source after emission.
-       (notify_listeners_cb):
-       When relaying an event, don't automatically add the event source
-       to the local object cache, just CORBA_dup it instead.  Likewise,
-       if this method reenters, release the ref rather than calling
-       unref() as well.
-       (impl_registry_notify_event):
-       No longer call remote unref() on the event source after dispatch.
-
-       * libspi/eventlistener.c:
-       (impl_accessible_event_notify_event):
-       Removed remote unref ()
-       
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       (cspi_event):
-       We now call cspi_object_new() instead of cspi_object_add() on
-       receipt of an event; thus we only have an implicit object ref
-       while the cspi_event method is being executed.  If we need to keep
-       a reference to the object, the listener must call ref() on the
-       object.  Thus also we don't need to call cspi_object_unref() after
-       invoking the listener callbacks in this method.
-       
-       * cspi/spi_main.c:
-       (cspi_object_new):
-       New internal API for creating a new cspi object, without adding it
-       to the object cache.
-       (cspi_object_add):
-       Now uses cspi_object_new() to create the cspi object instance.
-       (cspi_object_ref):
-       Now checks to see if the object is in the internal object cache,
-       and adds it if necessary before incrementing its refcount (note
-       that new objects are added with a refcount of 1).
-       (report_leaked_ref):
-       New method which gives some information on leaked object instances
-       if leak detection is turned on.
-
-       * test/event-listener-test.c:
-       (timing_test_event):
-       New method, used for testing event delivery timing for special
-       events of type "object:test".  It reports elapsed time and
-       events/sec every 500 events.
-       (main):
-       Added a new listener, 'test listener', to check timing of event
-       receipt as noted above.
-       (report_event):
-       Added some timing output here also, reports elapsed time every 100
-       events.
-
-       * test/stress-test.c:
-       Emit events of type "object:test", for use with "event-listener-test".
-
-       * test/test-simple.c:
-       (global_listener_cb):
-       Call Accessible_ref() on the event source before calling
-       validate_accessible, since the validation process does pointer
-       comparisons on the event source, meaning that the event source
-       needs to be added to the local object cache first.  Any use of
-       such pointer comparisons between Accessible objects requires that
-       the caller hold an explicit reference to those objects.
-       We also must therefore call Accessible_unref() when leaving this method.
-
-2002-06-13  Bill Haneman  <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       (spi_controller_update_key_grabs):
-       Fix for #84735, subsequent keygrab listeners not informed of
-       registration failure.
-
-       * libspi/base.c:
-       (spi_base_construct):
-       Add an assertion on construct, to make sure the GObject passed in
-       is really a GObject.
-       (spi_base_init):
-       Explicitly initialize object->gobj pointer to NULL;
-
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       (cspi_object_add_ref):
-       New method, can specify whether to dup-ref a bonobo object passed
-       in if it's newly added to the object cache.
-       (cspi_object_add):
-       Now calls cspi_object_add_ref with second param of "FALSE".  This
-       prevents us from doing a pointless dup-ref followed by
-       release-unref for all those cases where the object is already in
-       our object cache (fix for #85205).
-
-       * atk-bridge/bridge.c:
-       (spi_atk_bridge_idle_init):
-       Removed this method, we don't need to initialize in an idle
-       handler anymore;
-       (atk_bridge_init):
-       Changed to call spi_atk_register_event_listeners directly, not via an
-       idle handler. (fix for #81139)
-       (gnome_accessibility_module_shutdown):
-       Removed conditional around deregistration of listeners, since we
-       don't use the idle handler and thus have always registered when
-       shutdown is called.
-       (spi_init_keystroke_from_atk_key_event):
-       Changed references to Accessibility_KEY_PRESSED to 
-       Accessibility_KEY_PRESSED_EVENT, etc. (fix for #79865).
-       
-2002-06-12  Bill Haneman  <bill.haneman@sun.com>
-
-       (TAGGED AND BRANCHED for gnome-2-0-0 after this commit)
-       
-       * configure.in:
-       Revved to 1.0.1
-
-       * test/stress-test.c:
-       Added file.
-
-       (may have been an incomplete commit yesterday?)
-
-2002-06-12  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/Makefile.am:
-       Added target for new stress-test.
-       
-       * test/stress-test.c:
-       New test, sends 1000 focus notifies in quick succession.
-
-       * test/key-listener-test.c:
-       Now we report whether a keylistener registration
-       request succeeded or failed.
-
-       * test/event-listener-test.c:
-       Uncommented some listeners which are now implemented.
-
-
-2002-06-06  Bill Haneman  <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-        (spi_controller_update_key_grabs):
-       Fix for #82509, lack of failure notification when
-        ALL_WINDOWS keygrabs fail due to XGrabKey
-        failure: we synchronize the server when 
-        registering a passive grab, to make sure we get the
-        error message before the call returns.
-
-2002-06-03  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/test-simple.c:
-       (key_listener_cb):
-       Removed #ifdef KEY_IMPL_WORKS guards.
-       (test_keylisteners):
-       Removed #ifdef KEY_IMPL_WORKS guards.
-       Fixed bug which was causing a hang waiting for a 
-       "press" event (which was already overwritten by a "release" 
-       event) from SPI_generateKeyboardEvent with synth-type of SPI_KEY_SYM.
-       (key_listener_cb):
-       Added code to set globals 'key_press_received' and
-       'key_release_received'.
-
-       * TODO:
-       Added section "1.1 API Proposed Additions" which
-       lists API additions desired for at-spi-1.1 (only one so far).
-       Updated TODO list a little.
-       
-2002-06-02  Bill Haneman  <bill.haneman@sun.com>
-
-       AT-SPI 1.0 API FINAL: at-spi 1.0 is now
-       API frozen.
-       
-       * configure.in: Revved to 1.0.0.
-
-       * idl/Accessibility_Registry.idl:
-       (registerKeystrokeListener):
-       Added boolean return value.
-       
-       * registryd/registry.c:
-       (notify_listeners_cb): Minor fix to debug output.
-
-       * registryd/Accessibility_Registry.server.in.in:
-       Revved version number in OAFIID to 1.0.
-
-       * registryd/registryd.c:
-       (main):
-       Use new OAFIID version.
-
-       * cspi/bonobo/cspi-bonobo.c:
-       (cspi_init):
-       Use new OAFIID version.
-
-       * test/at.c:
-       (main):
-       * test/app.c:
-       (main):
-       * atk-bridge/bridge.c:
-       (atk_bridge_init):
-       Use new OAFIID version.
-
-       * registryd/deviceeventcontroller.c:
-       (impl_register_keystroke_listener):
-       Added CORBA_boolean return value.
-       (spi_controller_register_device_listener):
-       Added gboolean return value.
-       (spi_controller_register_global_keygrabs):
-       Added gboolean return value.
-       (spi_key_set_contains_key):
-       Added implementation for many more control keys,
-       for instance F1-F12, arrow keys, End, Home, Page_Up,
-       Page_Down, Escape.
-       [TODO: some still not implemented]. 
-       
-       * text/screen-review-test.c:
-       (text_chunk_pad_string):
-       New function: it provides mapping between coordinate
-       positions of text chunks and character positions in the
-       screen-review-line output string.
-       (text_chunk_to_string):
-       New function, calls text_chunk_pad_string with various
-       pad/delimiter characters. Pushbuttons are delimited with
-       square brackets, Frames with vertical 'pipe' lines, and 
-       other text with double quotes.
-       (text_chunk_list_to_string):
-       Calls new function text_chunk_to_string.
-       (toplevel_composite):
-       New function to composite layers CANVAS through
-       POPUP in each toplevel (other layers are composited
-       across toplevels, i.e. BACKGROUND and OVERLAY).
-       (review_buffer_composite):
-       Revise to use new methods.
-       
-       
-       
-       
-
-2002-05-31  Laszlo Peter  <laca@sun.com>
-
-       * configure.in: add the Xtst libdir to the runpath on Solaris,
-       since it's not in the default library search path.
-
-2002-05-29  jacob berkman  <jacob@ximian.com>
-
-       * registryd/Makefile.am (EXTRA_DIST): dist the .in.in
-
-2002-05-29  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/screen-review-test.c:
-       (text_chunk_pad_string):
-       Added method, which pads the string according to the 
-       text bounds of the chunk.  It also takes a 3-character
-       string as a param which indicates the characters to be 
-       used for start, padding, and end delimitation of the chunk.
-       (text_chunk_to_string):
-       Changed to use text_chunk_pad_string.
-       
-       * configure.in: Fixed bug in AC_OUTPUT that was
-        causing path substitution in Accessibility_Registry.server
-       to fail.
-
-2002-05-23  Bill Haneman  <bill.haneman@sun.com>
-
-       * text/screen-review-test.c:
-       (guess_string_clip):
-       New method which attempts a best-guess at clipping
-       text from components (like Java labels) which don't
-       actually implement AccessibleText.  This inaccurate
-       clip is based on the assumption that the label is
-       justified left-and-right, and monospaced.
-       (text_chunk_get_clipped_string):
-       We now call guess_string_clip() for text-containing
-       components that don't implement AccessibleText.
-
-       * test/screen-review-test.c:
-       (review_buffer_get_text_chunk):
-       We now pull "name" from labels if they do not implement
-       AccessibleText (i.e. for Java labels).
-       (get_screen_review_line_at):
-       Added #ifdef guards CHUNK_LIST_DEBUG for diagnostics.
-
-       * configure.in:
-       Replaceded AC_OUTPUT target
-       registryd/Accessibility_Registry.server with 
-       registryd/Accessibility_Registry.server.in.
-
-       * registryd/Accessibility_Registry.server.in:
-       Removed (this is now a Makefile target).
-
-       * registryd/Accessibility_Registry.server.in.in:
-       Added (source for target above).  We now use $(libexecdir) as
-       prefix for the executable at-spi-registryd.
-
-       * registry/Makefile.am: 
-       Now install at-spi-registryd into $(libexecdir), and build .server
-       file with path (see above).
-       
-2002-05-22  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/screen-review-test.c:
-       (text_chunk_get_clipped_string):        
-       We now check to see if words fall within clip bounds 
-       before resorting to character-by-character clip bounds testing.
-
-       * TODO: Added a section for "2.2 Proposed API Additions".
-
-2002-05-21  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/screen-review-test.c:
-       * test/Makefile.am:
-       Added a screen review benchmarking and test program to test
-       directory.
-
-       * cspi/spi_accessible.c:
-       * cspi/spi_main.c:
-       Made some of the debug strings passed to cspi_check_ev a
-       little more specific.
-
-2002-05-21  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * test/screen-review-test.c: Fix crashes in debug statements
-
-2002-05-20  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/screen-review-test.c: Added this file.
-
-2002-05-13  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * atk-bridge/bridge.c: changed "object:state-change" to
-       "object:state-changed" to match docs.
-
-2002-05-13  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * atk-bridge/bridge.c: Hooked up state-change event details.
-
-2002-05-11  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/registry.c:
-       Fixed quarking bug in event string parsing; now events with
-       detail parameters get matched correctly to listeners.
-       [Bugzilla 80608].
-
-       * util/idl/Magnifier.idl: remove.
-       * util/idl: remove
-       * util/*.[ch]: Remove.
-       Magnification utilities and IDL are now in module gnome-mag.
-
-2002-05-10  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       Fixed bug in grab key conversion which was causing keycode grabs
-       to be converted to AnyKey grabs.
-
-       * NEWS:
-       updated NEWS file to reflect recent spin-off of gnome-mag.
-
-2002-05-09  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * cspi/spi_accessible.c: Added exception checks.  Fixed completely
-       busted AccessibleStateSet_compare.  Removed redundant casts.
-       
-       * cspi/spi-action.c: Removed redundant casts.
-
-       * cspi/spi_application.c: Fixed typo in AccessibleApplication_getVersion.
-
-       * cspi/spi_component.c: Fixed typos and casting error.
-
-       * cspi/spi_editabletext.c: Removed redundant casts.
-
-       * cspi/spi_hyperlink.c: Fixed casting and exception checking.
-
-       * cspi/spi_hypertext.c: Eliminated redundant casts.
-
-       * cspi/spi_image.c: Eliminated redundant casts.
-
-       * cspi/spi_registry.c: Eliminated redundant casts.
-       SPI_deregisterGlobalEventListenerAll () removed retval variable.
-       * cspi/spi_selection.c: Removed redundant casts.
-       * cspi/spi_text.c: Eliminated redundant casts.  Fixed exception
-       handling.  Screen geometry and text offsets were being returned as 0
-       on error which is technically valid-- changed these to return -1.
-       Added marshaller for text boundary types to fix bug with boundary
-       types being passed incorrectly to atk.
-                       
-2002-05-09  Bill Haneman <bill.haneman@sun.com>
-
-       
-       * cspi/spi_registry.c:
-       Fixed nasty bug in SPI_registerAccessibleKeystrokeListener
-       which was uncovered by the recent key changes.
-
-2002-05-09  Bill Haneman <bill.haneman@sun.com>
-
-       * test/event-listener-test.c:
-       * test/Makefile.am:
-       Added new test, "event-listener-test"; 
-       this code does two things; it benchmarks traversal time 
-       for the accessible hierarchy for the first running accessible 
-       app, and it connects listeners for all supported event types.  
-       It is thus useful as an example event listener and for 
-       diagnostics/debugging of event generation.
-       
-2002-05-08  Bill Haneman <bill.haneman@sun.com>
-
-       * test/Makefile.am:
-       Removed unnecessary dependency on libutil.
-
-       * configure.in:
-       Revved micro version: 0.13.1
-
-2002-05-08  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: 
-       Removed util/Makefile from targets.
-
-       * Makefile.am:
-       Removed util subdir from SUBDIRS (temporarily, 
-       pending removal of magnifier-only code
-       from UTIL).
-
-       * test/simple-at.c:
-       #ifdef-ed out magnifier dependencies, since
-       magnifier IDL, headers, and binary now live in
-       module gnome-mag and we don't want at-spi to depend 
-       on gnome-mag.  A magnifier demo which can run alongside
-       simple-at is forthcoming in the gnome-mag module.
-       
-       NOTE: Split magnifier binary, IDL, and magnification
-       activation code from at-spi into module gnome-mag.
-
-2002-05-03  Marc Mulcahy <marc.mulcahy@sun.com>
-       * cspi/bonobo/cspi-bonobo.c cspi/bonobo/cspi-bonobo-listener.c
-       cspi/bonobo/cspi-bonobo-listener.h: Added copyright notice.
-2002-05-03  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Revved to version 0.13.0
-       
-       * idl/Accessibility_Registry.idl:
-       Changed definition of KeySet from sequence of longs to sequence of
-       KeyDefinitions, and added KeyDefinition struct.
-       Required for fix to bug 80616.
-
-       * cspi/spi_registry.c: SPI_registerAccessibleKeystrokeListener():
-       Changed AccessibleKeySet to Accessibility_KeySet marshalling code
-       to use new definition (see above).  
-
-       * registryd/deviceeventcontroller.c: handle_keygrab(), 
-       spi_keyset_contains_key():
-       Changed to make use of new struct; this allows matching based on
-       string key-name, for instance "Tab".  This also allows matching of
-       composed characters, non-alphanumeric characters in a way that
-       doesn't involve dependencies on X keysym codes directly, etc.
-       
-       * test/key-listener-test.c:
-       Added test for Alt-Tab key using "string" specification of keyset,
-       and modified one of the tests to use a keycode-based keyset.
-       Thus this test both tests and demonstrates the creation and use of
-       keysets of three forms:  specified via keycode array, 
-       keysym array, and string array. (The string case only contains a
-       single string, i.e. a string array of length 1).        
-
-       * test/simple-at.c:
-       Turned on PRINT_TREE option by default.  Also fixed a
-       string-freeing bug in the PRINT_TREE code.  
-       Added a listener to window:minimize events.
-       
-2002-05-08  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * atk-bridge/bridge.c:
-       (spi_atk_register_event_listeners) Call atk_add_global_event_listener()
-       for window:activate and window:deactiveate
-       (atk_bridge_property_event_listener atk_bridge_signal_listener
-       atk_bridge_window_event_listener) Tidy debug code
-
-2002-05-02  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * libspi/accessible.c (impl_accessibility_accessible_get_role_name):
-       Fixed handling for NULL return value from ATK.
-
-       * libspi/action.c libspi/component.c libspi/editabletext.
-       libspi/hyperlink.c libspi/hypertext.c image.c libspi/selection.c
-       libspi/stateset.c libspi/table.c libspi/text.c libspi/value.c:
-       Removed redundant casts.
-       
-       * libspi/table.c (impl_getSelectedRows, impl_getSelectedColumns):
-       Fixed off by one bug.
-       
-       *libspi/text.c: removed impl_getRowColAtOffset (unimplemented
-       function not present in idl)
-       
-2002-05-02  jacob berkman  <jacob@ximian.com>
-
-       * atk-bridge/Makefile.am: make atk-bridge a real module
-
-2002-04-26  Radek Doulik  <rodo@ximian.com>
-
-       * libspi/stateset.c (spi_init_state_type_tables): fix size of
-       atk_state_types table
-
-2002-04-22  jacob berkman  <jacob@ximian.com>
-
-       * util/Makefile.am: 
-       * libspi/Makefile.am: add deps on the built files to help
-       automake, and don't version the ORBit typelib
-
-2002-04-19  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * cspi/cspi-lowlevel.h cspi/spi-impl.h cspi/spi-listener.h 
-       cspi/spi-private.h cspi/spi-roletypes.h cspi/spi-statetype.h
-       cspi/spi.h cspi/spi_accessible.c cspi/spi_action.c 
-       cspi/spi_application.c cspi/spi_component.c cspi/spi_editabletext.c
-       cspi/spi_hyperlink.c cspi/spi_hypertext.c cspi/spi_image.c
-       cspi/spimain.c cspi/spi_selection.c cspi/spi_streamablecontent.c
-       cspi/spi_table.c cspi/spi_text.c cspi/spi_value.c
-       libspi/accessible.h libspi/accessible.h libspi/base.h 
-       libspi/component.h libspi/editabletext.h libspi/hyperlink.h 
-       libspi/hypertext.h libspi/image.h libspi/keymasks.h libspi/libspi.h
-       libspi/relation.h libspi/remoteobject.h libspi/selection.h 
-       libspi/spi-private.h libspi/statetset.h libspi/table.h
-       libspi/text.h libspi/util.h libspi/value.h util/mag_client.c
-       util/mag_client.h util/mag_control.c util/mag_image.c
-       util/mag_image.h util/magnifier.c util/magnifier.h: 
-       Add missing file headers; standardize existing ones
-
-2002-04-18  Marc Mulcahy  <marc.mulcahy@sun.com>
-
-        * atk-bridge/bridge.c: Added window event support.
-
-2002-04-18  Michael Meeks  <michael@ximian.com>
-
-       * libspi/relation.c (impl_getNTargets): impl.
-       (impl_getTarget): impl.
-
-       * libspi/Makefile.am: fix stateset install.
-
-2002-04-17  Bill Haneman <bill.haneman@sun.com>
-
-       * NEWS:
-       Started putting useful info in this file.
-       
-2002-04-17  Marc Mulcahy <marc.mulcahy@sun.com>
-       * atk-bridge/bridge.c: 
-       Propagate state-changed notifications to ATs
-       * cspi/spi_registry.c: update docs to reflect actual behavior of
-       state-change events.
-
-2002-04-17  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Incremented version to 0.12.1
-       
-       * util/mag_client.h:
-       Add missing declaration for magnifier_exit, 
-       used by mag_control.c - Forte compiler didn't like
-       the implicit redeclaration of the function :-(
-
-
-2002-04-16  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Revved version to 0.12 due to API change (see below).
-
-       * cspi/spi-roletypes.h:
-       removed (obsolete) SPI_ROLE_FOCUS_TRAVERSABLE 
-       definition from the inline docs, and added docs
-       for SPI_ROLE_LAST_DEFINED.
-
-       * cspi/spi.h:
-       * cspi/spi_streamablecontent.c:
-       Added missing seek_type parameter to
-       (so far unused) method, 
-       AccessibleStreamableContent_seek().
-       [ RT approval JodyG. ]
-
-       * cspi/spi_event.c:
-       Fixed docs for SPI_createAccessibleKeystrokeListener.
-
-       * cspi/spi_registry.c:
-       Fixed docs for SPI_KEYSET_ALL_KEYS.
-       
-       * docs/reference/cspi/at-spi-cspi-sections.txt:
-       Added a number of missing APIs to SECTIONS.
-       
-2002-04-16  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/Makefile.am:
-       * cspi/Makefile.am:
-       * cspi/bonobo/Makefile.am:
-       Add $(X_LIBS) to makefiles.
-
-2002-04-15  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Revved version to 0.11.
-
-       * libspi/component.c:
-       Added implementation for grabFocus.
-
-       * idl/Accessibility_Component.idl
-       (Accessibility_Component_grabFocus):
-       Made this method return boolean to indicate success or failure, to
-       be consistent with cspi and the corresponding ATK method.
-       
-       * idl/Accessibility_Selection.idl
-       (Accessibility_Selection_selectAll) :
-       Made these methods return boolean to indicate success or
-       failure, to be consistent with cspi and the corresponding ATK methods.
-       
-       * idl/Accessibility_EditableText.idl 
-       (Accessibility_EditableText_setTextContents,
-        Accessibility_EditableText_insertText,
-        Accessibility_EditableText_cutText,
-        Accessibility_EditableText_deleteText,
-        Accessibility_EditableText_pasteText):
-       Made these methods return boolean to indicate
-       success or failure.
-
-       * cspi/spi_editabletext.c:
-       Made these methods return booleans.
-
-       * libspi/selection.c:
-       * libspi/component.c:
-       * libspi/editabletext.c:
-       Connected the boolean returns from ATK
-       to the server-side code referenced above.
-       
-2002-04-14  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Table.idl: Added missing methods,
-       Accessibility_Table_addRowSelection,
-       Accessibility_Table_addColumnSelection,
-       Accessibility_Table_removeRowSelection,
-       Accessibility_Table_removeColumnSelection.
-
-       * cspi/spi_table.c:
-       Added C wrappers for above IDL:
-       AccessibleTable_addRowSelection,
-       AccessibleTable_addColumnSelection,
-       AccessibleTable_removeRowSelection,
-       AccessibleTable_removeColumnSelection.
-       
-       * libspi/table.c:
-       Added server-side implementation code for IDL above, connecting
-       to pre-existing ATK api.
-       
-2002-04-13  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * idl/Accessibility_State.idl: Made StateSet inherit from BonoboUnknown.
-
-       * libspi/accessible.c: Added implementation fo
-       Accessibility_Accessible_get_state.
-       
-       * libspi/libspi.h: Added stateset.h to the list of includes.
-
-       * libspi/stateset.c: Fixed broken implementation.
-
-2002-04-13  Bill Haneman <bill.haneman@sun.com>
-
-        * util/magnifier.c:
-       Added implementation code for Accessibility_Magnifier_exit ().
-
-       * util/mag_control.c:
-       Added test code for above method; you can
-       now kill an existing magnifier via 
-       ./mag_control q, from the util directory.
-
-       * test/key-listener-test.c:
-       * test/Makefile.am:
-       Added a new test, for our key listener API.
-
-2002-04-11  Bill Haneman <bill.haneman@sun.com>
-
-       * test/app.c, test/keysynth-demo.c:
-       * util/magnifier.c:
-       Replace use of snprintf with g_snprintf.
-       (fix for bugzilla 78249)
-
-2002-03-27  Michael Meeks  <michael@ximian.com>
-
-       * Version 0.10.0
-
-       * util/Makefile.am (INCLUDES): fix.
-       (DONT_DIST_SOURCE): don't distribute the
-       generated files.
-
-       * libspi/Makefile.am (dist-hook): ditto.
-
-2002-03-27  Padraig O'Briain  <padraig.obriain@sun.com>
-
-       * libspi/hypertext.c:
-       Fix warnings when yelp is used with atk-bridge
-
-2002-03-21  Michael Meeks  <michael@ximian.com>
-
-       * libspi/application.c (spi_application_new):
-       use spi_accessible_construct so we use the AtkObject
-       cache correctly.
-
-2002-03-19  Michael Meeks  <michael@ximian.com>
-
-       * registryd/registry.c (desktop_remove_application),
-       (desktop_add_application): clean coding style.
-
-       * registryd/desktop.c (spi_desktop_remove_application),
-       (spi_desktop_add_application): kill re-enterency hazards.
-       (spi_desktop_dispose): remove bogus redundant cast
-       obscuring bug; fix bug too.
-       (spi_desktop_init): make the desktop object immortal.
-
-2002-03-16 Bill Haneman <bill.haneman@sun.com>
-
-       * test/simple-at.c:
-       Added a #define-guarded tree-traversal step
-       when enumerating the apps (diagnostic tool).
-
-2002-03-15 Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Role.idl:
-       Added ROLE_DRAWING_AREA which seemed to be missing from the
-       previous commit.
-
-2002-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * cspi/spi-roletypes.h cspi/spi_accessible.c
-       idl/Accessibility_Role.idl libspi/accessible.c: synched up role
-       types with ATK.
-
-       * registryd/desktop.c registryd/desktop.h registryd/registry.c:
-       Added signals to SpiDesktop and callbacks in SpiRegistry to notify
-       AT when applications are added and removed from the desktop.  This
-       reverts the previous broken implementation using the backing
-       AtkObject for the SpiDesktop.
-       
-       2002-03-14  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * registryd/desktop.c: emit the "children-changed::add" and
-       "children-changed::remove" signals on the backing ATK object for
-       the desktop so AT can tell when applications are started and shut
-       down.
-
-       2002-03-14  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * cspi/spi_accessible.c: Made role names freeable with SPI_freeString ()
-
-       2002-03-14  Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * libspi/stateset.c: implemented Accessibility_StateSet_compare ()
-
-       * cspi/spi_accessible.c: Implemented c bindings for stateset support
-
-       * cspi/state-types.h: synched with IDL and ATK
-
-       2002-03-13  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/accessible.c 
-       (impl_accessibility_accessible_get_child_at_index):
-       Change return value for g_return_if_fail ()
-       to CORBA_OBJECT_NIL instead of "0" (!)
-
-       * registryd/Makefile.am:
-       * registryd/Accessibility_Register.server.in:
-       Changed name of executable, "registryd",
-       to something more informative:
-       "at-spi-registryd".
-
-2002-03-13  Michael Meeks  <michael@ximian.com>
-
-       * atk-bridge/bridge.c (atk_bridge_init): don't register
-       if we're in a bonobo-component, rather than a bonobo app.
-
-2002-03-13  Michael Meeks  <michael@ximian.com>
-
-       * atk-bridge/bridge.c (gtk_module_init): split
-       out body to (atk_bridge_init): here, since otherwise
-       we get symbol conflicts and oddness when invoked
-       from (gnome_accessibility_module_init): here (upd.)
-
-2002-03-11  Bill Haneman  <bill.haneman@sun.com>
-
-       * HACKING:
-       New file.  Explicitly allow "build sheriff" putbacks provided
-       they are tested on Solaris.
-       
-       * docs/reference/cspi/Makefile.am:
-       Added '-' to the "cp" command for index.sgml.
-       ("patch by thomasvs, soon coming to a GUADEC near you")
-
-       * configure.in:
-       Incremented version number (0.9.0) for new release.
-       Changed macro that checks for popt, to better detect
-       obsolete versions of popt.
-       
-       * configure.in:
-       Added X_LIBS to AC_SUBST, for applications
-       that call Xlib API directly.
-       
-
-2002-03-07  Bill Haneman  <bill.haneman@sun.com>
-
-       * configure.in:
-       Include gdk_pixbuf_x11-2.0 in UTILS_LIBS.
-
-       * util/Makefile.am:
-       Fix regression caused by hard-coding major
-       version of gdk_pixbuf_x11; now use $(UTILS_LIBS)
-       (see above change).
-       
-       * test/test-simple.c (test_editable_text),
-       (test_test): revert previous change (error was 
-       a regression in gail which is now fixed).
-       
-2002-03-04  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c (test_editable_text),
-       (test_text): pass G_MAXINT instead of '-1' for
-       whole string - is this a good thing !?
-
-       * cspi/spi_accessible.c
-       (Accessible_getRelationSet): fix crasher bug
-       overwriting the end of the array.
-
-       * test/test-simple.c (validate_accessible): free,
-       not g_free returned relation set.
-
-2002-02-26 Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * libspi/stateset.c libspi/stateset.h libspi/Makefile.am:
-       implemented stateset support
-
-       * idl/Accessibility_State.idl: Made necessary changes to
-       the IDL to support state sets.
-
-2002-02-12 Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       Added implementation for generateMouseEvent.
-
-       * cspi/spi_registry.c:
-       Connected new implementation for generateMouseEvent
-       to the C bindings.
-       
-2002-02-12 Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in: 0.8
-       Incremented revision (but no change in public API
-       outside of 'utils', which are not installed public yet.)
-
-       * libspi/component.c:
-       Changed to use atk_component API for layers and
-       mdi_zorder, instead of deprecated atk_object API.
-       
-       Magnification Utility Enhancements:
-       
-       * util/magnifier.c:
-       Added implementation of createZoomRegion, clearAllZoomRegions,
-       resizeZoomRegion.  Added new commandline argument
-       "--no-initial-region".  Note that clearAllZoomRegions doesn't
-       unmap the old '0' region as it should (yet), and the other
-       methods only work when creating/resizing a single region,
-       which is "region 0".  
-       (Code for multiple region support will be added later.)
-
-       * util/mag_image.c:
-       Now we raise the magnifier window each time it's refreshed;
-       this will help keep it on top.
-       
-       * util/mag_client.h:
-       Added simple wrappers for above, used by mag_control.
-       For general use, it's recommended to use the bonobo magnifier
-       control API directly instead of using these wrappers.
-
-       * util/mag_image.h:
-       Moved ZoomRegionData from magnifier.c to this file.
-       
-       * util/mag_control.c: 
-       Added some code to exercise new IDL implementations.
-       
-2002-02-06 Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * libspi/text.c: Provide implementation for getAttributes.
-
-2002-02-04  Bill Haneman <bill.haneman@sun.com>
-       
-       * configure.in:
-       Incremented revision.
-
-       * test/test-simple.c:
-       Replaced use of deprecated g_main_iteration with 
-       g_main_context_iteration.
-       
-2002-01-28  Padraig O'Briain <padraig.obriain@sun.com>
-
-       * configure.in:
-       Incremented revision for desktop alpha 2.
-
-2002-01-28  Mark McLoughlin  <mark@skynet.ie>
-
-       * libspi/remoteobject.[ch]: make RemoteObject and interface rather
-       than an atk object.
-
-       * test/simple-at.c: include netinet/in.h.
-
-2002-01-24  Mark McLoughlin  <mark@skynet.ie>
-
-       * cspi/spi_accessible.c: (Accessible_getRelationSet):
-       use NULL, not CORBA_OBJECT_NIL.
-
-       * libspi/accessible.c:
-       (impl_accessibility_accessible_get_relation_set):
-       allocate the sequence correctly.
-
-       * libspi/remoteobject.h: kill spi_remote_object_new.
-
-       * test/test-simple.c: (validate_accessible): add code
-       to test relation sets, now all we need is to figure
-       out how to excercise this code path :/
-
-2002-01-18  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c
-       (key_listener_cb): consume the key.
-       (test_keylisteners): update.
-       (main): wait for any pending unrefs on events.
-
-       * registryd/deviceeventcontroller.c
-       (spi_controller_update_key_grabs): only re-issue the
-       grab on a key release.
-       (spi_device_event_controller_forward_key_event):
-       refresh the keygrabs before we notify the listeners,
-       to reduce the X ungrab / re-grab race.
-       (spi_controller_register_with_devices): remove
-       XSelectInput - we do that with the gdk_window_ call.
-       (_spi_controller_device_error_handler): return a value.
-       s/GDK_DISPLAY/spi_get_display/
-
-2002-01-17  Michael Meeks  <michael@ximian.com>
-
-       * registryd/deviceeventcontroller.c
-       (_deregister_keygrab): don't blow out the later
-       assertion.
-
-       * test/test-simple.c (test_keylisteners): do a
-       more intelligent validation.
-
-2002-01-14  Michael Meeks  <michael@ximian.com>
-
-       * atk-bridge/bridge.c
-       (gnome_accessibility_module_init),
-       (gnome_accessibility_module_shutdown): impl.
-       (gtk_module_init): protect vs. double inits.
-       (add_signal_listener): impl.
-       (spi_atk_bridge_state_event_listener): kill
-       (deregister_application): split out of
-       (spi_atk_bridge_exit_func): here.
-
-2002-01-18  Bill Haneman <bill.haneman@sun.com>
-
-        * test/simple-at.c:
-       Added caret tracking when using magnifier, and 
-       now use text bounds for focus tracking of text elements, rather than
-       the component bounds - this is helpful for short text fields in long
-       table cells, at high magnification.
-       
-2002-01-16  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       Regression fix for keylistener de-registration; global keygrabs
-       were not being released when deregisterKeystrokeListener was
-       called in cspi, since 
-       Accessibility_DeviceEventController_deregisterKeystrokeListener
-       was called with a zero-length keyset.  That is because the cspi
-       method, SPI_deregisterKeystrokeListener, does not take a keyset
-       parameter but instead should remove all the key grabs held be a
-       keystroke listener.  
-       The code in impl_deregister_keystroke_listener was changed to copy
-       the keylist from the listener instance previously registered with
-       the DeviceEventController before releasing the grabs.
-
-       * registryd/registry.c:
-       * registryd/deviceeventcontroller.c:
-       * libspi/spi-private.h:
-       * libspi/util.c:
-       Changed spelling of "re-enterant" to "re-entrant" globally.
-
-2002-01-16  Bill Haneman <bill.haneman@sun.com>
-
-       * test/test-simple.c:
-       Changed key listeners test - the test was slightly mis-using the
-       (admittedly poorly documented) SPI_generateKeyboardEvent API.
-       It now uses '=' as the key event listened to and generated,
-       relying on a keysym match rather than assuming that keycode 33 
-       is always equal to keysym '!'.
-
-2002-01-15  Bill Haneman <bill.haneman@sun.com>
-
-       * test/simple-at.c:
-       Changed simple-at to use a specific keyset, rather than
-       SPI_KEYSET_ALL_KEYS - this helps minimize clashes with the window
-       manager, desktop, etc.
-       
-2002-01-11  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       Replaced standard X error handler with a special handler that 
-       is non-fatal for failed keygrabs.  This works around 
-       problems with keygrab clashes sometimes observed on 
-       Solaris using CDE.
-       Re-instated SPI_DEVICE_TYPE_MOUSE in enum (didn't reinstate 
-       mouse handling code as yet).
-       
-2002-01-11  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Incremented revision for desktop alpha release.
-
-       * README:
-       Fixed a couple of the more glaring errors (still not 
-       very up-to-date).
-
-2002-01-11  Michael Meeks  <michael@ximian.com>
-
-       * registryd/deviceeventcontroller.c
-       (spi_device_event_controller_forward_key_event): kill
-       XUngrabKey / XKeyGrab race.
-       (spi_controller_grab_keyboard): rename to
-       (spi_controller_update_key_grabs): this, and deal
-       with incremental adding / removing grabs more
-       sensibly.
-       (_register_keygrab): ensure we're not pending a remove.
-       (spi_grab_mask_free): impl.
-       (spi_controller_register_global_keygrabs): split out
-       common code into:
-       (handle_keygrab): impl.
-       (_deregister_keygrab): impl.
-       (spi_controller_deregister_global_keygrabs): impl.
-       (spi_controller_update_key_grabs): re-issue the grab if
-       we just recieved a notification.
-
-       * test/test-simple.c (key_listener_cb): remove debug.
-
-       * registryd/deviceeventcontroller.c
-       (spi_controller_register_device_listener): after
-       registering a global keygrab, actualy register it !
-       don't wait for a timeout; doh !
-
-       * registryd/deviceeventcontroller.[ch]: s/DeviceEvent/DE/
-       to make it more readable / manipulable.
-       s/grabmask/grab_mask/ s/refcount/ref_count/
-       s/keyval/key_val/ s/modmask/mod_mask
-
-2002-01-08  Michael Meeks  <michael@ximian.com>
-
-       * registryd/deviceeventcontroller.c
-       (spi_controller_register_with_devices): use gdk calls to
-       setup a filter.
-       (global_filter_fn): implement the filter.
-       (spi_device_event_controller_check_key_event): rename to
-       (spi_device_event_controller_forward_key_event): this & upd.
-       (spi_get_display): replace with GDK_DISPLAY.
-
-       * registryd/deviceeventcontroller.c
-       (spi_controller_deregister_device_listener): unroll into
-       (impl_deregister_keystroke_listener): here to simplify.
-       (spi_controller_register_global_keygrabs): split cut and
-       paste (!) out into (_register_keygrab): here, shorter & sweeter.
-       (spi_controller_deregister_device_listener): remove.
-       (impl_register_mouse_listener): remove, no mouse listener
-       support in at-spi-1.0
-
-       * registryd/registry.c
-       (_device_event_controller_hook): kill.
-       (spi_registry_init): upd.
-
-       * registryd/deviceeventcontroller.c
-       (spi_device_event_controller_class_init): upd.
-       (spi_check_key_event): merge into.
-       (spi_device_event_controller_check_key_event):
-       here and kill strange static ev init, don't leak
-       the x_event - nor dynamicaly allocate it.
-
-       * registryd/registry-main.c (main): re-direct
-       timeout to remove strange vtable mess.
-
-       * registryd/deviceeventcontroller.c
-       (remove_listener_cb): impl.
-       (spi_controller_deregister_device_listener):
-       fix re-enterancy hazard.
-
-2002-01-07  Michael Meeks  <michael@ximian.com>
-
-       * registryd/deviceeventcontroller.c
-       (spi_device_event_controller_new): upd.
-       (impl_notify_listeners_sync): upd. debug.
-       (spi_notify_keylisteners): fix re-enterancy hazards,
-       prettify, remove O(n*n) iteration.
-       (spi_controller_grab_keyboard): fix iteration.
-       (spi_check_key_event): re-format to suit coding style.
-       Clean all the warnings - we're warning free.
-
-       * registryd/deviceeventcontroller.h:
-       * registryd/registry.h: make mutualy referential with
-       typesafe forward references instead of (!) void pointer
-       hacks.
-
-2002-01-11  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_accessible.c (role_names): add a role name
-       to sync this array with the enum; and make the regression
-       tests pass, sigh.
-
-2002-01-10  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_registry.c (SPI_generateKeyboardEvent): 
-       allow expansion of enumeration & kill warning.
-
-       * test/test-simple.c (key_listener_cb): impl.
-       (test_keylisteners): impl.
-
-       * cspi/spi-listener.h: make listener signatures const
-       on the provided (const) events.
-
-       * test/keysynth-demo.c: upd. to const events.
-
-       * test/simple-at.c: ditto.
-
-2002-01-11  Bill Haneman <bill.haneman@sun.com>
-
-        * configure.in:
-       Rev the version to 0.5 (the previous tarball was named 0.4, 
-       even though the micro number was 3), so we need to rev upwards
-       again for beta2/"desktop-alpha" 
-       * test/demo.csh:
-       Checked in a demo script, which requires editing before use!
-       Proceed with caution.
-       
-       * libspi/value.h:
-       Fixed typo in header which was redefining SPI_ACTION_CLASS.
-
-       * cspi/spi_accessible.c:
-       Add a couple of missing enum initializations, and fix some enum
-       comments.
-
-       * cspi/spi_registry.c:
-       Add comment describing keystring parameter to SPI_generateKeyboardEvent.
-       
-       * docs/reference/cspi/at-spi-cspi-sections.txt:
-       Remove/fix a couple of broken document references.
-
-       * test/simple-at.c:
-       Minor tweaks to the demo.  We now (sigh) use Alt-SHIFTLOCK as well
-       as Alt-Control to listen for commands, since on some systems
-       Control-Alt may already be grabbed.
-
-2002-01-10  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Update version number to 0.4 for Beta2.
-       
-       * libspi/accessible.c, libspi/accessible.h:
-       Expose spi_accessible_construct, to enable libgail-gnome
-       construction from spi_accessible subtype.
-
-       * utils/magnifier.c:
-       Workaround for bug in some non-gnome-compliant window managers
-       which made magnifier resize improperly.
-
-2002-01-09  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/accessible.c: (spi_accessible_new) :
-       Move the test for SPI_IS_REMOTE_OBJECT to
-       spi_accessible_new_return, fixing a bug and compile time warning.
-       
-2002-01-08  Michael Meeks  <michael@ximian.com>
-
-       * registryd/registry.c (parse_event_type): remove strndup.
-
-       * libspi/Makefile.am (libspi_la_SOURCES): remove
-       sources already included in the headers section.
-
-       * libspi/util.c: add.
-
-       * libspi/spi-private.h: add.
-
-       * registryd/registry.c: update to moved list iterators.
-
-2002-01-05  Michael Meeks  <michael@ximian.com>
-
-       * test/simple-at.c (main): upd. auto-module set to atk-bridge
-
-       * test/test-simple.c (main): ditto.
-
-2002-01-04  Michael Meeks  <michael@ximian.com>
-
-       * libspi/accessible.c (spi_accessible_new): remove 2nd,
-       redundant construct.
-
-       * registryd/registry.c
-       (get_listener_list): impl.
-       (impl_accessibility_registry_register_global_event_listener):
-       re-impl. to simplify using ~, remove dodgy const cast off.
-       (parse_event_type): constify.
-       (impl_accessibility_registry_deregister_global_event_listener_all): 
-       re-write, more efficiency and simplicity, kill re-enterancy
-       hazard.
-       (compare_listener_corbaref, compare_corba_objects),
-       (compare_listener_quarks): define out.
-       (impl_accessibility_registry_deregister_global_event_listener): 
-       re-write for effiency, and nail re-enterancy hazard.
-       (impl_accessibility_registry_get_desktop_list): impl.
-       (re_enterant_list_delete_link): impl.
-       (re_enterant_list_foreach): impl.
-       (remove_listener_cb): impl.
-       (_registry_notify_listeners): kill.
-       (notify_listeners_cb): impl.
-
-       * cspi/spi_registry.c (SPI_freeDesktopList): impl.
-       (SPI_getDesktopList): impl.
-
-       * test/test-simple.c (test_desktop): test the methods.
-
-2002-01-03  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_event.c (SPI_createAccessibleKeySet): dup the
-       keystrings since we free them
-       (SPI_freeAccessibleKeySet): in here.
-
-       * libspi/accessible.c (spi_accessible_new): kill warning,
-       wonder what is going on with the constructor here.
-
-2002-03-01  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/accessible.c (spi_accessible_new ()) :
-       Added check to see if AtkObject is an SpiRemoteObject before
-       creating an SpiAccessible.
-       
-2002-05-01  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c (spi_controller_grab_keyboard):
-       Enable keygrabs using the Control modifier, now that they are
-       working properly (they were previously disabled).
-
-       * test/simple-at.c:
-       Change the command keygrab for this demo to "Control+Alt", so as
-       to conflict with fewer other key commands on the system; this
-       means that the quit command for "simple-at" is now "Ctrl-Alt-q".
-
-       Removed a pointlessly-chatty keylistener for unshifted keys
-       (shifted keys are still reported).
-       
-2002-02-01  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/remoteobject.h:
-       * libspi/remoteobject.c:
-       Added definitions for special AtkObject subtype, required for
-       support of remote components (specifically, used by BonoboControl
-       accessibility implementation).
-       
-2002-01-02 Marc Mulcahy  <marc.mulcahy@sun.com>
-
-       * cspi/spi.h: synched relation types with ATK
-
-       * cspi/spi_accessible.c: Added implementations of
-       AcccessibleRelation_* methods
-
-       * idl/Accessibility_Relation.idl: added getRelationTypeName
-       method.  Synched known relation types with ATK.  Allowed for
-       relation type extension with the RELATION_EXTENDED type.
-       
-       * libspi/relation.c: Provided implementations for
-       AccessibleRelation methods.
-
-2002-01-01  Bill Haneman <bill.haneman@sun.com>
-
-       API tweaks for today's API 'freeze'.
-
-       * idl/*:
-       Added placeholder functions to allow future compatible expansion
-       of the IDL interfaces.
-
-       * idl/Accessibility_Registry.idl:
-       Changed generateKeyEvent to generateKeyboardEvent.  Changed
-       signature of this method to accept an optional keystring in
-       parameter (for complex text input synthesis) and changed use of
-       simple 'boolean' parameter in registerKeystrokeListener to a
-       struct, EventListenerMode.
-
-       * cspi/spi_accessible.c:
-       * cspi/spi.h:
-       * cspi/spi_streamablecontent.c:
-       Added references to AccessibleStreamableContent interface, and
-       definition and implementation of AccessibleStreamableContent 
-       C bindings.
-
-       * cspi/spi_registry.c:
-       * cspi/spi.h:
-       Changed generateKeyEvent API to generateKeyboardEvent,
-       taking a new (optional) keystring parameter to support complex
-       text input.
-       
-       * at-bridge/*:
-       * atk-bridge/*:
-       Renamed directory (to better reflect its actual purpose, bridging
-       from at-spi to ATK).  The .so module is also now named
-       libatk-bridge.so.
-
-       * idl/Accessibility_Hypertext.idl:
-       * libspi/accessible.c:
-       * libspi/hypertext.h:
-       * libspi/hypertext.c:
-       Changed Accessibility_Hypertext to *not* derive from
-       Accessibility_Text.
-
-       * cspi/spi_registry.c:
-       Added list of legal event type names for 'window' events, which
-       completes the registry event API.
-
-2001-12-22  Marc Mulcahy  <marc.mulcahy@sun.com>
-
-       * at-bridge/bridge.c: Added registration for separate
-       "Atktext:text-changed::insert" and "AtkText:text-changed::delete"
-       signals.  If either of the first two parameters to the generic
-       bridge signal handler are ints, they are passed on as event
-       details.  This allows an AT to determine what text was inserted.
-
-2001-12-21  Bill Haneman <bill.haneman@sun.com>
-
-       * registryd/deviceeventcontroller.c:
-       Fixed regressions in generateKeyEvent caused by the removal of
-       gdk_init from registryd; we now use pure X calls to connect to the
-       display, which makes sense because deviceeventcontroller already
-       uses a fair bit of X API (should eventually be migrated to a
-       'portability layer').
-
-       * registryd/desktop.c:
-       Fixed minor regression in spi_desktop_init, changed the way the
-       desktop name is being set to work with new spi_base API
-       (gobject-based, rather than AtkObject-based).
-
-       * registryd/Makefile.am:
-       Minor revision of makefile to use XTST_LIBS variable rather than
-       hard-wiring the Xtst LD_ADD element.
-
-       * test/keysynth-demo.c:
-       Tweaked an output message; added initialization of the
-       'keystrings' member of the "switch listener" key_set.
-
-       * libspi/relation.c:
-       Squashed compile-time warning.
-
-       * libspi/accessible.c:
-       Cosmetic and formatting fixes, renamed a static method.
-       
-2001-12-18 Marc Mulcahy <marc.mulcahy@sun.com>
-
-       * libspi/accessible.c 
-       * libspi/action.c
-       * libspi/application.c 
-       * libspi/base.c 
-       * libspi/base.h
-       * libspi/component.c 
-       * libspi/editabletext.c
-       * libspi/hyperlink.c 
-       * libspi/hypertext.c
-       * libspi/image.c 
-       * libspi/selection.c 
-       * libspi/table.c
-       * libspi/text.c 
-       * libspi/value.c 
-       * registryd/desktop.c:
-       Changed SpiBase to contain a GObject pointer rather than an AtkObject
-
-2001-12-17  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Registry.idl:
-       Added boolean member 'is_text' to DeviceEvent.  This is for the
-       use of key events, and helps prevent ambiguity between composed
-       key strings and keysym names, since both may potentially be
-       returned in the 'event_string' member.
-
-       * at-bridge/bridge.c:
-       * registryd/deviceeventcontroller.c:
-       Use the 'is_text' member when notifying device event listeners.
-       Knon issue: composed characters are not dealt with correctly by
-       the global key listener implementation yet.
-       
-2001-12-17  Bill Haneman <bill.haneman@sun.com>
-
-       * at-bridge/bridge.c:
-       Namespaced local static methods to spi_atk_bridge_* where
-       previously named bridge_*, and spi_* elsewhere.
-
-       * at-bridge/bridge.c:
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       Added demarshalling/conversion for string member of
-       Accessibility_DeviceEvent to AccessibleKeystroke.
-
-       * registryd/deviceeventcontroller.c:
-       Added code to fill the Accessibility_DeviceEvent key string value
-       member for global key events (i.e. from XGrabKey), to match
-       behavior of Accessibility_DeviceEvent from the toolkit key events
-       from the bridge.  Fixed timestamp in global key event notifications.
-
-       * test/simple-at.c:
-       Added printout of key event's string value to
-       report_ordinary_key_event, for demo/debugging purposes.
-
-2001-12-15  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Registry.idl:
-       Removed Accessibility_KeyStroke structure in favor of generic
-       Accessibility_DeviceEvent structure.
-       Changed Accessibility_ControllerEventMask from a struct to an
-       unsigned long.
-
-       * at-bridge/bridge.c:
-       Changed APIs to use DeviceEvent structure as above, and removed
-       bogus casting between these event structures.
-
-       * cspi/spi-listener.h:
-       Added keystring member of AccessibleKeystroke structure, to enable
-       matching on event "names" rather than only hardware codes and
-       keysyms.
-
-       * cspi/spi.h:
-       Added keystrings member of AccessibleKeySet struct, to allow
-       matching on event names (as above).
-       Added declarations for SPI_createAccessibleKeySet and
-       SPI_freeAccessibleKeySet.  Due to changes in libspi, we now pass
-       event modmasks directly as unsigned ints rather than structs with
-       refcounts, in the DeviceEventController methods.
-
-       * cspi/spi_registry.c:
-       Add SPI_createAccessibleKeySet and SPI_freeAccessibleKeySet methods.
-
-       * cspi/spi-roletypes.h:
-       Added documentation of newly added SPI Roles.
-
-       * cspi/bonobo/cspi-bonobo-listener.c:
-       Changes in support of API changes above.
-       
-       * libspi/accessible.c:
-       Converted APIs to use DeviceEvent structure (see IDL changes
-       above). 
-
-       * registryd/deviceeventcontroller.c:
-       Added DEControllerGrabMask structure to track keygrabs not only by
-       modmask but by keyset as well; this allows us to do "global"
-       (i.e. X) keygrabs on a per-key or keyset basis rather than always
-       grabbing on AnyKey and then filtering after-the-fact.
-       Bugfixes for event filtration mean that we don't get false matches
-       on SPI_KEY_RELEASED, when only SPI_KEY_PRESSED was requested.
-
-       * registryd/deviceeventcontroller.c:
-       Namespaced a number of static methods to use spi_ prefix.  Major
-       revision to internals of global (i.e. X) key grabs.
-
-       * registryd/deviceeventcontroller.h:
-       Removed keymask_list and added keygrabs_list to
-       SpiDeviceEventController struct.
-
-       * test/simple-at.c:
-       Added use of SPI_createAccessibleKeySet API when creating a
-       listener for only one key.  Attach a listener to "shift spacebar
-       SPI_KEY_RELEASE" as a demonstration.  Changed (incorrect) usage of
-       X key event names to SPI key event names, so that listeners are
-       registered for (SPI_KEY_PRESSED | SPI_KEY_RELEASED), for instance.
-       
-       * test/keysynth-demo.c:
-        Changed (incorrect) use of X key event names (KeyPressed,
-       KeyReleased) to SPI enums SPI_KEY_PRESSED and SPI_KEY_RELEASED.
-       
-
-2001-12-12  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/accessible.c:
-        Convert all AtkRole enumerations to Accessibility_Role enums when
-       getting a role from an AtkObject.
-       
-       * cspi/spi_accessible.c:
-       Complete the conversion of Accessibility_Role enums at runtime to
-       AccessibleRole (SPI_ROLE_*) roles in Accessible_getRole, so that
-       role enums correctly match those given in spi-roletypes.h.  
-       Re-synchronize the local names list for AccessibleRole_getName ().
-       AccessibleRole_getName is now deprecated, since it duplicates the
-       more reliable Accessible_getRoleName.
-       Added some role types from Accessibility_Role.idl.
-
-       * idl/Accessibility_Role.idl:
-       Added some role types used by AtkRole.
-
-2001-12-12  Bill Haneman <bill.haneman@sun.com>
-       
-       * cspi/spi.h:
-       * cspi/spi_registry.c:
-       * cspi/spi_event.c:
-       * cspi/cspi-bonobo-listener.c:
-       Namespaced all methods that did not begin with an "SPI_" or
-       "Accessible" prefix to "SPI_".  
-
-       * cspi/spi_main.c:
-       Homogenized internal function namespace to "cspi_" for statics.
-       
-       * test/*.c:
-       Patched tests to use the new CSPI API.
-
-       * docs/reference/cspi/at-spi-cspi-sections.txt:
-       Updated docs to reflect namespace changes, and added a number of
-       methods to the documentation.
-       
-       * registryd/registry.c:
-       Changed use of strings and string hashes in listener event
-       matching and parse_event_string to use GQuark, which is guaranteed
-       unique.
-       
-       * registryd/registry.h:
-       Squashed annoying warning.
-
-       * idl/Accessibility_Role.idl:
-       Extended range of available Accessibility_Role values.
-
-       * cspi/spi_accessible.c:
-       Re-ordered role names. 
-
-2001-12-12  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessibility_Value.idl:
-       Revert use of union back to CORBA_double, since the double type is
-       more efficient and can contain the other types without loss of
-       precision.
-
-       * idl/Accessibility_Accessible.idl:
-       Added method Accessibility:Accessible:getRoleName, to complement
-       Accessibility:Accessible:getRole.
-
-       * cspi/spi_accessible.c:
-       * cspi/spi.h:
-       Added C binding for above, Accessible_getRoleName (), and changed
-       signature of Accessible_getRole () to return an AccessibleRole.
-
-       * cspi/spi-roletypes.h:
-       Changed AccessibleRole_getName to return a char * instead of a
-       const char *.  This method is now at least temporarily deprecated 
-       in favor of asking Accessibles for their RoleNames directly.
-
-       * libspi/value.c:
-       Revert to match Accessibility_Value.idl;
-
-       * cspi/spi_value.c:
-       * cspi/spi.h:
-       Change signature of AccessibleValue methods to use double rather
-       than float.
-
-       * cspi/spi.h:
-       * cspi/spi_accessible.c:
-       Changed Accessible_getRole to return an AccessibleRole enum rather
-       than a UTF-8 string.  The UTF-8 string can still be obtained via
-       AccessibleRole_getName ().
-       
-       * test/test-simple.c:
-       Add test_action.  Small fixup to match API change to Accessible_getRole.
-
-       * libspi/action.c:
-       Bugfix for get_action_from_servant ().
-
-2001-12-11  Michael Meeks  <michael@ximian.com>
-
-       * libspi/libspi.h: remove registry.h and
-       desktop.h, deviceeventcontroller.h
-
-       * libspi/Makefile.am: remove registry.[ch],
-       desktop.[ch], deviceeventcontroller.[ch]
-
-       * registryd/Makefile.am: add registry.[ch],
-       desktop.[ch], rename registryd.c to registry-main.c.
-       add deviceeventcontroller.[ch]
-
-2001-12-11  Bill Haneman <bill.haneman@sun.com>
-
-       * test/simple-at.c:
-       Replace setenv() call with putenv ().
-
-       * libspi/component.c:
-       Bugfix in AccessibleComponent_getExtents (),
-       (from Adi Dascal).
-       
-2001-12-11  Michael Meeks  <michael@ximian.com>
-
-       * libspi/image.c (impl_getImageExtents): impl.
-       (spi_image_class_init): upd.
-
-       * cspi/spi_image.c
-       (AccessibleImage_getImageDescription): fix daft bug
-       of mine (doh).
-
-       * test/test-simple.c (global_listener_cb): update
-       to only quit if not --poke
-       (main): catch --poke.
-       (validate_accessible): upd. dumping, call test_image
-       (test_image): impl.
-
-       * libspi/Makefile.am (IDL_DEPS): fixup the IDL
-       dependencies.
-
-       * idl/Accessibility.idl: update all IDL includes.
-
-       * idl/*.idl - rename to namespace - this sucks, blame
-       mjs' bad decision for oafd.
-
-       * test/test-simple.c (create_test_window): add more tests.
-       (create_tree): split this out.
-       (validate_accessible): bugfix.
-
-2001-12-11  Michael Meeks  <michael@ximian.com>
-
-       * cspi/bonobo/cspi-bonobo-listener.c: 
-       (cspi_kestroke_listener_unref),
-       (cspi_event_listener_unref): impl. undoing previous
-       homenous environment - for Bill.
-
-       * cspi/spi_table.c (long_seq_to_array): use
-       malloc instead.
-
-       * cspi/spi_main.c: split out all bonoboish bits into
-       bonobo/
-
-       * cspi/spi-impl.h: upd. typedefs.
-
-       * cspi/spi_registry.c: update to lowlevel API,
-       return booleans to indicate success in some places.
-
-       * cspi/spi_event.c: update to lowlevel API.
-
-       * cspi/bonobo/Makefile.am: add.
-
-       * cspi/bonobo/cspi-lowlevel.h: add
-
-       * cspi/bonobo/cspi-bonobo.c: add
-
-       * cspi/bonobo/cspi-bonobo-listener.[ch]: impl.
-
-       * cspi/Makefile.am: remove spi-listener-impl.[ch],
-       (SUBDIRS): add bonobo, link in the libs.
-
-       * cspi/spi-util.c: kill this file.
-
-       * TODO: merge in my bits.
-
-2001-12-11  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c (test_value, test_table, main):
-       remove unused variables causing warnings.
-
-       * configure.in: cleanup checks - require gail.
-
-2001-12-11  Bill Haneman  <bill.haneman@sun.com>
-
-       * idl/Value.idl:
-       Changed Value interface to use SValue (scalars) rather than
-       assuming all values are floats.  This allows floats, doubles,
-       longs, shorts, and unsigned values to be manipulated.
-       Introduced Accessibility:SValue union.
-
-       * libspi/value.c:
-       Updated to use new API above, and to work correctly with GValues
-       of different types in AtkValue.
-
-       * cspi/spi_value.c:
-       Updated to use new API above.  cspi's API is as yet unchanged.
-
-       * TODO: 
-       Updated the Value revision action item.
-       
-2001-12-10  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/test-simple.c:
-       Added test_table (GtkTreeView widget in test window to follow).
-       Un-commented test_value, added GtkRange widget.
-       Added GtkTreeView widget with GtkListStore.  It passes regression
-       test but leaks one SPI object for some reason.
-
-       * libspi/value.c:
-       Fixed bug in impl__set_currentValue.
-
-2001-12-10  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_text.c: audit for exception handling,
-       tolerating NULL object references safely etc.
-
-       * cspi/spi_value.c: ditto.
-
-       * cspi/spi_table.c (AccessibleTable_getSummary),
-       (AccessibleTable_getAccessibleAt),
-       (AccessibleTable_getRowHeader),
-       (AccessibleTable_getColumnHeader),
-       (AccessibleTable_getCaption): fix bugs hidden by
-       incorrect casts.
-       (long_seq_to_array): impl.
-       (AccessibleTable_getSelectedRows),
-       (AccessibleTable_getSelectedColumns): use it.
-
-2001-12-10  Bill Haneman  <bill.haneman@sun.com>
-
-       * TODO:
-       Added a TODO list (rough and short for now).
-
-       * cspi/spi_hyperlink.c:
-       * cspi/spi_hypertext.c:
-       Fixed macro name typos, and remove use of obsolete macro in 
-       AccessibleHyperlink_getLink.
-
-       * cspi/spi_action.c:
-       * cspi/spi_accessible.c:
-       * cspi/spi_application.c:
-       * cspi/spi_component.c:
-       * cspi/spi_selection.c:
-       * cspi/spi_text.c:
-       * cspi/spi_value.c:
-       Documentation fixes (removed return values from ref/unref methods).
-
-2001-12-10  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_action.c: audit for exception handling,
-       tolerating NULL object references safely etc.
-
-       * cspi/spi_accessible.c: ditto.
-
-       * cspi/spi_component.c: ditto.
-
-       * cspi/spi_editabletext.c: ditto.
-
-       * cspi/spi_hyperlink.c: ditto.
-
-       * cspi/spi_hypertext.c: ditto.
-
-       * cspi/spi_image.c: ditto.
-
-       * cspi/spi_selection.c: ditto.
-
-2001-12-10  Michael Meeks  <michael@ximian.com>
-
-       * configure.in: use cspi/libspi.pc.in instead.
-
-       * Makefile.am (pkgconfig_DATA): upd. to match.
-
-       * test/simple-at.c (report_focus_event): kill hacks around
-       bad return values, use putenv not setenv
-
-       * libspi/desktop.c (impl_desktop_get_child_at_index): don't
-       fire ChildGone - I killed it.
-
-       * libspi/component.c
-       (impl_accessibility_component_get_extents): remove
-       bogus return.
-
-       * idl/Accessible.idl: kill ChildGone exception.
-
-       * cspi/*.[ch]: kill int return from ref / unref.
-       
-       * cspi/spi_main.c (cspi_object_add_check): fold into
-       (cspi_object_add): here.
-
-       * cspi/spi_component.c (AccessibleComponent_getExtents):
-       handle exceptions elegantly.
-
-       * cspi/spi-private.h (cspi_check_ev_return),
-       (cspi_return_if_fail): impl.
-
-       * cspi/spi_accessible.c: use extensively.
-       (AccessibleStateSet_equals): add direct compare check.
-
-       * cspi/spi_selection.c: tolerate NULL objs, and check
-       exceptions before return.
-
-       * cspi/spi-util.c (cspi_warn_ev): rename to
-       (cspi_check_ev): this & don't pass ev in; no point.
-
-2001-12-10  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c: use putenv not setenv
-       (get_environment_vars): more chatty if you're not using
-       the fun bits.
-
-       * test/simple-at.c: do the setenv so more people see the
-       nice demo easily.
-
-2001-12-10  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/registry.c:
-       Changed check of CORBA_environment on notification to be a warning
-       instead of an error for the moment, since we can recover from this
-       error when caused by a queued notification from a dead app.
-       
-       * libspi/value.c:
-       Fixes for spi_value, use G_TYPE_DOUBLE for atk_value values (as
-       used by all current implementors of AtkValue), and coerce to
-       CORBA_float. (Proper general case fix may require change to Value.idl).
-
-2001-12-09  Bill Haneman <bill.haneman@sun.com>
-
-       * cspi/spi.h:
-       * cspi/spi_event.c:
-       * cspi/spi_accessible.c:
-       Documentation fixes: added user_data params to documentation for 
-       listeners and callbacks.  
-
-       * cspi/spi_accessible.c: 
-       Changed AccessibleStateSet_compare to return a
-       StateSet rather than return the difference set into a third parameter.
-       
-       
-2001-12-09  Bill Haneman <bill.haneman@sun.com>
-
-       * configure.in:
-       Replace use of AM_PROG_XML_I18N_TOOLS macro with AC_PROG_INTLTOOL.
-       remove 'dnl' comment line from AC_OUTPUT (autoconf doesn't like
-       it). 
-
-       * Makefile.am:
-       Remove subdirectory po from SUBDIRS for now.
-
-       * at-bridge/bridge.c:
-       Beefed up a couple of debug printouts.
-       One-line fix for signal notification name formatting.
-
-       * libspi/accessible.c:
-       Added assertion to spi_accessible_new ().
-
-       * libspi/application.c:
-       Put #ifdef qualifiers around a printf.
-
-       * libspi/value.c:
-       Fixed derivation (from BONOBO_OBJECT to SPI_BASE).
-
-       * registryd/Makefile.am:
-       * util/Makefile.am:
-       Replaces use of XML_I18N_MERGE_SERVER_RULE with
-       INTLTOOL_SERVER_RULE macro.
-
-       * test/simple-at.c:
-       Added an event listener for several ATK signals, for
-       testing and debugging.  Removed a few g_warnings.
-       Added test output if focussed item implements the Value interface.
-
-       * test/test-simple.c:
-       Added test_value () function (known not to pass at the moment, so
-       not actually called yet.
-       
-2001-12-08  Michael Meeks  <michael@ximian.com>
-
-       * at-bridge/bridge.c (bridge_focus_tracker),
-       (emit_eventv): fix the same ref. leak.
-       (register_atk_event_listeners): don't leak.
-
-       * cspi/spi-listener-impl.c (cspi_event): more 
-       protection from client code.
-
-       * test/test-simple.c (test_desktop): unref the app.
-
-       * test/Makefile.am: upd. TESTS.
-
-       * at-bridge/bridge.c (bridge_exit_func): release the registry.
-
-       * test/keysynth-demo.c (keysynth_exit): unref the listeners.
-
-       * cspi/spi_accessible.c (Accessible_queryInterface): constify.
-
-       * cspi/spi_registry.c: constify in strings.
-       (deregisterGlobalEventListenerAll): don't release the ref.
-
-       * cspi/spi.h: start removing redundant / conflicting
-       gtkdoc comments, making the API readable at a glance :-)
-       
-       * cspi/spi_event.c (AccessibleEventListener_unref): impl.
-
-       * test/keysynth-demo.c (keysynth_exit, main): upd.
-
-       * test/simple-at.c (main, simple_at_exit): upd.
-
-       * test/test-simple.c (unutterable_horror): kill.
-       (utterable_normal_derefs): kill.
-       (main): upd & do a setenv before gtk_init, so that we
-       can use memprof - and to save the pain of remembering
-       this, if we're running under memprof - don't exit.
-
-       * cspi/spi_main.c (SPI_exit): return exit status
-       for cspi.
-       (SPI_event_quit): impl.
-       (SPI_event_main): simplify.
-       (cspi_is_gnome_app): kill.
-       (SPI_init): kill isGNOMEapp arg.
-
-       * at-bridge/bridge.c (register_atk_event_listeners):
-       re-instate the unref.
-       (bridge_exit_func): don't re-activate the registry,
-       protect vs. theoretical re-entry, use the
-       AT_BRIDGE_SHUTDOWN env. var to determine whether to
-       assert a clean shutdown - for regression tests.
-
-2001-12-08  Abel Cheung  <maddog@linux.org.hk>
-
-       * configure.in: Comment out dummy i18n support for now,
-         otherwise it fails to build.
-       * idl/Makefile.am: Add Selection.idl and Hypertext.idl to
-         EXTRA_DIST. They are missing in tarball.
-
-2001-12-07  Michael Meeks  <michael@ximian.com>
-
-       * util/magnifier.c: kill bonobo activation reg. race.
-
-       * libspi/component.c
-       (impl_accessibility_component_get_extents): make it match
-       it's sig.
-
-       * libspi/registry.c (_registry_notify_listeners):
-       re-remove X headers & reconcile conflicts.
-       (spi_listener_struct_free): bad conflict resolve.
-       (impl_accessibility_registry_register_application):
-       more bad merging fixed.
-       (impl_accessibility_registry_deregister_application): ditto.
-       (spi_registry_new): ditto.
-       (spi_registry_init): don't have an applications field.
-
-[ merge fixups2 branch to here ]
-2001-12-07  Michael Meeks  <michael@ximian.com>
-
-       * test/simple-at.c (report_focus_event),
-       (report_focussed_accessible): remove g_warning debug.
-
-2001-12-07  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c (validate_tree): comment out some checks.
-       (test_desktop): app now not registered idly - horay.
-
-2001-12-07  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_registry.c
-       (registerAccessibleKeystrokeListener): clean, stop it leaking
-       great swathes of memory, and device event controller references.
-       ensure we always pass valid sequences.
-       (deregisterAccessibleKeystrokeListener): ditto.
-       (generateKeyEvent): upd.
-
-       * at-bridge/bridge.c (bridge_key_listener): handle
-       registry dead exception gracefully.
-       (bridge_focus_tracker, emit_eventv): free ev.
-
-       * test/simple-at.c (report_focus_event): fix polarity.
-
-       * libspi/application.c (notify_listeners): kill the ev
-       argument, and make sure we init the ev we use.
-       (spi_application_object_event_listener): split out a chunk
-       (get_atk_object_ref): here & fixup.
-       (reverse_lookup_name_for_toolkit_event): make const.
-       (spi_application_toolkit_event_listener): fixup, kill leaks
-       ref problems etc.
-
-       * at-bridge/bridge.c (register_atk_event_listeners):
-       don't unref the noop object - causes grief.
-
-       * libspi/registry.c: remove the X headers.
-       turn off the debug churn.
-
-       * libspi/accessible.c (spi_accessible_new_return): only
-       release the ref if we are supposed to [doh]
-
-       * test/simple-at.c (report_button_press, report_focus_event):
-       guard vs. unexpected exit.
-
-       * at-bridge/bridge.c (gtk_module_init): prune printf.
-       (bridge_exit_func): fix app unref.
-
-       * libspi/Makefile.am: don't install registry or desktop.h
-
-       * libspi/*.h: update includes.
-
-       * libspi/application.h: don't include ourself, or
-       other redundant headers.
-
-2001-12-06  Michael Meeks  <michael@ximian.com>
-
-       * libspi/accessible.c
-       (get_accessible_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing cut and paste.
-
-       * cspi/spi_main.c (cspi_cleanup): guard vs. double
-       invokes.
-       (SPI_init): register atexit cleanup handler here.
-
-2001-12-06  Michael Meeks  <michael@ximian.com>
-
-       * at-bridge/bridge.c (gtk_module_init): g_error on
-       activation exception
-
-2001-12-06  Michael Meeks  <michael@ximian.com>
-
-       * at-bridge/bridge.c (gtk_module_init): some sort of
-       confusing merge clash - reverted.
-       (bridge_idle_init): ditto.
-
-       * test/test-simple.c (main, utterable_normal_derefs):
-       merge from Bill - somehow not committed.
-
-2001-12-06  Michael Meeks  <michael@ximian.com>
-
-       * libspi/value.c (spi_value_class_init): upd.
-       (spi_value_finalize): kill.
-
-       * libspi/table.c (spi_table_finalize): kill.
-       (spi_table_interface_new): upd.
-       (spi_table_class_init): upd.
-       (get_table_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing yet more cut and paste.
-
-       * libspi/selection.c (spi_selection_finalize): kill.
-       (spi_selection_interface_new): upd.
-       (spi_selection_class_init): upd.
-       (get_selection_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing yet more cut and paste.
-
-       * libspi/relation.c (spi_relation_finalize): kill.
-       (spi_relation_class_init, spi_relation_new): upd
-
-       * libspi/image.c (spi_image_finalize): kill.
-       (spi_image_class_init): upd.
-       (spi_image_interface_new): upd.
-       (get_image_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing yet more cut and paste.
-
-       * libspi/hyperlink.c (spi_hyperlink_class_init): upd.
-       (spi_hyperlink_finalize): kill.
-       (spi_hyperlink_new): upd.
-       (get_hyperlink_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing yet more cut and paste.
-
-       * libspi/hypertext.c (spi_hypertext_interface_new): upd.
-       (spi_hypertext_finalize): kill.
-       (spi_hypertext_class_init): upd.
-       (get_hypertext_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing yet more cut and paste.
-
-       * libspi/editabletext.c (spi_editable_text_finalize): kill.
-       (spi_editable_text_interface_new): upd.
-       (get_editable_text_from_servant): impl.
-       Upd. all CORBA impl.s to use it killing yet more cut and paste.
-       
-       * libspi/text.c (get_text_from_servant): impl.
-       All impls - update to use it killing more cut and paste,
-       also fix bad string returns on duff args ( a somewhat
-       impossible case to handle - but hey ).
-       (spi_text_construct): impl.
-       (spi_text_interface_new): upd.
-       (spi_text_object_finalize): kill.
-
-       * libspi/component.c
-       (accessibility_component_object_finalize): kill.
-       (spi_component_class_init): upd.
-       (get_component_from_servant): impl. helper to kill cut & paste.
-       (impl_accessibility_component_contains): 
-       (impl_accessibility_component_get_accessible_at_point): 
-       (impl_accessibility_component_get_position): 
-       (impl_accessibility_component_get_extents): 
-       (impl_accessibility_component_get_mdi_z_order): 
-       (impl_accessibility_component_get_layer): 
-       (spi_component_interface_new): upd.
-
-       * libspi/action.c (spi_action_finalize): kill.
-       (spi_action_class_init): upd. inherit from SpiObject.
-       (spi_action_interface_new): upd.
-       (get_action_from_servant): impl. helper to reduce cut & paste.
-       (impl_getKeyBinding, impl_getName, impl_doAction),
-       (impl_getDescription): Use it everywhere.
-
-       * cspi/spi_main.c (get_live_refs): a pointer hash.
-       (spi_object_hash, spi_object_equal): comment out.
-       There are issues with CORBA object hashing that need
-       solving.
-
-       * libspi/application.c (spi_application_init),
-       (spi_application_new): upd.
-
-       * libspi/accessible.c (spi_accessible_object_finalize): kill.
-       (spi_accessible_class_init): upd.
-       s/accessible/object/ in epv methods.
-
-2001-12-05  Bill Haneman <bill.haneman@sun.com>
-
-       * at-bridge/bridge.c:
-       Reorder the bridge initialization into the bridge gtk_module_init,
-       an immediate call to bridge_register_app, and an idle_add for
-       register_atk_event_listeners (the only code that *must* wait until
-       GTK+ is initialized) via bridge_idle_add. Bridge_register_app does
-       the activation, creates the application's Accessible object, and
-       queues the bridge_idle_init function.  Restored call to
-       Accessibility_Registry_deregisterApplication().  
-       Prior to making this call we obtain a new reference to the
-       registry, which is a temporary hack that helps us handle apps that
-       shut down the bonobo mainloop before we get there.
-
-       * libspi/registry.c:
-       Fix string leakage in debug block, and don't segv if a an app
-       dies before its event notifications have been propagated.
-
-       * cpi/spi_util.c:
-       Modify cspi_check_ev() to call g_warning() rather than g_error(),
-       as stopgap measure until we get proper exception handling when 
-       objects die during or before interrogation.  
-
-       * cspi/spi_main.c:
-       * cspi/spi.h:
-       Moved use of isGNOMEApp flag from SPI_event_main to SPI_init.
-       Also changed default value of is_gnome_app to TRUE.
-
-       * test/simple-at.c:
-       * test/keysynth-demo.c:
-       Changed use of SPI_init and SPI_event_main to reflect API change above.
-
-       * test/simple-at.c:
-       Made report_focus_event check the warning value from getName
-       before reporting on focussed accessible; simplifies handling of
-       notifications from dead objects.
-
-       * test/test-simple.c: (Changes not in this patch since source is
-       not in CVS ?)
-       
-2001-12-05  Michael Meeks  <michael@ximian.com>
-
-       * registryd/registryd.c (main): protect against
-       bonobo-activation startup race condition.
-
-       * cspi/spi_main.c (cspi_object_add_check): cope
-       with the exception elegantly.
-
-       * idl/Accessible.idl: decl. ChildGone
-
-       * libspi/desktop.c (spi_desktop_dispose): impl.
-       (spi_desktop_class_init): upd.
-       (spi_desktop_add_application),
-       (spi_desktop_remove_application),
-       (abnormal_application_termination): impl.
-       (impl_desktop_get_child_at_index): re-impl.
-
-       * libspi/registry.c
-       (impl_accessibility_registry_deregister_application),
-       (impl_accessibility_registry_register_application): 
-       kill excessive debug clutter.
-
-       * test/test-simple.c (test_misc): test some NULL
-       tolerance. (main): upd.
-
-       * cspi/spi_main.c (cspi_accessible_is_a): a NULL
-       implements no interfaces - so let's not crash.
-
-       * cspi/spi_accessible.c (Accessible_queryInterface): ditto.
-
-       * libspi/accessible.c (spi_accessible_new_return): impl.
-       helper to calm the cut and paste, to cope with
-       NULL AtkObjects effectively and efficiently, and to kill
-       the referencing bugs.
-
-       * libspi/table.c (impl_getAccessibleAt),
-       (impl_getRowHeader, impl_getColumnHeader): upd.
-
-       * libspi/hyperlink.c (impl_getObject): upd.
-
-       * libspi/accessible.c
-       (impl_accessibility_accessible_get_child_at_index): upd.
-
-       * libspi/component.c
-       (impl_accessibility_component_get_accessible_at_point): upd.
-
-       * test/test-simple.c (test_editable_text, test_text): impl.
-       some simple tests.
-
-       * cspi/spi_editabletext.c
-       (AccessibleEditableText_insertText): constify.
-
-       * test/test-simple.c (focus_me): make more robust.
-
-       * libspi/accessible.c: remove some printfs in methods that
-       we test and work fine, so we can get a clean tree dump.
-
-       * test/test-simple.c (validate_accessible),
-       (validate_tree): make tree dumping pretty too.
-
-       * at-bridge/bridge.c (bridge_signal_listener): upd. so
-       it builds without debug on.
-
-       * test/test-simple.c (validate_accessible): fix the most
-       ludicrous bug.
-
-       * cspi/spi_main.c (spi_object_release): leave the nicely
-       blanked memory around if in debug mode.
-
-       * cspi/spi-listener-impl.c (cspi_event): use add_check.
-
-[committed to fixups2]
-2001-12-05  Michael Meeks  <michael@ximian.com>
-
-       * libspi/editabletext.c
-       (spi_editable_text_class_init): g_type_class_peek_parent,
-       not interface peek - so we finalize cleanly.
-
-       * libspi/accessible.c (spi_accessible_new): kill debug.
-
-       * test/test-simple.c (validate_accessible): fix ref.
-       leak, print strings before freeing them; sigh, comment a
-       chunk out due to strangeness.
-       (validate_tree): unref the child after use.
-
-       * cspi/spi_component.c (AccessibleComponent_getLayer):
-       add missing break statement, switch on zlayer not the
-       uninitialized retval.
-
-       * cspi/spi_main.c (cspi_object_add): add assert, local ref
-       before (possibly re-entering) remote unref.
-
-       * test/simple-at.c (main): unref the desktop.
-
-       * cspi/spi_accessible.c (cspi_accessible_is_a): move 
-       into:
-       
-       * cspi/spi_main.c (cspi_accessible_is_a): here to 
-       isolate bonobo API usage more.
-
-       * libspi/registry.c (impl_accessibility_registry_register_application): 
-       prune bogus comment.
-
-2001-12-04  Michael Meeks  <michael@ximian.com>
-
-       * test/test-simple.c (validate_tree): upd.
-       IndexInParent check to make it more lucid.
-       (validate_accessible): dump the tree.
-
-       * libspi/accessible.c (de_register_public_ref),
-       (get_public_refs): impl.
-       (spi_accessible_new): make more efficient & intuitive.
-       Now IndexInParent check works.
-
-2001-12-04  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi-util.h: remove.
-
-       * cspi/spi.h: move SPI_freeString here
-
-       * libspi/component.c (impl_accessibility_component_get_layer): 
-       warning fixage.
-       (impl_accessibility_component_get_mdi_z_order): ditto,
-       return -1 on error - is this ok ?
-
-       * test/test-simple.c (test_application): impl.
-
-       * cspi/spi_accessible.c (Accessible_getApplication),
-       (Accessible_isApplication): impl.
-
-       * libspi/registry.c (spi_listener_struct_free): release
-       the CORBA reference too.
-
-       * libspi/accessible.c
-       (impl_accessibility_accessible_get_parent): fix ref leak.
-
-       * libspi/registry.c (spi_registry_new): make the registry
-       immortal - we don't want it to go away ever.
-
-       * libspi/application.c
-       (spi_accessible_application_finalize): impl. cleanup.
-
-       * cspi/spi_registry.c
-       (deregisterGlobalEventListenerAll),
-       (deregisterGlobalEventListener),
-       (deregisterAccessibleKeystrokeListener): fix ref leak.
-
-       * cspi/spi_main.c (SPI_init): remove redundant ref.
-
-       * test/test-simple.c (unutterable_horror): impl. to force a
-       clean shutdown.
-       (main): use it.
-
-       * libspi/registry.c
-       (impl_accessibility_registry_deregister_application): release
-       the application when we de-register it.
-
-       * at-bridge/bridge.c (bridge_exit_func): comment out shutdown
-       until we have the infastructure to get it right.
-
-2001-12-03  Michael Meeks  <michael@ximian.com>
-
-       * libspi/Makefile.am: only build eventlistener.[ch]
-
-       * libspi/accessible.c
-       (impl_accessibility_accessible_get_child_at_index): don't leak.
-
-       * at-bridge/bridge.c (bridge_exit_func): cope with an exit
-       before we hit the idle handler.
-
-       * cspi/spi-util.c (cspi_check_ev): g_error is far nicer for
-       debugging than exit.
-
-       * at-bridge/bridge.c (bridge_focus_tracker): fix ref issue.
-
-       * libspi/listener.c (impl_notify_event): check source
-       not NIL before unref.
-
-       * libspi/registry.c (impl_registry_notify_event): ditto.
-
-       * libspi/eventlistener.c
-       (impl_accessible_event_notify_event): unref the source.
-
-       * libspi/accessibleeventlistener.c
-       (impl_accessible_event_notify_event): unref the source.
-
-       * idl/Event.idl: remove 'hash_id' attribute - of no
-       concievable use.
-
-       * libspi/application.c (notify_listeners): upd list
-       iteration & sig.
-       (spi_application_object_event_listener), 
-       (spi_application_toolkit_event_listener): upd to do correct
-       CORBA ref counting.
-
-       * libspi/registry.c
-       (_registry_notify_listeners): update.
-       (parse_event_type): this method also leaks like a sieve.
-       (impl_accessibility_registry_deregister_global_event_listener): 
-       fix ETYPE_WINDOW case.
-
-       * libspi/application.c
-       (impl_accessibility_application_register_object_event_listener): 
-       kill leak.
-
-       * libspi/hyperlink.c (impl_getObject): fix ref mistake.
-
-       * libspi/hypertext.c (impl_getLink): ditto.
-
-       * cspi/spi_main.c (cspi_object_add): remove
-       bogus CORBA_Object_duplicate.
-
-       * cspi/spi-listener-impl.c (cspi_event): dup/ref
-       on the object_add.
-
-       * cspi/spi_accessible.c
-       (Accessible_getRelationSet): fix leak / referencing issue.
-
-       * cspi/spi_main.c (spi_object_hash, spi_object_equal): impl.
-       (cspi_object_add, cspi_object_unref): upd.
-       (spi_object_release, get_live_refs): impl.
-       (cspi_cleanup): simplify.
-
-       * *.[ch]: s/boolean/SpiBoolean/
-
-       * cspi/spi_accessible.c (role_names): actualy order so it
-       corresponds with the enum !
-
-       * test/test-simple.c (test_roles): check some role strings
-       vs. enums to detect offset errors.
-
-2001-12-01  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_main.c (cspi_object_add_check): impl. helper.
-
-       * cspi/spi_accessible.c (Accessible_getChildAtIndex):
-       check ev before 
-       (Accessible_getChildAtIndex): use cspi_add_check so we
-       check the ev before using a (possibly) invalid value.
-
-       * libspi/accessible.c
-       (impl_accessibility_accessible_get_parent): don't segv
-       on a NULL parent.
-
-       * at-bridge/bridge.c (gtk_module_init): upd.
-       (bridge_property_event_listener): don't leak strings
-       and events !
-       (bridge_state_event_listener),
-       (bridge_property_event_listener): don't use a static
-       buffer in case of recursive event emission &
-       re-enterancy - split out the swathe of cut and paste
-       into:
-       (emit_eventv): and fix 2 ref leaks here & comply to the
-       coding style.
-       (bridge_register_app): rename to 
-       (bridge_idle_init): this and kill arg parsing, split
-       various inits & bonobo-activation registration to module
-       init time, kill referencing error.
-       (bridge_exit_func): fix the same leak.
-       (bridge_focus_tracker): don't leak event structures
-       and strings.
-       (bridge_signal_listener): more leakage and cut & paste
-       fixage.
-       (bridge_key_listener): return the result - FIXME is
-       this polarity correct ?
-       (accessibility_keystroke_from_atk_key_event): rename
-       (accessibility_init_keystroke_from_atk_key_event): and stop
-       leakage.
-       (gtk_module_init): return a value - not that it is checked by
-       Gtk - but hey.
-       (bridge_key_listener): register my horror at casting between
-       IDL defined structs.
-       (bridge_get_registry): kill - not used.
-
-       * cspi/spi_accessible.c (Accessible_getRole): make return const.
-
-       * test/test-simple.c (test_roles): impl.
-       (test_desktop, validate_accessible, validate_tree): impl.
-
-       * cspi/spi_accessible.c (role_names): fixup bogus
-       MAX_ROLES setup, make constants const for efficient linkage
-       (AccessibleRole_getName): conform to coding style, make
-       return 'const'
-
-2001-11-30  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi.h: add missing prototype.
-
-       * libspi/registry.c (spi_listener_struct_new): fix sig.
-
-       * test/Makefile.am: add test-simple
-
-       * test/test-simple.c: add
-
-       * test/test.sh: add.
-
-       * cspi/spi_main.c (SPI_init): make SPI_inited module global,
-
-       * at-bridge/bridge.c (gtk_module_init): don't do an idle init,
-       do it straight - since otherwise we often get an activation race.
-
-[ work before Bill duplicated a chunk of it ... ]
-2001-11-30  Michael Meeks  <michael@ximian.com>
-
-       * libspi/keystrokelistener.c
-       (spi_keystroke_listener_class_init): fixup arg
-       count (doh).
-
-       * libspi/eventlistener.c
-       (spi_event_listener_class_init): ditto.
-
-       * tests/test.sh: add.
-
-       * cspi/spi-listener-impl.h: update macros.
-
-       * cspi/spi-listener-impl.c
-       (cspi_event_listener_remove_callback): add
-       correct pre-conditions.
-
-       * cspi/spi_main.c (SPI_exit): guard vs. double
-       exits, exit the mainloop nicely.
-       (SPI_event_main): make more sense.
-       (SPI_init): move the atexit evilness here so we
-       always do it (yuck).
-       (SPI_event_main): upd.
-
-       * test/simple-at.c: update for listener changes.
-
-       * registryd/registryd.c (main): prune kruft.
-
-       * libspi/libspi.h: upd.
-
-       * libspi/eventlistener.[ch]: rename broken macros.
-
-       * libspi/accessibleeventlistener.[ch]: remove.
-
-       * libspi/*.[ch]: IS_SPI_... -> SPI_IS_...
-
-       * test/test-simple.c: Add - automated tests.
-
-       * cspi/spi-listener-impl.c (cspi_event),
-       (cspi_key_event): add user_data to invoke.
-       (cspi_keystroke_listener_finalize): impl.
-       (cspi_keystroke_listener_class_init): upd.
-
-       * cspi/spi_event.c
-       (createAccessibleEventListener),
-       (AccessibleEventListener_addCallback),
-       (createAccessibleKeystrokeListener),
-       (AccessibleKeystrokeListener_addCallback): upd.
-
-       * libspi/deviceeventcontroller.c
-       (spi_device_event_controller_check_key_event): add public proto.
-
-       * libspi/registry.c
-       (impl_accessibility_registry_deregister_global_event_listener): 
-       always init listeners.
-       (_registry_notify_listeners): yes it is.
-
-       * cspi/spi-listener-impl.c (cspi_key_event): 
-       move debug to here.
-       (cspi_event_listener_finalize): impl.
-       (cspi_event_listener_class_init): hook up.
-       (event_handler_new, event_handler_free),
-       (event_list_remove_by_callback): impl.
-       (cspi_event_listener_remove_callback),
-       (cspi_keystroke_listener_remove_callback),
-       (cspi_keystroke_listener_add_callback),
-       (cspi_event_listener_add_callback): upd.
-
-       * libspi/keystrokelistener.c
-       (keystroke_listener_object_finalize): kill
-       (spi_keystroke_listener_class_init): upd.
-       (spi_keystroke_listener_add_callback),
-       (spi_keystroke_listener_remove_callback): kill,
-       use signals.
-       (impl_key_event): prune drasticaly.
-
-       * libspi/eventlistener.c
-       (spi_event_listener_add_callback),
-       (spi_event_listener_remove_callback): kill, use
-       signals.
-       (impl_accessible_event_notify_event): upd.
-       (spi_event_listener_object_finalize): remove.
-
-       * libspi/Makefile.am: use eventlistener.[ch]
-
-2001-12-04  Bill Haneman  <bill.haneman@sun.com>
-
-       * libspi/registry.c (_registry_notify_listeners):
-       Changed listener loop iteration to use preferred convention.
-       Got rid of string memory leaks caused be calling g_strconcat
-       inside function calls.
-
-       * libspi/registry.c (parse_event_type):
-       Stopped g_strconcat memory leaks, free the g_strsplit return,
-       g_strdup the split pieces when used, etc.
-
-2001-12-04  Bill Haneman  <bill.haneman@sun.com>
-
-       * idl/State.idl: 
-       Change method 'compare' to return a 'difference set' rather than
-       taking a StateSet as an out parameter (more Java-friendly).
-
-       * idl/Accessible.idl:
-       Added CORBA struct 'BoundingBox', to faciliate API changes below:
-       
-       * idl/Component.idl:
-       * idl/Image.idl:
-       Changed methods 'getExtents' and 'getImageExtents' in these
-       interfaces to return a BoundingBox structure.  
-       (getPosition and getSize are redundant and possibly should be
-       removed, rather than creating a corresponding Point struct.)
-
-       * cspi/spi_component.c:
-       Modify implementation of getExtents to reflect the above IDL
-       change.
-       
-       * cspi/spi_image.c:
-       * cspi/spi.h:
-       Add (missing) AccessibleImage_getExtents () API.
-
-       * docs/reference/cspi/at-spi-cspi-sections.txt:
-       Added AccessibleImage_getImageExtents () to docs.
-       
-2001-12-03  Bill Haneman  <bill.haneman@sun.com>
-
-       * idl/Component.idl:
-       Added two methods, getLayer () and getMDIZOrder (), to reflect
-       the new ATK methods atk_object_get_layer and
-       atk_object_get_mdi_z_order. (Which arguably should be part of the
-       AtkComponent API and AtkObject).  Also added an enum,
-       ComponentLayer, for the first method's return value.
-
-       * libspi/component.c:
-       Added implementations for these methods.
-
-       * cspi/spi_component.c:
-       * cspi/spi.h:
-       Added cspi binding methods for above, 
-       AccessibleComponent_getLayer() and
-       AccessibleComponent_getMDIZOrder().
-       Added cspi enum 'AccessibleComponentLayer'.
-
-       * docs/reference/cspi/at-spi-cspi-sections.txt:
-       Added above methods to docs.
-
-       * cspi/spi-impl.h:
-       * cspi/spi*.[ch]:
-       Changed typedef for 'boolean' type (and all references to it) to
-       SPIBoolean, to avoid keyword clashes with C++.
-
-       * test/simple-at.c:
-       Changed usages of 'boolean' to SPIBoolean.
-
-       * test/keysynth-demo.c:
-       Changed usages of 'boolean' to 'gboolean' (since this is a gnome
-       app), except where SPIBoolean is required by the callbacks API.
-       
-2001-12-02  Bill Haneman  <bill.haneman@sun.com>
-
-       * cspi/spi_registry.c:
-       Removed obsolete X event loop for passive keygrabs (which now
-       lives in libspi).
-
-       * registryd/registryd.c:
-       Removed unnecessary call to gdk_init() [cruft]. This also allows
-       removal of requisite gdk-2.0 from REGISTRYD_LIBS/CFLAGS in
-       * configure.in.
-
-2001-11-28  Bill Haneman  <bill.haneman@sun.com>
-
-       * docs/reference/cspi:
-       Included docs for SPI_freeString in generated documentation.
-
-       * cspi/spi-util.c:c
-       Renamed spi_freeString to SPI_freeString, for consistency.  Added
-       documentation for this function.
-
-       * cspi/spi-util.h:
-       Renamed spi_freeString to SPI_freeString, for consistency.  
-       Removed obsolete method declaration string_from_corba_string.
-
-       * test/keysynth-demo.c:
-       Small tweak to comments.
-
-       * test/simple-at.c:
-       Stopped leaking the strings returned from CSPI. 
-
-2001-11-28  Bill Haneman  <bill.haneman@sun.com>
-
-       Merged Michael's branch (see his ChangeLog entries below).
-       
-       * at-bridge/bridge.c: Explicitly hold a ref to the registry while
-       bridge is alive, release on exit.
-       
-       * cspi/spi-listener-impl.c (cspi_event_listener_add_callback):
-       Fix type check macro.
-       
-       * cspi/spi_event.c:
-       Added AccessibleKeystrokeListener_unref() method to reduce leakage.
-       
-       * cspi/spi_main.c: 
-       Added is_gnome_app static, and method cspi_is_gnome_app(), 
-       so we can call the appropriate shutdown routine at exit in SPI_exit.
-       
-       * cspi/spi_main.c (cspi_object_ref):
-       Duplicate the corba object passed in, since we're keeping it around.
-       
-       * cspi/SPI_exit.c, cspi_cleanup:
-       Moved the releasing of the live refs to its own function, so we
-       can put it in g_atexit ().  Call the appropriate shutdown API
-       depending on whethe calling client is a gnome app or not
-       (bonobo_main_quit or CORBA_ORB_shutdown).
-       
-       * cspi/spi_registry.c (deregisterGlobalEventListenerAll):
-       Unref the listener when this method is called, after
-       deregistration.  Updated the API docs to note this behavior.
-
-       * libspi/accessible.c (impl_get_parent, impl_get_child_at_index):
-       Bugfixes: Ref the bonobo object when returning a parent or child 
-       reference, or an AccessibleRelation.  Generally made sure
-       BonoboObject refcount is incremented whenever we return an
-       Accessible.
-
-       * libspi/accessibleeventlistener.c (spi_event_listener_class_init):
-       Fixed typo/bug in signal declaration.
-       
-       * libspi/accessibleeventlistener.h:
-       Fixed a type macro.
-
-       * libspi/application.c (spi_application_new):
-       Fixed leak in initialization.
-
-       * libspi/desktop.c:
-       Remembered to increment bonobo-object refcount when returning
-       children (applications) from desktop object.
-       Added (empty) finalize method.
-
-       * libspi/deviceeventcontroller.c:
-       Hold a ref to listeners inside DEControllerKeyListeners.
-       Added dec_key_listener_free() method.  Use prepend instead of
-       append in key_listener list.  Fixed some refcount madness and
-       leaks in the listener registration/deregistration - deregistration
-       now calls dec_key_listener_free() on listeners, and on the
-       temporarily constructed dec_key_listener() used to perform the search/match.
-
-       * libspi/hypertext.c (spi_hypertest_finalize):
-       Fixed 'double unref' of AtkObject held by parent SpiAccessibleText
-       class.  Also fixed spi_hypertext_interface_new() and
-       SpiHypertextClass.  Fixed a couple of paren-whitespace formatting bugs.
-
-       * libspi/hypertext.h: 
-       Removed pointless and duplicate AtkObject pointer from
-       SpiHypertextClass.
-
-       * libspi/keystrokelistener.c:
-       Fixed incorrect type of keystroke_listener_parent_class,
-       renamed keystroke_listener_object_finalize to
-       spi_keystroke_listener_object_finalize.
-       Fixed typo in signal declaration
-       (spi_keystroke_listener_class_init).
-
-       * libspi/registry.c:
-       Added funcsions spi_listener_struct_new() and
-       spi_listener_struct_free() to help with memory management issues.
-       We also now use these methods instead of gnew + poking stuff into
-       the struct, and to decrement listener counts/free the listeners
-       when deregistering them.
-       Fix more refcount bugs in getDesktop() and
-       getDeviceEventController().  
-
-       * test/simple-at.c:
-       De-ref the desktop after enumerating the applications.  Explicitly
-       decrement the refcounts on the created listeners on exit (using
-       _unref for keystroke listeners, and via the
-       deregisterGlobalEventListenerAll command for other event
-       listeners).
-       
-2001-11-27  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi-listener.h: fixup enum.
-
-2001-11-27  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi-listener-impl.c (cspi_event_listener_new),
-       (cspi_keystroke_listener_new): Use the cspi variants.
-
-2001-11-26  Michael Meeks  <michael@ximian.com>
-
-       * test/keysynth-demo.c: fix 2 compile warnings, missing
-       type in decl. etc.
-
-       * test/simple-at.c (report_focussed_accessible),
-       (report_focus_event, report_button_press),
-       (check_property_change, is_command_key),
-       (report_ordinary_key_event, report_command_key_event): upd.
-
-       * util/mag_client.h: include pre-requisites.
-
-       * libspi/accessibleeventlistener.c
-       (spi_event_listener_object_finalize): free any lingering
-       callbacks.
-       
-       * libspi/keystrokelistener.c
-       (keystroke_listener_object_finalize): ditto.
-
-       * cspi/spi-listener-impl.[ch]: Add to implement cspi style
-       callbacks, with cspi types.
-       
-       * cspi/spi_event.c (createAccessibleEventListener): chain to
-       (AccessibleEventListener_addCallback): here.
-       (createAccessibleKeystrokeListener): chain to 
-       (AccessibleKeystrokeListener_addCallback): here.
-
-       * libspi/keystrokelistener.c
-       (spi_keystroke_listener_class_init): add signal.
-       (impl_key_event): emit the event.
-       (boolean_handled_accumulator): impl.
-       (marshal_BOOLEAN__POINTER): add, gack.
-
-       * libspi/accessibleeventlistener.c
-       (spi_event_listener_class_init): add signal.
-       (impl_accessible_event_notify_event): emit the signal &
-       make the loop efficient.
-       (spi_event_listener_add_callback): prepend the callback.
-
-       * libspi/accessibleeventlistener.h: add an 'event' signal,
-       decl type on callback.
-
-       * libspi/keystrokelistener.h: ditto.
-
-       * cspi/spi-listener.h: make methods typesafe and
-       make them use the new event typedefs.
-
-       * test/simple-at.c (report_focussed_accessible):
-       include mag_client.h
-       Use *(void *)text_interface not the other thing.
-       
-       * configure.in: add gtk to registryd bits - since we use
-       gdk there ( why ? )
-
-       * util/magnifier.c: include libbonobo.h
-       
-2001-11-25  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/keysynth-demo.c:
-       Turned this into a simple scanning keyboard, to demonstrate the
-       use of g_timeout_add () as a means of creating timers for
-       scanning, and the use of GtkStyle for visually indicating when
-       virtual keyboard elements are selected.
-
-       keysynth-demo now listens to any keyboard keys with zero-valued
-       keycodes (i.e. 'unused' keys) and interprets them as
-       single-switches.
-
-       Reworked the shiftlatch code so that shift-down state isn't held
-       for long periods (it's only synthesized immediately prior to
-       the keysynth event it's modifying).  Note that shiftlatch in this
-       demo is a convenience, not intended to take the place of AccessX 
-       which is the better choice for getting 'sticky' modifier keys.
-
-       * libspi/deviceeventcontroller.c:
-       * at-bridge/bridge.c:
-       * cspi/spi_registry.c:
-       Removed some debug print stuff, and put other verbosity in #ifdef
-       blocks.
-
-       * util/magnifier.c:
-       * util/mag_image.h:
-       Implemented some more of the magnifier IDL for the simple
-       magnifier: namely, getZoomRegionParams. 
-       Added mag_x and mag_y members to MagnifierData struct, aid of this
-       implementation.
-       Added GtkWindow::realize signal handler to magnifier, to keep it
-       from receiving keyboard focus from the WM.
-
-2001-11-23  Mark McLoughlin  <mark@skynet.ie>
-
-       * cspi/spi-private.h: my guess at what michael forgot
-       before he ran off to NZ :-)
-
-2001-11-23  Michael Meeks  <michael@ximian.com>
-
-       * cspi/spi_event.c (AccessibleEventListener_removeCallback):
-       comment out non existant method invoke so we link.
-
-       * cspi/spi-util.c (spi_warn_ev): conform to gtk+ style,
-       use bonobo_exception_get_text for more friendly warnings.
-
-       * cspi/spi.c (Obj_Add): move into spi_main & rename
-       spi_object_add; kill spi.c
-
-       * cspi/spi_registry.c
-       (deregisterGlobalEventListener),
-       (deregisterGlobalEventListenerAll),
-       (registerGlobalEventListener): fix exception leaks.
-
-       * cspi/spi_main.c (spi_exception): impl. helper, so we
-       don't leak exceptions.
-
-       * cspi/spi_selection.c
-       (AccessibleSelection_deselectSelectedChild): return the
-       success state.
-
-       * cspi/spi_main.c (spi_ev): impl; hack - gack.
-       (spi_registry): ditto.
-       (SPI_init): guard against double inits.
-
-       * cspi/*.c: use spi_ev (), and spi_registry () where
-       appropriate - a temporary hack until we have something
-       better. Use spi_object_add
-
-2001-11-22  Michael Meeks  <michael@ximian.com>
-
-       * cspi/Makefile.am: re organise, install the headers.
-
-       * cspi/*.h: add G_BEGIN/END_DECLS
-
-2001-11-22  Bill Haneman  <bill.haneman@sun.com>
-
-       * test/simple-at.c:
-       Added non-preemptive keylistener for key events with no modifiers
-       and shift-only modifier.
-
-       * libspi/keystrokelistener.c:
-       Removed some verbose diagnostics printout.
-
-       * cspi/spi_registry.c:
-       Fixed a bug that caused all key listeners to be registered as
-       pre-emptive.
-       
-       * libspi/deviceeventcontroller.c:
-       Fixed bug that caused XGrabKey (preemptive key grab) to be called
-       for non-preemptive key masks.
-
-
-2001-11-22  Bill Haneman  <bill.haneman@sun.com>
-
-       * docs/reference/idl/at-spi-idl-docs.sgml:
-       * docs/reference/idl/at-spi-idl-sections.txt:
-       * docs/reference/idl/at-spi-idl-overrides.txt:
-       Added missing files.
-
-       * docs/reference/Makefile.am:
-       removed idl from SUBDIRS until we can figure a way to get gtk-doc
-       to scan the IDL files :-(
-
-       * docs/reference:
-       * docs/cspi:
-       * docs/idl:
-       Added .cvsignore files.
-       
-2001-11-21  Bill Haneman  <bill.haneman@sun.com>
-
-       * libspi/deviceeventcontroller.c:
-       * libspi/keystrokelistener.c:
-       * cspi/spi_event.c:
-       * cspi/spi_registry.c:
-       Added filters for KeySets, KeyEventSeq, and event types to key
-       event dispatching, so listeners should only receive those events
-       that they requested :-)
-
-2001-11-21  Bill Haneman  <bill.haneman@sun.com>
-
-       * configure.in:
-       * docs/Makefile.am:
-       * docs/reference:
-       * docs/reference:Makefile.am:
-       * docs/reference/cspi:
-       * docs/reference/cspi:Makefile.am:
-       * docs/reference/cspi:tmpl:
-       * docs/reference/cspi:tmpl:*.sgml:
-       * docs/reference/idl:
-       * docs/reference/idl:Makefile.am:
-       * docs/reference/idl:at-spi-idl-sections.txt:
-       * docs/reference/idl:at-spi-idl-docs.sgml:
-       * docs/reference/idl:tmpl:
-       * docs/reference/idl:tmpl:*.sgml:
-
-       Restructured docs directory to allow separate 'reference' docs
-       section, and forked idl and cspi docs.  Added the sgml template
-       files to CVS.  Added the first sections/structural sgml for the
-       IDL docs.
-
-2001-11-21  Laszlo Peter  <laca@ireland.sun.com>
-
-       * configure.in, libspi/Makefile.am: find libXtst.
-
-2001-11-21  Michael Meeks  <michael@ximian.com>
-
-       * test/accessx-gui.c: s/spi_value/value/ - doh.
-
-       * libspi/base.[ch]: add.
-
-2001-11-18  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessible.idl:
-       * idl/Application.idl:
-       * idl/Registry.idl:
-       * idl/Action.idl:
-       Started gtk-doc cleanup on IDL.
-
-       * libspi/deviceeventcontroller.c:
-       Added and connected non-preemptive key notification from the
-       toolkits (in addition to the pre-emptive support from XServer
-       which we had before, but which causes 'focus flashing').  Filters
-       are presently limited to key modifiers and global/non-global,
-       KeySets are presently ignored, as are KeyEvent masks.
-
-       Fixed naughtiness in dec_key_listener_new(), we copy the CORBA
-       structs into the persistant structure rather than just storing
-       pointers to things that might not persist across servant
-       invocations.
-
-       The XGrabKey call now does async keygrabs, because synchronous
-       ones were deadlocking with GDK_event code in a very nasty way.
-
-       Added boolean to internal method notify_keylisteners, to indicate
-       whether the event came from the 'toolkit source' or the 'global
-       (XServer) source' - this is used in the notification process to
-       determine which listeners to send the event to.
-
-       deviceeventcontroller.c is now warning-free.
-       
-       * libspi/registry.c:
-       Fixed regression in application de-registration.
-       Also fixed some really brain-dead weirdness having to do with
-       event dispatching - event structs are now duplicated before being
-       re-marshalled in the dispatch to listeners.  This also fixes a
-       Solaris build problem.
-       
-       
-2001-11-20  Michael Meeks  <michael@ximian.com>
-
-       * libspi/registry.c
-       (impl_accessibility_registry_deregister_global_event_listener): 
-       segv. protection.
-
-       * libspi/deviceeventcontroller.c
-       (spi_device_event_controller_check_key_event): return
-       FALSE on no virtual method.
-
-       * libspi/*..h: make includes work on a correctly pathed install.
-
-       * libspi/*.h: include glib/gmacros.h, use G_BEGIN / END _DECLS.
-
-       * libspi/application.h: kill unused ( and whacked out )
-       gboolean *spi_application_set_id (AtkObject *app, long id);
-
-2001-11-20  Michael Meeks  <michael@ximian.com>
-
-       * libspi/*.[ch]: further convert to bonobo's type func
-       macros, remove redundnant casts etc.
-
-       * libspi/text.c s/accessibility_text/spi_text/g,
-       re-order to de-cruft.
-
-       * libspi/hypertext.c: re-order to kill a huge slew
-       of redundant forward decls.
-
-       * libspi/relation.c: ditto.
-
-       * libspi/image.c: ditto.
-
-       * */.cvsignore: update
-       
-2001-11-20  Michael Meeks  <michael@ximian.com>
-
-       * libspi/deviceeventcontroller.c
-       (_controller_register_with_devices): use g_getenv,
-       kill stdlib.h include.
-
-       * libspi/keystrokelistener.c
-       (spi_keystroke_listener_get_type): kill
-       (spi_keystroke_listener_class_init),
-       (spi_keystroke_listener_init): rename to this.
-
-       * libspi/text.c (impl_getAttributes): fix warning / bug.
-
-       * libspi/*.[ch]: more headers, includes and over commenting.
-       
-2001-11-20  Michael Meeks  <michael@ximian.com>
-
-       * libspi/*.[ch]: fixup headers, includes and over commenting.
-
-       * libspi/image.c (impl__get_imageDescription): const
-       correctness warning fix. remove redundant casting.
-
-       * libspi/table.c (impl_getRowDescription): ditto.
-       (impl_getColumnDescription): ditto.
-
-       * libspi/libspi.h: add.
-
-2001-11-19  Michael Meeks  <michael@ximian.com>
-
-       * libspi/editabletext.c (impl_setAttributes): fix warnings.
-
-       * libspi/component.c (accessibility_component_get_type): 
-       rename to (spi_component_get_type): and macroify.
-       (accessibility_component_init): rename to
-       (spi_component_init): this
-       (accessibility_component_class_init): rename to
-       (spi_component_class_init): this
-
-       * libspi/action.c (spi_action_get_type): kill, use the macro.
-
-       * libspi/deviceeventcontroller.c (_compare_listeners): re-order
-       to avoid prototype.
-
-       * libspi/application.c (spi_application_object_event_listener),
-       (impl_accessibility_application_register_object_event_listener):
-       warning fixes / const understanding updates.
-
-       * libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
-       warning fixes.
-
-2001-11-18  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/spi_accessible.c: Added docs and C bindings for
-       AccessibleStateSet. (No implementations yet).  Documentation
-       coverage for C bindings now 100%. Made docs for event listeners
-       more explicit.
-       
-       * idl/Registry.idl:
-       Added methods 
-            boolean notifyListenersSync (in DeviceEventListener listener,
-                                    in DeviceEvent event);
-
-            oneway void notifyListenersAsync (in DeviceEventListener listener,
-                                         in DeviceEvent event);
-
-       Added DeviceEventListener and DeviceEvent structs (may deprecate
-       KeyStroke and KeystrokeListener in favor of this generic
-       event/listener framework for devices).
-
-       * libspi/deviceeventcontroller.c:
-
-       Changed some key listener code to take masks, etc., and paved the
-       way for integration of toolkit/non-preemptive key events. Changed
-       signatures of some internal methods.
-
-       * at-bridge/bridge.c:
-        Fixed regression connecting to interface signals, apparently
-       caused by GTK+ changes.
-
-       Added an internal bridge_state_listener to deal with
-       property-change:accessible-state signals.
-
-       Changed the key_listeners GList to store structs (including masks,
-       etc.) instead of just CORBA_Objects (required for full
-       implementation of key listener API).
-
-       Connected the bridge to all currently supported Atk signals.
-       Events now supported: 
-           object:property-change
-            object:property-change:accessible-name
-            object:property-change:accessible-state
-            object:property-change:accessible-description
-            object:property-change:accessible-parent
-            object:property-change:accessible-value
-            object:property-change:accessible-role
-            object:property-change:accessible-table-caption
-            object:property-change:accessible-table-column-description
-            object:property-change:accessible-table-column-header
-            object:property-change:accessible-table-row-description
-            object:property-change:accessible-table-row-header
-            object:property-change:accessible-table-summary
-            object:children-changed
-            object:visible-data-changed
-            object:selection-changed
-            object:text-selection-changed
-            object:text-changed
-            object:text-caret-moved
-            object:row-inserted
-            object:row-reordered
-            object:row-deleted
-            object:column-inserted
-            object:column-reordered
-            object:column-deleted
-            object:model-changed        
-
-2001-11-16  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/hyperlink.c,h:
-       Fixed some broken stuff in hyperlink.
-       
-       * libspi/relation.h:
-       * libspi/relation.c:
-       * cspi/spi_accessible.c:
-       Initial implementations of AccessibleRelation methods, and docs.
-
-       * libspi/accessible.c:
-       Fixed a bug that caused SEGV  if an accessible
-       object's description is NULL, and a client
-       requests it.  An empty string is now returned.
-
-       * cspi/spi_editabletext.c:
-       * cspi/spi_hypertext.c:
-       * cspi/spi_image.c:
-       * cspi/spi_hyperlink.c:
-       * cspi/spi_table.c:
-       Added docs.  
-
-       Doc coverage now 95%.
-
-2001-11-16  Bill Haneman <bill.haneman@sun.com>
-
-       One last namespacing revision:
-       * libspi/accessibleeventlistener.[ch]:
-       Renamed SpiAccessibleEventListener to SpiEventListener,
-       (no need for two namespaces ;-)
-
-       And lots of documentation fixes:
-
-       * docs/at-spi-docs.sgml:
-       Fixed 'underscore vs. hyphen' bug that was preventing
-       the gtk-doc API docs from being automatically generated.
-
-       * cspi/spi-impl.h
-       * cspi/spi-listener.h
-       * cspi/spi.h
-       * cspi/spi_accessible.c
-       * cspi/spi_action.c
-       * cspi/spi_application.c
-       * cspi/spi_component.c
-       * cspi/spi_editabletext.c
-       * cspi/spi_event.c
-       * cspi/spi_hypertext.c
-       * cspi/spi_main.c
-       * cspi/spi_registry.c
-       * cspi/spi_selection.c
-       * cspi/spi_text.c
-       * cspi/spi_value.c
-       * docs/Makefile.am
-       * docs/at-spi-docs.sgml
-       * docs/at-spi-sections.txt
-       
-       Added and fixed up gtk-doc documentation in cspi.
-       
-       Interfaces now (fully) documented (subject to revision and enhancement):
-       SPI_main
-       Event Listener Support
-       Registry API
-       AccessibleApplication
-       Accessible
-       AccessibleAction
-       AccessibleComponent
-       AccessibleEditableText
-       AccessibleSelection
-       AccessibleText
-       AccessibleValue
-
-       still pending:
-       AccessibleStateSet
-       AccessibleRelationSet
-       AccessibleImage
-       AccessibleTable
-       AccessibleHyperlink
-       
-2001-11-14  Bill Haneman <bill.haneman@sun.com>
-
-       * at-bridge/bridge.c:
-       Initial work for toolkit-level key snooper connection by bridge.
-
-       * cspi/spi-impl.h:
-       * cspi/spi_*.h:
-       * cspi/spi_*.c:
-       New typedefs and fixes to support new namespacing, and cleaner
-       separation of cspi bindings from libspi bonobo implementation.  
-       Removed inconsistent and extraneous Spi* namespace prefix that
-       had crept into cspi headers.
-       Lots of comment fixes that sed had missed.
-
-       * cspi/spi-roletypes.h:
-       * cspi/spi-statetypes.h:
-       Added SPI_ prefix to Role and State typedefs, and changed all-caps ROLE type
-       to AccessibleRoleType.
-       
-       * libspi/accessibleeventlistener.h:
-       Fixed minor namespacing weirdness.
-
-       * libspi/deviceeventcontroller.c:
-        Reordered some internal API for device listeners.
-       Changed the key registry final boolean to 'is_system_global'
-       rather than 'is_synchronous', which is more descriptive of its 
-       actual meaning.
-       Added spi_device_event_controller_new().
-       Added  SpiRegistry backpointer to SpiDeviceEventControllerClass.
-        
-       * libspi/keystrokelistener.[ch]:
-       Namespaced KeystrokeListener to SpiKeystrokeListener.
-       Changed uses of keymasks to use SPI_ prefix, and did other
-       knock-on fixups.
-
-       * libspi/keymasks.h:
-       Namespaced keymask constants with SPI_ prefix.
-
-       * libspi/registry.c:
-       Some warning fixes, and knock-on fixes from namespace changes.
-
-       * test/Makefile.am:
-       Added rules for accessx-gui test program.
-
-       * test/accessx-gui.c:
-       Added a simple GUI program in GTK+-2.0 for the AccessX keyboard
-       utility.  It doesn't actually use at-spi, but it's still cool and
-       useful ;-)
-
-       * test/keysynth-demo.c:
-       * test/simple-at.c:
-       * test/at.c:
-       * test/app.c:
-       Fixes so that these test clients work properly with the namespaced
-       libraries. (Incompletely tested for technical reasons, fixes may follow)
-       
-
-2001-11-13  Michael Meeks  <michael@ximian.com>
-
-       * libspi/application.c
-       (impl_accessibility_application_get_version),
-       (impl_accessibility_application_get_toolkit_name):
-       warning fixes.
-       (impl_accessibility_application_set_id),
-       (impl_accessibility_application_get_id): remove
-       redundant casting code.
-
-       * libspi/action.c (impl_getDescription): fix warnings.
-
-       * libspi/accessible.c
-       (impl_accessibility_accessible_get_parent),
-       (impl_accessibility_accessible_get_child_at_index),
-       (impl_accessibility_accessible_get_state),
-       (impl_accessibility_accessible_get_relation_set):
-       warning fixes & include action.h
-
-2001-11-13  Michael Meeks  <michael@ximian.com>
-
-       * *.[ch] fix bits I screwed up:
-
-               s/([^ \tb(\*\&\?\",])spi_/\1/g;
-               s/([^ \tb(\*\&\?\",])Spi/\1/g;
-       
-2001-11-13  Michael Meeks  <michael@ximian.com>
-
-       * *.[ch] Namespace libspi into spi_ and Spi.
-
-2001-13-11  Michael Meeks  <michael@ximian.com>
-
-       * Makefile.am: dist & install at-spi-1.0.pc
-
-       * libspi/Makefile.am: install into at-spi-1.0
-
-       * idl/Makefile.am (idldir): install into at-spi-1.0
-
-       * at-spi-1.0.pc.in: add.
-
-       * configure.in: build it.
-
-2001-11-12  Bill Haneman <bill.haneman@sun.com>
-
-        * test/keysynth-demo.c:
-        Use a 'realize' signal-handler to set the WM properties for
-        the virtual keyboard, rather than making it a "POPUP" type
-        override-redirect window (thanks to anders carlsson for that
-        tip!)
-
-2001-11-11  Bill Haneman <bill.haneman@sun.com>
-
-       * test/Makefile.am:
-       * test/keysynth-demo.c:
-       Added new test of key synthesis, which creates a simple
-       (mouse-operated) onscreen keyboard.  It inserts key events into
-       the currently-focused window, thus it does not grab keyboard focus
-       itself.
-
-       * cspi/spi_registry.c:
-       Added C binding for AT-SPI generateKeyEvent.
-
-       * libspi/deviceeventcontroller.c:
-       Added call to XFilterEvent so that key listener works with XIM (we
-       hope).  Added event_synth_type to generateKeyEvent, so that we can
-       produce KEY_PRESS, KEY_RELEASE, KEY_PRESSRELEASE (pair), or
-       synthesize a press/release pair for KeySyms.    
-       
-2001-11-09  Bill Haneman <bill.haneman@sun.com>
-
-       * libspi/Makefile.am: 
-       * registryd/Makefile.am:
-       (temporary) hack to include libXtst in libspi and registryd.
-       (Needed for keystroke synthesis, see below).
-
-       * idl/Registry.idl:
-       Improved API for registerKeystrokeListener, in accordance with
-       discussions with Gnopernicus team and X server research.
-
-       * libspi/registry.c:
-       * libspi/deviceeventcontroller.c:
-       * libspi/accessible.c:
-       * libspi/keystrokelistener.c:
-       Changes and fixes to support keylisteners for potentially
-       consumed key events (that is, 'passive grabs').
-       Added implementation for generateKeyEvent() [untested].
-
-       * cspi/spi.h:
-       Changes to registerKeystrokeListener() API, as above.
-       Added deregisterGlobalEventListenerAll(), and 
-       deregisterKeystrokeListener(), which are needed for clean exit of
-       clients.
-       Added typedefs for KeyListenerSyncType, KeyEventMask, and KeySet,
-       and a macro ALL_KEYS which may be used in place of a KeySet pointer.
-       
-       * cspi/spi_registry.c:
-       Added implementations of function prototypes mentioned above.
-       
-       * registryd/registryd.c:
-       Added the key listener event source as a g_timeout(), to allow
-       receipt of key events that are not caught by GDK (since GDK
-       doesn't support passive keygrabs, this was necessary).
-
-       * test/simple-at.c:
-       Changed to attach a keylistener to 'Alt' keys, and
-       respond to the following keycommands: Alt-M (toggle magnifier);
-       Alt-F (toggle speech); Alt-Q (quit).
-       Added an exit routine to deregister the listeners, and a key
-       listener that prints some key info to the console when a key
-       matches the listener mask (and is thus received by the listener).
-       
-       * util/idl/Magnifier.idl:
-       Changes to magnifier API to support multiple zoom regions,
-       non-uniform scaling in x and y, markDirty, and a host of other
-       features that would be useful to magnification.
-
-       * util/mag_image.h:
-       * util/mag_client.c:
-       * util/mag_client.h:
-       * util/mag_control.c:
-       * util/magnifier.c:
-       Source code changes to support the above IDL changes.
-       
-       * util/mag_image.c:
-       As above, and also changes to use a (slower) generic conversion
-       path for colormap conversions, since the fast RGB conversions have been
-       reported to fail for 16-bit displays.
-
-2001-10-26  Michael Meeks  <michael@ximian.com>
-
-       * libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
-
-2001-10-26  Laszlo Peter <laca@ireland.sun.com>
-
-       * at-bridge/Makefile.am: fix LDFLAGS.
-
-2001-10-09  Bill Haneman <bill.haneman@sun.com>
-
-       * at-bridge/bridge.c:
-       Re-worked listeners for toolkit events, now we have signal
-       and property listeners. Added a private method
-       register_atk_event_listeners(), which registers with the
-       various atk and gtk signals we need to monitor in order to emit
-       our at-spi events.
-       Added emission hook for AtkObject:property-change events, to
-       support the 'property listeners'.
-       Fixed some alloc()s of Accessibility_Event structs to use CORBA
-       allocation.
-
-       * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
-       which emit warnings and exit, respectively, if CORBA errors occur
-       during remote calls, and we now use these methods to check most of
-       our CORBA calls in the C bindings.
-
-       * cspi/spi_accessible.c:
-       Changed AccessibleSelection_refSelectedChild() to
-       AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
-       now increment refcounts.
-
-       * cspi/spi_component.c:
-       Fixed some long pointer casts (dangerous!) to pass pointers to
-       CORBA_longs of the proper type to the CORBA stubs, and copy the
-       data into the longs that were passed into the C bindings code.
-       
-       * at-bridge/bridge.c:
-       
-       * libspi/accessible.c:
-       Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
-       hyperlinks, AtkHyperlink is an object type.     
-
-       * libspi/application.c:
-       Added various conversions to and from "generic" event types and
-       atk-specific types; this is really part of the 'bridge'
-       implementation but is valid for all AtkObject-based accessibility 
-       implementations.
-
-       * libspi/editabletext.c:
-       Fixed nasty bug wherein editable text's finalize method was
-       unref'ing tha AtkObject reference that the text parent class was
-       about to unref _again_.  There was also a nasty inheritance bug
-       that meant that the AccessibleEditableText class was corrupt.
-
-       * libspi/selection.c:
-       Provided implementations for some selection API that was broken.
-       
-       * idl/Application.idl:
-       Added registerObjectEventListener () method.
-
-       * THROUGHOUT:
-       Fixed a number of return values that were Bonobo_Unknowns from
-       bonobo_object_corba_objref(), which I
-       forgot to dup before returning.  Changed instances of 
-       bonobo_object_corba_objref (bonobo_object(o)) to
-       BONOBO_OBJREF(o), for concision and clarity.
-       
-2001-10-13  Louise Miller <louise.miller@sun.com>
-
-       * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
-       idl/Event.idl, idl/Registry.idl
-       Changed these files to include Bonobo_Unknown.idl instead
-       of Bonobo.idl
-
-2001-09-10  Marc Mulcahy <marc.mulcahy@sun.com
-
-       * libspi/component.c libspi/component.h:
-               Fixed typo.  Added assertions for object checks in 
-       AccessibleComponent code.
-
-2001-10-09  Bill Haneman <bill.haneman@sun.com>
-
-       * idl/Accessible.idl:
-               Added 'isEqual (Accessible *object)' 
-       method for Accessible. (Not Yet Implemented).
-       
-       * idl/Registry.idl:
-               Changed signature of registerKeystrokeListener() to
-       take a KeySet and KeyEventSeq so that specific keys and event
-       types could be requested for monitoring, and added a flag
-       is_synchronous so that either synchronous or asynchronous
-       notification could be requested.  (However this is not all
-       implemented yet). This also meant adding two new typedefs,
-       KeyEventSeq and KeySet.
-
-       * idl/Relation.idl: 
-               Added two new relations, RELATION_TOOLTIP_FOR and
-       RELATION_LEAFNODE_OF.
-
-       * idl/State.idl:
-               Added new state, STATE_HAS_TOOLTIP.
-       
-       * libspi/text.c, editabletext.c:
-               Added new assertions to all casts of bonobo-objects from
-       CORBA servants, to prevent Text API calls on non-text objects.
-               Changed suspect casts of int-pointer types, so that we
-       always send a valid CORBA_long pointer to the CORBA APIs that use
-       in/out long parameters.  We then have to copy from the CORBA_long
-       into the regular long or int for return to the C bindings, or
-       vice-versa when returning parameters from ATK calls to the bonobo wrappers.
-       
-       * cspi/spi_text.c:
-       * libspi/deviceeventcontroller.c:
-               Cleaned these sources up.
-       * idl/Text.idl:
-               Changed return type for getCharacterAtOffset to
-       CORBA_unsigned_long, to allow for 32-bit characters.
-       
-               
-2001-10-08  Bill Haneman <bill.haneman@sun.com>
-
-       * util/Makefile.am:
-       * idl/Makefile.am:
-               Fixed 'make dist'&nb