X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ChangeLog;h=d79284588f32e4304f3ab8a62c71969d1ad05e89;hb=210e1cfe72d147251941eaa4c789970c51f12960;hp=a05508d3603a1b3b1aa28cd9a845d4d44937899a;hpb=51eee7ccf4923df4bcd0ed190a38e3cc0ab04861;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/ChangeLog b/ChangeLog index a05508d..d792845 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,575 @@ +2002-11-24 Bill Haneman + + * 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 + + * 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 + + * 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 + + 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 + + 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 + + * 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 + (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 + + 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 + + * 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 + 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 + + * 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 + + * 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 + + * 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 + + * registryd/deviceeventcontroller.c + Fixed compilation error caused by calling gettimeofday() + with 1 parameter + +2002-10-18 Bill Haneman + + 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 + + * 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 * libspi/keymasks.h: