2003-07-22 Padraig O'Briain <padraig.obriain@sun.com>
[platform/core/uifw/at-spi2-atk.git] / ChangeLog
index 860fcbc..1b9c736 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+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 Ĺ egan  <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: