at-bridge/Makefile.am: fixed LDFLAGS.
[platform/core/uifw/at-spi2-atk.git] / ChangeLog
index e08fa28..69d8448 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,367 @@
+<2001-10-26  Laszlo Peter <laca@ireland.sun.com>
+
+       * at-bridge/Makefile.am: fix LDFLAGS.
+
+<2001-10-09  Bill Haneman <bill.haneman@sun.com>
+
+       * at-bridge/bridge.c:
+       Re-worked listeners for toolkit events, now we have signal
+       and property listeners. Added a private method
+       register_atk_event_listeners(), which registers with the
+       various atk and gtk signals we need to monitor in order to emit
+       our at-spi events.
+       Added emission hook for AtkObject:property-change events, to
+       support the 'property listeners'.
+       Fixed some alloc()s of Accessibility_Event structs to use CORBA
+       allocation.
+
+       * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
+       which emit warnings and exit, respectively, if CORBA errors occur
+       during remote calls, and we now use these methods to check most of
+       our CORBA calls in the C bindings.
+
+       * cspi/spi_accessible.c:
+       Changed AccessibleSelection_refSelectedChild() to
+       AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
+       now increment refcounts.
+
+       * cspi/spi_component.c:
+       Fixed some long pointer casts (dangerous!) to pass pointers to
+       CORBA_longs of the proper type to the CORBA stubs, and copy the
+       data into the longs that were passed into the C bindings code.
+       
+       * at-bridge/bridge.c:
+       
+       * libspi/accessible.c:
+       Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
+       hyperlinks, AtkHyperlink is an object type.     
+
+       * libspi/application.c:
+       Added various conversions to and from "generic" event types and
+       atk-specific types; this is really part of the 'bridge'
+       implementation but is valid for all AtkObject-based accessibility 
+       implementations.
+
+       * libspi/editabletext.c:
+       Fixed nasty bug wherein editable text's finalize method was
+       unref'ing tha AtkObject reference that the text parent class was
+       about to unref _again_.  There was also a nasty inheritance bug
+       that meant that the AccessibleEditableText class was corrupt.
+
+       * libspi/selection.c:
+       Provided implementations for some selection API that was broken.
+       
+       * idl/Application.idl:
+       Added registerObjectEventListener () method.
+
+       * THROUGHOUT:
+       Fixed a number of return values that were Bonobo_Unknowns from
+       bonobo_object_corba_objref(), which I
+       forgot to dup before returning.  Changed instances of 
+       bonobo_object_corba_objref (bonobo_object(o)) to
+       BONOBO_OBJREF(o), for concision and clarity.
+       
+<2001-10-13  Louise Miller <louise.miller@sun.com>
+
+       * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
+       idl/Event.idl, idl/Registry.idl
+       Changed these files to include Bonobo_Unknown.idl instead
+       of Bonobo.idl
+
+<2001-09-10  Marc Mulcahy <marc.mulcahy@sun.com
+
+       * libspi/component.c libspi/component.h:
+               Fixed typo.  Added assertions for object checks in 
+       AccessibleComponent code.
+
+<2001-10-09  Bill Haneman <bill.haneman@sun.com>
+
+       * idl/Accessible.idl:
+               Added 'isEqual (Accessible *object)' 
+       method for Accessible. (Not Yet Implemented).
+       
+       * idl/Registry.idl:
+               Changed signature of registerKeystrokeListener() to
+       take a KeySet and KeyEventSeq so that specific keys and event
+       types could be requested for monitoring, and added a flag
+       is_synchronous so that either synchronous or asynchronous
+       notification could be requested.  (However this is not all
+       implemented yet). This also meant adding two new typedefs,
+       KeyEventSeq and KeySet.
+
+       * idl/Relation.idl: 
+               Added two new relations, RELATION_TOOLTIP_FOR and
+       RELATION_LEAFNODE_OF.
+
+       * idl/State.idl:
+               Added new state, STATE_HAS_TOOLTIP.
+       
+       * libspi/text.c, editabletext.c:
+               Added new assertions to all casts of bonobo-objects from
+       CORBA servants, to prevent Text API calls on non-text objects.
+               Changed suspect casts of int-pointer types, so that we
+       always send a valid CORBA_long pointer to the CORBA APIs that use
+       in/out long parameters.  We then have to copy from the CORBA_long
+       into the regular long or int for return to the C bindings, or
+       vice-versa when returning parameters from ATK calls to the bonobo wrappers.
+       
+       * cspi/spi_text.c:
+       * libspi/deviceeventcontroller.c:
+               Cleaned these sources up.
+       * idl/Text.idl:
+               Changed return type for getCharacterAtOffset to
+       CORBA_unsigned_long, to allow for 32-bit characters.
+       
+               
+<2001-10-08  Bill Haneman <bill.haneman@sun.com>
+
+       * util/Makefile.am:
+       * idl/Makefile.am:
+               Fixed 'make dist' so that distro compiles...
+       * libspi/keymasks.h:
+               new file.
+       * cspi/spi-listener.c:
+               KeystrokeListenerCB now returns a boolean.
+       * cspi/spi.h:
+               Added KeyEventType struct, and KeyStroke.
+               Also added createKeystrokeListener(),
+       KeystrokeListener_addCallback(),
+       KeystrokeListener_removeCallback(), and added a keymask to
+       registerKeystrokeListener().
+       * cspi/spi_accessible.c:
+               Changed numerous return types for interfaces from
+       AccessibleComponent to Accessible<InterfaceName>; this was
+       probably a cut-and-paste error.
+       * cspi/spi_event.c:
+               Implementations of new KeystrokeListener api (from spi.h,
+       above).
+       * idl/Registry.idl:
+               Changes to key modifier mapping.
+               Created ControllerEventMask struct.
+               Made DeviceEventController derive from Bonobo::Unknown.
+       * idl/Text.idl:
+               Removed TEXT_BOUNDARY_CURSOR_POS boundary type.
+       * libspi/deviceeventcontroller.c:
+               Added a number of new internal (private) methods.
+       * libspi/editabletext.c:
+       * libspi/editabletext.h:
+               Fixed a number of bugs related to the fact that
+       editabletext inherits from text.  Fixed the EditableText struct,
+       the init() call, and use correct casts when calling Text methods
+       from an EditableText object.  Removed (duplicate) atko from the
+       EditableText structure, we use the one in the parent Text
+       structure via the casts mentioned above.
+       * libspi/keystrokelistener.[ch]:
+       * libspi/registry.c:
+               Changes in support of keyboard handling (above).
+       
+       Keyboard handling, though partly functional, is still not
+       recommended for at-spi client use as there is considerable 
+       work yet to be done.
+
+       * libspi/text.c:
+               Changed some places where pointers to various int types
+       are cast to be pointers to CORBA_long types and vice-versa:
+       pointer casting is not safe so we pass pointers of the correct
+       types and then cast the result before putting it into the target
+       pointers.
+
+       * libspi/text.h: minor typos corrected.
+       * test/simple-at.c: 
+               We now speak not only the name of a Text element, but the
+       first sentence of its content, when it receives focus.
+               I also changed the text compression to 75% from 50%.
+       * util/Accessibility_Util.server.in:
+               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>
+
+       * libspi/keystrokelistener.h:
+       * libspi/keystrokelistener.c:
+               Initial functional implementations of KeystrokeListener.
+       * idl/Registry.idl:
+       
+<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>
+
+       * libspi/keystrokelistener.h:
+       * libspi/keystrokelistener.c:
+               Began (no-op) implementations of KeystrokeListener
+                       (see below).
+       * libspi/deviceeventcontroller.c:
+       * libspi/deviceeventcontroller.h:
+               Began creating implementations of DeviceEventController,
+                       to handle keystroke and mouse event listening and
+                       synthesis.
+       * libspi/accessible.c:
+               Stubbed-in the implementations for
+                       Accessibility_Accessible_getState and
+                       Accessibility_Accessible_getRelationSet.
+       * libspi/registry.c:
+               Improved de-registration process and fixed some bugs, 
+                       deregistration now works correctly.
+       * libspi/desktop.c:
+               Added initialization of applications list (to NULL).
+       * util/magnifier.c:
+               Reduced speech compression from 0.5 to 0.7, for demo.
+               Changed call to gdk_window_set_decorations()
+                       to gtk_window_set_decorated().
+       * at-bridge/bridge.c:
+               Bridge now deregisters when app exits, via
+                       registration of a cleanup function
+                       with the g_atexit() call.
+                       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>
+
+       * util:
+       * util/Makefile.am: 
+               Created a new directory for 
+                       accessibility-related utilities, primarily for
+                       testing and demo purposes, but with possible
+                       end-user utility.
+       
+       * util/magnifier.c:
+       * util/magnifier.h:
+       * util/mag_image.c:
+       * util/mag_image.h:
+               Onscreen magnifier utility that
+                       is implemented as a bonobo service.
+       
+       * util/mag_client.c:
+       * util/mag_client.h:
+               Client-side support (simple C bindings) 
+                       for Magnification service
+       
+       * util/mag_control.c:
+               Client program example for 
+                       Magnification service
+       
+       * util/Accessibility_Magnifier.server.in:
+               Bonobo-activation file for the 
+                       Magnification service.
+       
+       * util/idl:
+       * util/idl/Magnifier.idl:
+               IDL defining the bonobo Magnification
+                       service interface.
+
+       * test/simple-at.c:
+               Modifications to use the bonobo-activated magnifier
+                       above, in place of trying to connect to an existing
+                       magnifier that uses socket-listening IPC.
+
+               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>
+       * at-bridge/bridge.c:
+               applied patch from Marc to build and run 
+               against new glib and gtk+ (seemed like a change 
+               to bonobo_init signature was made ?)
+       * test/simple-at.c:
+               made festival-server support turned off by default.
+               Added support for a simple magnifier (off by default)
+               which will be added to a 'util' directory later.
+       * at-bridge/Makefile.am:
+               Changed "application.h" header from a 'source'
+               to a 'dependency' of libat-bridge.
+
+<2001-09-12  Marc Mulcahy <marc.mulcahy@sun.com>
+       * cspi/Makefile.am:
+               Added spi-util.c.
+
+       * cspi/spi-util.c:
+               Fixed typo
+
+       * cspi/spi.c:
+               Added interface implementation c files to list of
+                       includes so they are included in libcspi.
+
+       * cspi/spi.h:
+               Changed prototype of AccessibleAction_doAction to return a
+                       boolean.
+               Changed prototype of AccessibleTable_getCaption to
+                       return an Accessible.
+               Changed prototype of AccessibleTable_getSelectedRows
+                       and AccessibleTable_getSelectedColumns to
+                       return a long (returns the number of selected rows
+                       or columns respectively).
+               Changed name of AccessibleText_refRunAttributes to
+                       AccessibleText_getAttributes.
+               Changed prototype of AccessibleText_getCharacterExtents to
+                       return a void rather than a boolean. 
+               Added support for a AccessibleCoordType parameter
+                       specifying what type of coordinates are desired.
+               Added an AccessibleCordType parameter to
+                       AccessibleText_getPointAtOffset.
+
+       * cspi/spi_accessible.c:
+               Added code to return the outstanding interfaces from
+                       Accessible_queryInterface.
+
+       * cspi/spi_action.c:
+               Fixed typos.
+               Corrected call to getNActions to call the c binding
+                       for an attribute.
+
+       * cspi/spi_editabletext.c:
+               Fixed typos.
+               Changed name from setRunAttributes to setAttributes.
+
+       * cspi/spi_hyperlink.c:
+               Fixed typos.
+               Changed call to getNAnchors to correctly call the c
+                       binding for an attribute.
+
+       * cspi/spi_hypertext.c:
+               Fixed typos.
+               Changed getImageDescription to correctly call the
+                       binding for an attribute.
+
+       * cspi/spi_selection.c:
+               Changed getNSelectedChildren to correctly call the c
+                       binding for the attribute.
+               Changed refSelectedChild to getSelectedChild.
+
+       * cspi/spi_table.c:
+               Fixed typos.
+               Changed getCaption to return an Accessible.
+               Fixed calls which retrieve attributes.
+               Changed refAt to getAccessibleAt.
+               Changed getNSelectedRows and getNSelectedColumns to
+                       return longs.
+
+       * cspi/spi_text.c:
+               Changed getCharacterExtents and getPointAtOffset to accept an
+                       AccessibleCoordType.
+               Fixed typos.
+               Changed calls which retrieve attributes.
+               Changed refRunAttributes to getAttributes.
+
+       * cspi/spi_value.c:
+               Fixed typos.
+
+       * idl/Hyperlink.idl:
+               Changed n_anchors attribute to nAnchors to keep naming
+                       convention consistent.
+
+       * idl/Table.idl:
+               Made Table inherit from Bonobo::Unknown.
+               Added nSelectedColumns and nSelectedRows attributes.
+
+       * idl/Value.idl:
+               Made Value inherit from Bonobo::Unknown.
+
+       * libspi/hyperlink.c:
+               Change for nAnchors attributte name change.
+
 <2001-09-12  Marc Mulcahy <marc.mulcahy@sun.com>
        * cspi/Makefile.am:
                Added spi-util.c.
                        includes so they are included in libcspi.
 
        * cspi/spi.h:
-               Changed prototype of AccessibleAction_doAction to return a boolean.
+               Changed prototype of AccessibleAction_doAction to return a
+                       boolean.
                Changed prototype of AccessibleTable_getCaption to
                        return an Accessible.
                Changed prototype of AccessibleTable_getSelectedRows
                        and AccessibleTable_getSelectedColumns to
-                       return a long (returns the number of selected rows or columns
-                       respectively).
+                       return a long (returns the number of selected rows
+                       or columns respectively).
                Changed name of AccessibleText_refRunAttributes to
                        AccessibleText_getAttributes.
-               Changed prototype of AccessibleText_getCharacterExtents to return a void rather than a
-                       boolean. Addded support for a AccessibleCoordType parameter specifying what type of coordinates are desired.
+               Changed prototype of AccessibleText_getCharacterExtents to
+                       return a void rather than a boolean. 
+               Added support for a AccessibleCoordType parameter
+                       specifying what type of coordinates are desired.
                Added an AccessibleCordType parameter to
                        AccessibleText_getPointAtOffset.
 
                Change for nAnchors attributte name change.
 
 
-       <2001-09-05  Marc Mulcahy <marc.mulcahy@sun.com>
-               implementations-- made server implementations own AtkObject pointers
+<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>
+       * cspi/spi_accessible.c:
+               Added method Accessible_Role_getName(),
+                       and requisite string array (role_names).
+               Added conversion string_from_corba_strin() call
+                       to Accessible_getName and _getDescription.
+       * libspi/accessible.c:
+               Added implementation for Accessible_getRole()
+       * test/simple-at.c:
+               Added festival support, used if environment variable
+                       FESTIVAL is set.
        
 2001-09-04  Bill Haneman <bill.haneman@sun.com>