-2001-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
+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 Š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:
+ (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
* cspi/*.h: add G_BEGIN/END_DECLS
-2001-22-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-22 Bill Haneman <bill.haneman@sun.com>
* test/simple-at.c:
Added non-preemptive keylistener for key events with no modifiers
for non-preemptive key masks.
-2001-22-11 Bill Haneman <bill.haneman@sun.com>
+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/idl:
Added .cvsignore files.
-2001-21-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-21 Bill Haneman <bill.haneman@sun.com>
* libspi/deviceeventcontroller.c:
* libspi/keystrokelistener.c:
event dispatching, so listeners should only receive those events
that they requested :-)
-2001-21-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-21 Bill Haneman <bill.haneman@sun.com>
* configure.in:
* docs/Makefile.am:
* libspi/base.[ch]: add.
-2001-18-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-18 Bill Haneman <bill.haneman@sun.com>
* idl/Accessible.idl:
* idl/Application.idl:
Solaris build problem.
-2001-20-11 Michael Meeks <michael@ximian.com>
+2001-11-20 Michael Meeks <michael@ximian.com>
* libspi/registry.c
(impl_accessibility_registry_deregister_global_event_listener):
* libspi/application.h: kill unused ( and whacked out )
gboolean *spi_application_set_id (AtkObject *app, long id);
-2001-20-11 Michael Meeks <michael@ximian.com>
+2001-11-20 Michael Meeks <michael@ximian.com>
* libspi/*.[ch]: further convert to bonobo's type func
macros, remove redundnant casts etc.
* */.cvsignore: update
-2001-20-11 Michael Meeks <michael@ximian.com>
+2001-11-20 Michael Meeks <michael@ximian.com>
* libspi/deviceeventcontroller.c
(_controller_register_with_devices): use g_getenv,
* libspi/*.[ch]: more headers, includes and over commenting.
-2001-20-11 Michael Meeks <michael@ximian.com>
+2001-11-20 Michael Meeks <michael@ximian.com>
* libspi/*.[ch]: fixup headers, includes and over commenting.
* libspi/libspi.h: add.
-2001-19-11 Michael Meeks <michael@ximian.com>
+2001-11-19 Michael Meeks <michael@ximian.com>
* libspi/editabletext.c (impl_setAttributes): fix warnings.
* libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
warning fixes.
-2001-18-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-18 Bill Haneman <bill.haneman@sun.com>
* libspi/spi_accessible.c: Added docs and C bindings for
AccessibleStateSet. (No implementations yet). Documentation
object:column-deleted
object:model-changed
-2001-16-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-16 Bill Haneman <bill.haneman@sun.com>
* libspi/hyperlink.c,h:
Fixed some broken stuff in hyperlink.
Doc coverage now 95%.
-2001-16-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-16 Bill Haneman <bill.haneman@sun.com>
One last namespacing revision:
* libspi/accessibleeventlistener.[ch]:
AccessibleTable
AccessibleHyperlink
-2001-14-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-14 Bill Haneman <bill.haneman@sun.com>
* at-bridge/bridge.c:
Initial work for toolkit-level key snooper connection by bridge.
libraries. (Incompletely tested for technical reasons, fixes may follow)
-2001-13-11 Michael Meeks <michael@ximian.com>
+2001-11-13 Michael Meeks <michael@ximian.com>
* libspi/application.c
(impl_accessibility_application_get_version),
(impl_accessibility_accessible_get_relation_set):
warning fixes & include action.h
-2001-13-11 Michael Meeks <michael@ximian.com>
+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-13-11 Michael Meeks <michael@ximian.com>
+2001-11-13 Michael Meeks <michael@ximian.com>
* *.[ch] Namespace libspi into spi_ and Spi.
* configure.in: build it.
-2001-12-11 Bill Haneman <bill.haneman@sun.com>
+2001-11-12 Bill Haneman <bill.haneman@sun.com>
* test/keysynth-demo.c:
Use a 'realize' signal-handler to set the WM properties for
* libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
-<2001-10-26 Laszlo Peter <laca@ireland.sun.com>
+2001-10-26 Laszlo Peter <laca@ireland.sun.com>
* at-bridge/Makefile.am: fix LDFLAGS.
-<2001-10-09 Bill Haneman <bill.haneman@sun.com>
+2001-10-09 Bill Haneman <bill.haneman@sun.com>
* at-bridge/bridge.c:
Re-worked listeners for toolkit events, now we have signal
bonobo_object_corba_objref (bonobo_object(o)) to
BONOBO_OBJREF(o), for concision and clarity.
-<2001-10-13 Louise Miller <louise.miller@sun.com>
+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
+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>
+2001-10-09 Bill Haneman <bill.haneman@sun.com>
* idl/Accessible.idl:
Added 'isEqual (Accessible *object)'
CORBA_unsigned_long, to allow for 32-bit characters.
-<2001-10-08 Bill Haneman <bill.haneman@sun.com>
+2001-10-08 Bill Haneman <bill.haneman@sun.com>
* util/Makefile.am:
* idl/Makefile.am:
Changed the default magnifier type to be a 3x vertical
splitscreen magnifier (was previously a 2x horizontal one).
-<2001-10-03 Bill Haneman <bill.haneman@sun.com>
+2001-10-03 Bill Haneman <bill.haneman@sun.com>
* libspi/keystrokelistener.h:
* libspi/keystrokelistener.c:
Initial functional implementations of KeystrokeListener.
* idl/Registry.idl:
-<2001-10-05 Marc Mulcahy <marc.mulcahy@sun.com>
+2001-10-05 Marc Mulcahy <marc.mulcahy@sun.com>
Fixed string handling for NULL strings in libspi.
Added spi_freeString to free strings returned by C bindings.
-<2001-09-30 Bill Haneman <bill.haneman@sun.com>
+2001-09-30 Bill Haneman <bill.haneman@sun.com>
* libspi/keystrokelistener.h:
* libspi/keystrokelistener.c:
Required making 'app' static, renamed 'this_app'.
Fixed broken use of bonobo_init, passing argv wrongly.
-<2001-09-27 Bill Haneman <bill.haneman@sun.com>
+2001-09-27 Bill Haneman <bill.haneman@sun.com>
* util:
* util/Makefile.am:
If env variable MAGNIFIER is set, a magnifier service
will be started if one does not exist.
-<2001-09-25 Bill Haneman <bill.haneman@sun.com>
+2001-09-25 Bill Haneman <bill.haneman@sun.com>
+
* at-bridge/bridge.c:
applied patch from Marc to build and run
against new glib and gtk+ (seemed like a change
Changed "application.h" header from a 'source'
to a 'dependency' of libat-bridge.
-<2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
+2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
+
* cspi/Makefile.am:
Added spi-util.c.
* libspi/hyperlink.c:
Change for nAnchors attributte name change.
-<2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
+2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
* cspi/Makefile.am:
Added spi-util.c.
Change for nAnchors attributte name change.
-<2001-09-05 Marc Mulcahy <marc.mulcahy@sun.com>
+2001-09-05 Marc Mulcahy <marc.mulcahy@sun.com>
implementations-- made server implementations own AtkObject pointers
rather than their respective AtkInterrface pointers to fix
refcounting. AtkHyperlink is still broken.
-<2001-09-04 Bill Haneman <bill.haneman@sun.com>
+2001-09-04 Bill Haneman <bill.haneman@sun.com>
* cspi/spi_accessible.c:
Added method Accessible_Role_getName(),
and requisite string array (role_names).
Changed bonobo_object_release_unref to
Accessibility_Accessible_unref.
-<2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
+2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
* Added files:
spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
Implementations for C bindings to remaining accessibility
interfaces.
-<2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
+2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
* idl/Action.idl:
changed return value of Action from void to boolean to
2001-08-21 Bill Haneman <bill.haneman@sun.com>
Tagged CVS repository 'EA_1_0'.
- * README.EARLY_ACCESS:
+ * README.EARLY_ACCESS:
Alphabetized acknowledgements list, and
added someone.
Listed some known dependencies of at-spi.
Accessible_getName() - uppercase object type name, studlyCaps method
name.
- *cspi/spi.h:
+ * cspi/spi.h:
Added gtk-doc documentation for all currently implemented
methods in the C bindings API.
2001-07-31 Bill Haneman <bill.haneman@sun.com>
- * libspi/accessible.c : added support for 'description' property.
+ * libspi/accessible.c : added support for 'description' property.
* libspi/accessible.c
* libspi/desktop.c
* libspi/registry.c : changed to use bonobo_object instead of bonobo_x_object
2001-07-28 Anders Carlsson <andersca@gnome.org>
- * libspi/accessible.c (accessible_object_finalize): Change
+ * libspi/accessible.c (accessible_object_finalize): Change
g_free to g_object_unref since the AtkObject is a GObject.
2001-07-30 Bill Haneman <bill.haneman@sun.com>