1 2006-06-09 Bill Haneman <bill.haneman@sun.com>
4 (impl_get_nSelectedRows, impl_get_nSelectedColumns):
5 New, missing implementations of attribute reading methods
8 * cspi/spi.h, spi_value.c:
9 (AccessibleValue_getMinimumIncrement): New methods wrapping
10 the (formerly unimplemented) property from Value.idl.
13 (impl_get_minimumIncrement): Implementation for retrieving
14 the minimum valuator increment, (formerly unimplemented).
17 2006-06-09 Bill Haneman <bill.haneman@sun.com>
19 * idl/Accessibility_State.idl:
20 Added STATE_VISITED (bug #338369).
22 * cspi/spi_accessible.c:
23 (spi_state_to_corba) Fixed marshalling of new statetypes.
26 (spi_init_state_tables, impl_getStates):
27 Fixed conversion of new statetypes to/from ATK.
29 * idl/Accessibility_Role.idl: Added ROLE_FORM (bug #344266).
31 * cspi/spi-roletypes.h, spi_accessible.c: Added marshalling
32 definitions/conversions for new roles from ATK.
34 * idl/Accessibility_Relation.idl:
36 * cspi/spi.h, spi_accessible.c: Added SPI_RELATION_DESCRIBED_BY and
37 SPI_RELATION_DESCRIPTION_FOR. (bug #344264) Also
38 SPI_PARENT_WINDOW_OF, which was in ATK but not AT-SPI.
40 * libspi/accessible.c: Fixed marshalling of new role types from
43 2006-04-17 Matthias Clasen <mclasen@redhat.com>
45 * revert my previous change
47 2006-04-17 Kjartan Maraas <kmaraas@gnome.org>
49 * configure.in: Remove obssolete no_NO locale
50 * po/no.po: And the translation.
52 2006-04-05 Matthias Clasen <mclasen@redhat.com>
54 * atk-bridge/bridge.c (spi_atk_emit_eventv): Fix a
55 memory-management error that caused crashes on x86_64.
58 2006-03-30 Guntupalli Karunakar <karunakar@indlinux.org>
60 * configure.in: Added 'dz' (Dzongkha) to ALL_LINGUAS.
62 2006-03-27 Bill Haneman <bill.haneman@sun.com>
64 * configure.in: Define $LIBTOOL_EXPORT_OPTIONS
65 to strip "cspi_*" from the symbol table.
67 * cspi/spi_streamablecontent.c:
68 (get_streams): Make this method static.
71 (_cspi_exception_throw): rename to cspi_exception_throw,
72 so we can strip it with the rest...
75 Add LIBTOOL_EXPORT_OPTIONS to libcspi_la_LDFLAGS.
77 2006-03-27 Bill Haneman <bill.haneman@sun.com>
79 Add doxygen-generated IDL docs to tarball, and enable
80 doxygen during build/install when available. Bug #301345.
82 * configure.in: Add docs/reference/idl/Makefile to AC_OUTPUT.
84 * docs/reference/Makefile.am: Add idl to SUBDIRS.
86 * docs/reference/idl/Makefile.am: Optionally use
87 doxygen to create docs.
89 2006-03-20 Vladimer Sichinava <vlsichinava@gmail.com>
91 * configure.in: Added "ka" (Georgian) to ALL_LINGUAS
93 2006-03-20 Bill Haneman <bill.haneman@sun.com>
96 (impl_get_selected_rows): Don't free the selection if it's
97 empty or has not been assigned; init it to NULL so you can tell.
98 Also, allow for zero selected rows.
99 (impl_getSelectedColumns): Ditto. Bug #319088.
101 2006-03-11 Vincent Untz <vuntz@gnome.org>
103 Leak fix for bug #334217.
105 * libspi/application.c: spi_application_toolkit_event_listener():
106 don't duplicate the string we pass as an argument to
107 spi_init_any_nil() since spi_init_any_nil() already does it
108 * registryd/deviceeventcontroller.c:
109 (spi_dec_button_update_and_emit): ditto
110 (spi_dec_mouse_check): ditto
111 (spi_dec_emit_modifier_event): ditto
112 (spi_device_event_controller_forward_mouse): ditto
113 * registryd/registry.c:
114 (desktop_add_application): ditto
115 (desktop_remove_application): ditto
117 2006-02-20 Bill Haneman <billh@gnome.org>
119 * configure.in: Rev to 1.7.6.
121 Leak fixes for bug #331924.
123 * atk-bridge/bridge.c:
124 (spi_atk_bridge_init_base): Don't dup the string, it's already
125 been dup-ed. Fixes a leak.
126 (spi_atk_emit_eventv): Move the CORBA_free call here,
127 instead of spi_atk_state_event_listener; fixes another leak.
128 (spi_atk_bridge_key_listener):Free the dup'ed key strings after
129 notifying the registry; fixes another leak.
131 * registryd/registry.c:
132 (registry_flush_event_queue): Free the CORBA_any when
133 flushing the event, not just the string. Fixes another leak.
134 (registry_queue_event): Free the CORBA_any when dropping
135 events on the floor; fixes another leak.
138 (spi_init_any_object, spi_init_any_nil):
139 Always set _release to TRUE. Fixes another leak.
141 2006-02-20 Bill Haneman <billh@gnome.org>
143 * configure.in: Rev to 1.7.5.
144 Reinstate localization of this module. Thanks for Rodney
145 Dawes for fixing my patch.
147 * registryd/Makefile.am: Remove Accessibility_Registry.server
148 from dist, since it needs to be re-created at configure time.
151 2006-01-31 Bill Haneman <billh@gnome.org>
153 * configure.in: Rev to 1.7.4 (to include build fix below).
155 * idl/Makefile.am: Include Selector.idl in dist.
159 (cspi_internal_event_get_object): Handle case where
160 "object" isn't present, i.e. CORBA_TC_Object doesn't match
161 the EventDetails data.
162 (cspi_internal_event_get_text): Handle NULL string.
163 (cspi_internal_event_get_rect): Handle missing/empty rect
164 data, Accessibility_TC_RectBounds doesn't match any_data.
166 2006-01-30 Bill Haneman <billh@gnome.org>
170 * atk-bridge/bridge.c:
171 (spi_atk_emit_eventv): Check for SPI_REMOTE_OBJECT
172 interface and use that when instantiating a new source
173 accessible. Better fix for bug #321814.
175 2006-01-27 Bill Haneman <billh@gnome.org>
177 * idl/Accessibility_Selector.idl: Added to the cvs repository.
179 * configure.in: Revved to 1.7.3.
181 2006-01-17 Bill Haneman <billh@gnome.org>
183 * configure.in: Revved to 1.7.2, re-dist to include docs.
185 2006-01-09 Bill Haneman <billh@gnome.org>
187 * configure.in: Removed po/Makefile.in inclusion, we do not need
190 * idl/Accessibility.idl: Improved documentation here, and for all
191 IDL in the 'GNOME::Accessibility' namespace.
193 * idl/Accessibility_Accessible.idl:
194 (LOCALE_TYPE): Added enum.
195 (AttributeSet): New, for returning multiple name/value attribute pairs.
196 (RoleSet): New, sequence of Roles, to be used in upcoming
198 (getAttributes): New API, allows retrieval of name/value pair
199 annotations for all kinds of Accessible objects. C.f.
200 Text:getAttributes, which is only for typographic/textual/semantic tags in
202 (getApplication): New, retrieves the host/containing Application
203 instance for an object (without having to walk up the whole tree).
205 * idl/Accessibility_Component.idl:
206 (getAlpha): New method, returns the alpha blending (aka 'opacity')
207 value for an object. An alpha of 1.0 is fully opaque, 0.0 is
210 * idl/Accessibility_Event.idl:
211 (EventDetails): New struct definition, for encapsulating
212 commonly-queried information about emitted events. The use of
213 this structure in emitted events (in the 'any' member of
214 Accessibility_Event) should greatly reduce the number of
215 client-server roundtrips necessary.
217 * idl/Accessibility_Image.idl:
218 (imageLocale): New, a readonly attribute indicating the POSIX
219 LC_MESSAGES locale of the image and associated Alt/descriptive
222 * idl/Accessibility_Relation.idl:
223 (RELATION_PARENT_WINDOW_OF): Include, as complement to
226 * idl/Accessibility_Role.idl:
227 (ROLE_ENTRY, ROLE_CHART, ROLE_CAPTION, ROLE_DOCUMENT_FRAME)
228 (ROLE_HEADING, ROLE_PAGE, ROLE_SECTION): New roles for
229 complex document and form support.
231 * idl/Accessibility_State.idl:
232 (STATE_REQUIRED, STATE_TRUNCATED, STATE_ANIMATED)
233 (STATE_INVALID_ENTRY, STATE_SUPPORTS_AUTOCOMPLETION)
234 (STATE_SELECTABLE_TEXT, STATE_IS_DEFAULT): New states,
235 for support of complex documents and forms.
237 * idl/Accessibility_StreamableContent.idl:
238 (SeekType, IOError, NotSupported, NoPermission): New enum and exceptions, to
239 allow old bonobo-stream interfaces to be deprecated in the next
242 * idl/Accessibility_Text.idl:
243 (getAttributeValue): New method, allows query-by-name of single
246 * libspi/accessible.c:
247 Added support for new roles. Implemented new methods
248 (impl_accessibility_accessible_get_application): New
249 (impl_accessibility_accessible_get_attributes): New
251 * libspi/component.c:
252 (impl_accessibility_component_get_alpha): New.
255 (impl_accessibility_image_get_locale): New.
257 * libspi/relation.c: Added support for new relation type.
259 * libspi/stateset.c: Added support for new state types.
262 (impl_getAttributeValue): New.
265 New prototypes for private methods
267 spi_init_any_object, spi_init_any_string,
270 * libspi/spi_event.c:
271 Use EventDetails in the event emission methods.
273 * cspi/spi-private.h:
274 (cspi_role_from_spi_role): Expose this adapter method, since
275 we need it in the bridge (see below).
278 (AccessibleEvent_getSourceName):
279 (AccessibleEvent_getSourceRole):
280 (AccessibleEvent_getSourceApplication):
281 (AccessibleEvent_getSourceDetails):
282 New methods for interrogating/demarshalling
283 event details (i.e. source's accessible name, role,
286 * cspi/spi_accessible.c: Use cspi_role_from_spi_role.
287 Make use of the new EventDetails struct in events, if present.
288 (AccessibleEvent_getSourceName)
289 (AccessibleEvent_getSourceRole)
290 (AccessibleEvent_getSourceApplication)
291 (AccessibleEvent_getSourceDetails): Implement the newly exposed
293 (Accessible_getAttributes): New, wraps
294 Accessibility_Accessible_getAttributes.
295 (Accessible_getHostApplication): New, wraps
296 Accessibility_Accessible_getApplication.
299 (AccessibleImage_getImageLocale): New wrapper for
300 Accessibility_Image_get_imageLocale.
302 * cspi/spi_component.c:
303 (AccessibleComponent_getAlpha): New wrapper for
304 Accessibility_Component_getAlpha.
306 * atk-bridge/bridge.c:
307 Use new prototyped for init_any methods.
308 (spi_atk_bridge_init_nil, spi_atk_bridge_init_object)
309 (spi_atk_bridge_init_string, spi_atk_bridge_init_rect)
310 (spi_atk_bridge_init_base): Wrappers
311 for spi_init_any_* methods, due to refactor; include extended
312 information in the Accessibility_EventDetails struct, for instance
313 accessible-name, Role, and containing Application.
315 * registryd/registry.c:
316 Use new event emission (with EventDetails).
318 * registryd/deviceeventcontroller.c:
319 Use new event emission (with EventDetails).
321 2006-01-09 Kjartan Maraas <kmaraas@gnome.org>
323 * configure.in: Generate po/Makefile.in
324 * cspi/spi_main.c: Add #ifdef PRINT_LEAKS around a function
325 * cspi/spi_streamablecontent.c:
326 (accessible_bonobo_stream_client_seek),
327 (AccessibleStreamableContent_seek): Remove unused vars.
328 * libspi/application.c: Missing header.
329 * libspi/text.c: (impl_getDefaultAttributes): Unused vars
330 * login-helper/login-helper.c: (login_helper_finalize),
331 (login_helper_init): Remove unused stuff
332 * registryd/deviceeventcontroller.c: (spi_dec_replace_map_keysym),
333 (spi_dec_init_mouse_listener), (is_key_released): Remove unused vars
334 and surround some with #ifdef GRAB_BUTTON.
335 * test/event-listener-test.c: (main), (report_event),
336 (report_caret_event), (report_detail_event),
337 (report_detail1_event), (report_bounds_event), (report_text_event),
338 (report_text_selection_event),
339 (report_active_descendant_changed_event),
340 (report_children_changed_event), (report_name_changed_event),
341 (report_description_changed_event), (report_parent_changed_event),
342 (report_window_event), (report_table_summary_event),
343 (report_table_header_event), (report_table_caption_event),
344 (report_table_row_description_event),
345 (report_table_column_description_event), (timing_test_event):
346 Remove a bunch of unused variables and fix a slew of format specifiers
347 * test/key-listener-test.c: (report_all_key_event): Format specifier
348 * test/keypad-test.c: (print_key_event): Same
349 * test/login-helper-server-test.c: (main): Include gtkmain.h and remove
351 * test/screen-review-test.c: (main), (print_chunk_debug),
352 (review_buffer_get_text_chunk), (debug_chunk_list),
353 (string_guess_clip), (text_chunk_get_clipped_string),
354 (text_chunk_list_to_string), (get_screen_review_line_at):
355 Remove unused variables and fix format specifiers.
356 * test/simple-at.c: (report_text_event): Format specifier fix.
357 * test/stress-test.c: (main): Remove unused var.
359 2005-12-29 Abel Cheung <maddog@linuxhall.org>
361 * configure.in: Add zh_HK, zh_TW to ALL_LINGUAS
362 (yes I know that's useless)
364 2005-11-20 Theppitak Karoonboonyanan <thep@linux.thai.net>
366 * configure.in: Added "th" (Thai) to ALL_LINGUAS.
368 2005-11-17 Michael Meeks <michael.meeks@novell.com>
370 * atk-bridge/bridge.c (spi_atk_emit_eventv):
371 urgh-fix embarassing typo.
373 2005-11-16 Michael Meeks <michael.meeks@novell.com>
375 * atk-bridge/bridge.c (spi_atk_emit_eventv):
376 do a faster, less problematic _unref call on this local
377 object, rather than a slower (potentially cross-thread
378 complicated) CORBA call.
380 2005-11-02 Kjartan Maraas <kmaraas@gnome.org>
382 * atk-bridge/bridge.c: (spi_atk_bridge_signal_listener):
383 * cspi/spi_streamablecontent.c: (AccessibleStreamableContent_seek):
384 * registryd/deviceeventcontroller.c:
385 (spi_controller_notify_mouselisteners),
386 (impl_generate_keyboard_event):
387 * test/screen-review-test.c: (chunk_bounds_within):
388 * test/test-simple.c: (test_desktop): Remove some unused code
389 and fix compiler warnings. Closes bug #320049.
391 2005-10-27 Bill Haneman <bill.haneman@sun.com>
393 * registryd/deviceeventcontroller.c:
394 (spi_controller_notify_keylisteners): Check
395 to make sure the event listener has requested 'preemptive'
396 status before pre-empting an event.
398 2005-08-29 Bill Haneman <bill.haneman@sun.com>
400 * configure.in, README, NEWS: Release 1.6.5.
402 2005-07-25 Matthias Clasen <mclasen@redhat.com>
404 * test/window-listener-test.c: Fix a printf
405 format error. (#169453)
407 2005-07-15 Bill Haneman <bill.haneman@sun.com>
409 * tests/test-simple.c:
410 (key_listener_cb): Ensure that the keystring is dup'ed instead of
411 relying on the old string from the key event hanging around after
412 the event handler returns. Fixes broken 'make check'.
414 2005-06-06 Swapnil Hajare <dreamil@gmail.com>
416 * Added Marathi (mr_IN) translations.
418 2005-05-27 Kjartan Maraas <kmaraas@gnome.org>
420 * cspi/bonobo/cspi-bonobo-listener.c:
421 (cspi_event_list_remove_by_cb): Fix the build.
423 2005-05-26 Michael Meeks <michael.meeks@novell.com>
425 * cspi/bonobo/cspi-bonobo-listener.c
426 (cspi_event_list_remove_by_cb): actually filter by callback.
428 2005-05-25 Bill Haneman <bill.haneman@sun.com>
430 * registryd/registry.c (remove_listener_cb):
431 Make deregistration filter rules match the event emission rules.
433 2005-05-25 Michael Meeks <michael.meeks@novell.com>
435 * registryd/registry.c (remove_listener_cb),
436 (impl_accessibility_registry_deregister_global_event_listener),
437 (impl_accessibility_registry_deregister_global_event_listener_all):
438 pass a closure to the remove callback to filter listeners more
439 accurately on remove.
441 2005-04-05 Bill Haneman <bill.haneman@sun.com>
443 * configure.in: Revved to 1.6.4.
444 Remember to put quotes around XEVIE_LIBS assignment.
445 Fixed one of tertiary AC_CHECK_HEADER tests for XEvie.
448 * tests/event-listener-test.c: Tweaked the tests - more detail
449 from caret events, and some interrogation of AccessibleText APIs.
450 Commented-out the bounds-changed events by default, since they can
453 2005-04-14 Kjartan Maraas <kmaraas@gnome.org>
455 * atk-bridge/bridge.c: (spi_atk_emit_eventv): Plug a leak.
456 * cspi/bonobo/cspi-bonobo-listener.c: (cspi_device_event):
457 Same here. Closes bug #167806
459 2005-04-05 Bill Haneman <bill.haneman@sun.com>
461 * atk-bridge/bridge.c:
462 (spi_atk_bridge_signal_listener):
463 Free the any._value if any._release is TRUE,
464 since the ORB won't do it for us in this case
465 [because this method is not a skel].
468 2005-03-30 Steve Murphy <murf@e-tools.com>
470 * configure.in: Added "rw" to ALL_LINGUAS.
472 2005-03-29 Bill Haneman <bill.haneman@sun.com>
474 * configure.in: Improved check for HAVE_XEVIE, to detect
475 presence on XOrg, where -lXevie is a separate library.
477 2005-03-08 Bill Haneman <bill.haneman@sun.com>
479 * configure.in, NEWS, README: Revved to 1.6.3.
481 2005-02-16 Adi Attar <aattar@cvs.gnome.org>
483 * configure.in: Added "xh" to ALL_LINGUAS.
485 2005-02-07 Bill Haneman <bill.haneman@sun.com>
487 * atk-bridge/bridge.c:
488 (atk_bridge_init): Added missing NULL in g_strconcat(),
489 also check for symlink before logging to
490 insecure directory. Thanks to meissner@suse.de.
492 2005-01-25 Padraig O'Briain <padraig.obriain@sun.com>
494 * tests/login-helper-server-test.c: Add return call to main
495 function. Patch from Chris Lahey. Fixes bug #165129.
497 2004-12-20 Padraig O'Briain <padraig.obriain@sun.com>
499 * cspi/spi.h: Add description for SPI_RELATION_SUBWINDOW_OF.
501 2004-12-09 Bill Haneman <billh@gnome.org>
503 * registryd/registry-main.c:
504 Added #define <string.h> for strrchr. (bug 160862).
505 Thanks to Vincent Berger for catching.
507 2004-12-09 Padraig O'Briain <padraig.obriain@sun.com>
509 * atk-bridge/bridge.c (spi_atk_get_registry): Do not attempt to
510 restart registry process if the registry process is found to have died
511 and the current process is exiting.
512 (spi_atk_bridge_exit_func): Do not attempt to deregister the
513 application if the registry process has died.
514 (spi_atk_emit_eventv): Return if call to spi_atk_get_registry
515 does not return a registry object.
516 (spi_atk_tidy_windows): Give up if the registry process has died.
518 This fixes problems with hangs and crashes when logging out.
520 2004-12-03 Padraig O'Briain <padraig.obriain@sun.com>
522 * registryd/desktop.c: Add checking that we are not exiting before
523 calling spi_desktop_remove_application in
524 abnormal_application_termination. Fix for bug #152147.
526 2004-12-02 Bill Haneman <billh@gnome.org>
528 * configure.in, NEWS, README: Revved to 1.6.1.
530 Patch from Padraig O'Briain <padraig.obriain@sun.com>
531 * atk-bridge/bridge.c:
532 (atk_bridge_init): Save the pid when we start, to detect forks.
533 (spi_atk_bridge_exit_func): Don't call the cleanup routines
534 if we're in a forked pid.
536 2004-10-09 Bill Haneman <billh@gnome.org>
538 * idl/Accessibility_LoginHelper.idl:
539 Improved inline documentation.
541 2004-10-02 Jesus Bravo Alvarez <suso@trasno.net>
543 * configure.in: Added gl (Galician) to ALL_LINGUAS
545 2004-09-30 Kjartan Maraas <kmaraas@gnome.org>
547 * libspi/accessible.c:
548 (impl_accessibility_accessible_get_role_name),
549 (impl_accessibility_accessible_get_local_role_name):
551 * libspi/component.c:
552 (impl_accessibility_component_get_accessible_at_point):
554 * libspi/eventlistener.c: (spi_event_listener_new):
556 * libspi/stateset.c: (impl_compare): More of the same
557 * libspi/table.c: (impl_getRowDescription): Again.
558 * registryd/desktop.c: (spi_atk_desktop_get_type): Same
559 * registryd/deviceeventcontroller.c: (spi_clear_error_state),
560 (impl_generate_keyboard_event): Same.
561 * registryd/registry-main.c: (main): Same
562 * test/event-listener-test.c: (test_exit): Same
563 * test/keysynth-demo.c: (scan_state), (create_vkbd): Same
564 * test/keysynth-test.c: (test_key_synthesis): Same
565 * test/login-helper-server-test.c: (main): Fix warning.
566 * test/screen-review-test.c: (test_exit): Fix include.
567 * test/simple-at.c: (simple_at_exit), (_festival_init):
570 2004-09-13 Padraig O'Briain <padraig.vriain@sun.com>
572 * configure.in, NEWS, README: Revved to 1.6.0.
574 2004-09-12 Bill Haneman <bill.haneman@sun.com>
576 * configure.in: Rev and re-dist, since the 1.5.4 tarball
577 was missing the HTML docs.
579 2004-09-12 Tomasz KÅ‚oczko <kloczek@pld.org.pl>
581 * configure.in: only cleanups:
582 - better looking PKG_CHECK_MODULES() output,
584 - declare in one common place required versions of other tools using
587 2004-09-11 J.H.M. Dassen (Ray) <jdassen@debian.org>
589 * configure.in: libspi/accessible.c uses ATK_ROLE_EMBEDDED
590 (unconditionally) which was introduced in ATK 1.7.2. Bumped the
591 required ATK version accordingly.
593 2004-09-03 Bill Haneman <bill.haneman@sun.com>
595 * cspi/bonobo/cspi-bonobo.c:
596 (cspi_display_name): Fix C99ism.
597 * atk-bridge/bridge.c:
598 (spi_display_name): Fix C99ism.
599 Patch from Jens Granseuer, jensgr@gmx.net.
601 2004-09-03 Gora Mohanty <gmohanty@cvs.gnome.org>
603 * configure.in: Added "or" to ALL_LINGUAS.
605 2004-08-20 Bill Haneman <bill.haneman@sun.com>
607 * configure.in, NEWS, README: Revved to 1.5.4.
609 * registryd/registry-main.c:
610 (main): Set the reg_env to use AT_SPI_DISPLAY instead of
613 * cspi/bonobo/cspi-bonobo.c:
614 (cspi_display_name): New convenience method, gets DISPLAY with
615 screen number stripped, if AT_SPI_DISPLAY isn't already set.
616 (cspi_init): Set the activation env value above before getting
619 * atk-bridge/bridge.c:
620 (spi_display_name): Create the AT_SPI_DISPLAY activation
621 environment for an app, based on the DISPLAY environment with the
622 screen number stripped off.
623 (atk_bridge_init): Allow redirection of error messages to a log.
624 (spi_atk_bridge_get_registry): Call
625 bonobo_activation_set_activation_env_value for AT_SPI_DISPLAY.
627 Fixes for bugs #149962, #136986, #144086.
629 2004-08-16 Christian Rose <menthos@menthos.com>
631 * configure.in: Added "bs" to ALL_LINGUAS.
633 2004-08-12 Kjartan Maraas <kmaraas@gnome.org>
635 * configure.in: Added nb to ALL_LINGUAS.
637 2004-09-03 Bill Haneman <bill.haneman@sun.com>
640 (SPI_init): Return error code '2' if the activated
641 registry cannot be pinged. Fixes bug #147648.
643 2004-07-28 Bill Haneman <bill.haneman@sun.com>
645 * registryd/deviceeventcontroller.c:
646 (spi_dec_init_mouse_listener): Don't do XGrabButton,
647 rely on timer-poll instead, to avoid conflict with
650 2004-07-20 Bill Haneman <bill.haneman@sun.com>
652 * configure.in: Revved to 1.5.3.
654 * idl/Accessibility_Role.idl: Added ROLE_EMBEDDED (bug #144415).
656 * libspi/accessible.c: Added support for ROLE_EMBEDDED.
658 * cspi/spi_accessible.c: Support for ROLE_EMBEDDED.
660 * cspi/spi-roletypes.h: Added SPI_ROLE_EMBEDDED.
662 2004-06-11 Bill Haneman <bill.haneman@sun.com>
664 * atk-bridge/bridge.c:
665 (spi_atk_bridge_do_registration):
666 Register with ATK for AtkComponent:bounds-changed events.
667 (api_atk_bridge_signal_listener):
668 Marshal the AtkRectangle info into the event notification
669 for object:bounds-changed events.
672 (spi_init_any_rect): New method, inits a corba struct of
673 type Accessibility_BoundingBox from an AtkRectangle.
675 * libspi/spi-private.h: Declared spi_init_any_rect (above).
678 (SPIRect): New struct definition.
679 (SPI_freeRect): New declaration.
680 (AccessibleBoundsChangedEvent_getNewBounds): New, see below.
683 (AccessibleBoundsChangedEvent_getNewBounds): New method,
684 implemented. Gets the bounding box data from the CORBA_any
685 associated with a bounds-changed event notification.
686 (cspi_internal_event_get_rect): New, used internally by above method.
689 (SPI_freeRect): Implemented this new method, for freeing
692 * test/event-listener-test.c:
693 (main, report_bounds_event):
694 Added a test for object:bounds-changed events.
696 2004-06-01 Bill Haneman <bill.haneman@sun.com>
698 * test/login-helper-server-test.c:
699 (main): Fix C99-ism. Thanks to Jens Granseuer.
701 2004-05-28 Padraig O'Briain <padraig.obriain@sun.com>
703 * libloginhelper-1.0.pc.in:
704 * idl/Accessibility_LoginHelper.idl:
705 * login-helper/Makefile.am:
706 * login-helper/login-helper.[ch]:
707 * test/login-helper-client-test.c:
708 * test/login-helper-server-test.c: Added files missing from CVS.
709 Files obtained from at-spi-1.5.2 tarball.
711 2004-05-27 Bill Haneman <bill.haneman@sun.com>
713 * configure.in: Create login-helper/Makefile.
714 Incremented micro version.
716 * Makefile.am: Add login-helper subdir and pkgconfig data.
718 * login-helper: New subdir.
720 * libloginhelper-1.0.pc.in: New.
722 * idl/Accessibility_LoginHelper.idl: New file, defines
723 interface whereby authentication clients can identify agents which
724 need access to services during the login process, e.g. screen lock
727 * login-helper/Makefile.am : New.
729 * login-helper/login-helper.[ch] : New, implementation of
730 a LoginHelper base class. Services needing LoginHelper can subclass.
732 * test/Makefile.am : Added test for login-helper, client and
735 * test/app.c, at.c, keypad-test.c, keysynth-test.c, stress-test.c:
736 Use proper prefix in #include files.
738 * test/login-helper-client-test.c: New.
740 * test/login-helper-server-test.c: New.
742 2004-05-27 Alexander Shopov <ash@contact.bg>
744 * configure.in (ALL_LINGUAS): Added "bg" (Bulgarian)
746 2004-05-14 Padraig O'Briain <padraig.obriain@sun.com>
748 * cspi/spi_main.c (cspi_object_unref): Add check that reference count
749 is positive. This should make it easier to detect inapprorpiate unref
752 2004-05-11 James Henstridge <james@daa.com.au>
754 * configure.in: remove GNOME_PLATFORM_GNOME_2 macro, which is a
755 no-op and deprecated.
757 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
759 * configure.in: Added "wa" (Walloon) to ALL_LINGUAS.
761 2004-04-28 Bill Haneman <billh@gnome.org>
763 * Makefile.am: Added --enable-gtk-doc to
764 DISTCHECK_CONFIGURE_FLAGS; fixes make distcheck.
766 2004-04-19 Bill Haneman <billh@gnome.org>
768 * configure.in: Revved to 1.5.1.
770 * registryd/deviceeventcontroller.c:
772 (DEControllerPrivateData): Added fields for
773 reserved_keycode, reserved_keysym, and reserved_reset_timeout.
774 (spi_dec_replace_map_keysym): New internal utility for
775 replacing a keysym in the keymap - used to allow
776 synthesis of individual characters which aren't in the
778 (spi_dec_reset_reserved): New; resets the changed keysym value
780 (keycode_for_keysym): We now try to deal with failed
781 XKeysymToKeycode requests by changing a keymap value
782 and returning a reserved keycode. We now take
783 a DEController pointer as first arg.
784 (spi_controller_register_with_devices): Call XkbGetMap with
785 the XkbKeySymsMask. Find the highest keycode in the current
786 keymap which doesn't have any grabs, and mark that one for
787 temporary re-mapping when out-of-range KeySyms are synthesized.
788 (dec_synth_keycode_press): Call XFlush after synthesizing the key
791 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
793 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
795 2004-03-24 Alexander Winston <alexander.winston@comcast.net>
797 * configure.in: Added "en_CA" (Canadian English) to ALL_LINGUAS.
799 2004-03-24 Bill Haneman <billh@gnome.org>
802 (AccessibleTable_addRowSelection),
803 (AccessibleTable_addColumnSelection),
804 (AccessibleTable_removeRowSelection),
805 (AccessibleTable_removeColumnSelection):
806 Add declarations for spi wrappers which were
807 inadvertantly omitted. Fixes bug #133413.
810 Revved to 1.5.0 (unstable series for GNOME 2.7).
812 2004-03-24 Bill Haneman <billh@gnome.org>
814 * atk-bridge/bridge.c:
815 Bracketed some debug output in
816 conditionals, to avoid printing it in normal use.
819 * libspi/hyperlink.c:
820 Don't cast 'object' to ATK_OBJECT when constructing
821 an AtkAction interface for a hyperlink.
822 See discussion in bug #120659.
824 * test/key-listener-test.c:
825 (report_all_key_event): Send output to stderr,
826 not stdout, for consistency with the rest of the test callbacks.
829 Add -lXext to XINPUT_LIBS. Fix for bug #132237.
830 Don't add X_LIBS to CFLAGS (Fix for bug #134332).
831 Incremented to 1.4.1 (but didn't dist yet - I'm going to
832 try incrementing the revision AFTER doing a dist, at least
835 2004-03-22 Bill Haneman <billh@gnome.org>
837 * configure.in: Revved to 1.4.0, libtool 9.14.9
839 2004-03-17 Laszlo Peter <laca@sun.com>
841 * libspi-1.0-uninstalled.pc.in: add idldir
843 * cspi-1.0-uninstalled.pc.in: add idldir
845 2004-03-16 Gareth Owen <gowen72@yahoo.com>
847 * configure.in: Added "en_GB" to ALL_LINGUAS
849 2004-03-15 Bill Haneman <billh@gnome.org>
851 * configure.in: Revved to 1.3.16,
854 2004-03-15 Laszlo Peter <laca@sun.com>
856 * libspi-1.0-uninstalled.pc.in: new file
858 * cspi-1.0-uninstalled.pc.in: new file
860 * configure.in: add the new pc files to AC_OUTPUT
862 * Makefile.am: add the new pc files to EXTRA_DIST
864 2004-03-12 Bill Haneman <billh@gnome.org>
866 * atk-bridge/bridge.c:
867 (spi_atk_bridge_key_listener):
868 Make sure to return consumed=FALSE if snoop
869 event is not dispatched to listener.
872 2004-03-01 Bill Haneman <billh@gnome.org>
874 * configure.in: Revved to 1.3.15,
877 2004-03-07 Danilo Segan <dsegan@gmx.net>
879 * configure.in: Added "sr@ije" to ALL_LINGUAS.
881 2004-03-03 Guntupalli Karunakar <karunakar@freedomink.org>
883 * configure.in: Added "pa" for Punjabi in ALL_LINGUAS.
885 2004-03-01 Bill Haneman <billh@gnome.org>
887 * configure.in: Revved to 1.3.14.
890 (SPI_exit): Removed "bye-bye" exit message.
891 Moved "leak" report to happen before the
892 iteration over the leaked refs list.
893 Don't PRINT_LEAKS unless DEBUG_OBJECTS is also #defined.
895 2004-02-24 Bill Haneman <billh@gnome.org>
897 * configure.in: Revved to 1.3.13.
899 * docs/reference/cspi/Makefile.am:
900 Correct typo that was breaking the docs build.
902 2004-02-11 Padraig O'Briain <padraig.obriain@sun.com>
904 * autogen.sh: Require version 1.7 of automake.
906 * configure.in: call GTK_DOC_CHECK([1.0])
908 * atk-bridge/Makefile.am: Remove use of LDFLAGS and CFLAGS
910 * docs/reference/cspi/Makefile.am: Update to use new gtk-doc.
912 * libspi/Makefile.am: Remove use of LDFLAGS and CFLAGS.
914 * test/Makefile.am: Remove use of CFLAGS.
916 This fixes bug #132987.
918 2004-02-11 Bill Haneman <billh@gnome.org>
920 * reverted most of Tomasz' patch below, since it was breaking
921 builds (see bug #134058).
923 2004-02-10 Tomasz KÅ‚oczko <kloczek@pld.org.pl>
925 * docs/reference/cspi/at-spi-cspi.types: added empty file for
926 correct pass "make dist" (empty .. because seems no sach types in
927 header files with gtk-doc markups).
928 * docs/reference/cspi/Makefile.am, configure.in:
929 Added better gtk-doc support using GTK_DOC_CHECK aclocal macro
930 from gtk-doc >= 1.0 (modyfications based on scheme from atk).
931 * Makefile.am: added:
932 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
933 for force correct pass generate documentation on "make distcheck".
934 * libspi/Makefile.am: fixes for automake >= 1.6.
935 * configure.in: Trivial cleanup: remove AC_SUBST(CFLAGS),
936 AC_SUBST(CPPFLAGS) and AC_SUBST(LDFLAGS). This variables are
939 Sun Feb 8 11:20:50 2004 Matthias Clasen <maclas@gmx.de>
941 * docs/reference/cspi/Makefile.am (install-data-local): Install
942 index.sgml since the doc autobuilder on widget.gnome.org looks for
945 2004-02-02 Padraig O'Briain <padraig.obriain@sun.com>
947 * atk-bridge/bridge.c (spi_atk_tidy_windows): Correct g_free call to
950 2004-02-01 Robert Sedak <robert.sedak@sk.htnet.hr>
952 * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
954 2004-01-27 Brian Cameron <brian.cameron@sun.com>
956 * test/simple-at.c: Fixed null string problems that cause core
957 dumping problems on Solaris.
959 2004-01-12 Bill Haneman <billh@gnome.org>
961 * configure.in: Incremented version to 1.3.11.
963 2004-01-05 Padraig O'Briain <padraig.obriain@sun.com>
965 * docs/reference/cspi/at-spi-cspi-docs.sgml: Added XML in
966 DOCTYPE statement. Fixes bug #129728. Patch supplied by Sebastien
969 2004-01-01 Roozbeh Pournader <roozbeh@sharif.edu>
971 * configure.in: Added "fa" to ALL_LINGUAS.
973 2003-12-20 Arafat Medini <lumina@silverpen.de>
975 * configure.in: Added "ar" to ALL_LINGUAS
977 2003-12-16 Bill Haneman <billh@gnome.org>
979 * registryd/registry-main.c:
981 Set the reg_env DISPLAY variable before registering the
982 activated registry service. Fixes bug #129479.
984 2003-12-16 Mohammad DAMT <mdamt@bisnisweb.com>
986 * configure.in: Added "id" in ALL_LINGUAS
987 * po/id.po: Indonesian translation by Ahmad Riza H Nst <ari@160c.afraid.org>
989 2003-12-15 Padraig O'Briain <padraig.obriain@sun.com>
991 * registryd/deviceeventcontroller.c (global_filter_fn):
992 When an event is consumed discard any XEvents were added to
993 the queue while dealing with the the event. This can happen if
994 processing of the event takes a long time. Call XUngrabKeyboard
995 if an event was discarded. This fixes bug $124837.
996 Only call wait_for_release_event for a KeyPress.
997 Use local variable display instead of spi_get_display().
998 (spi_controller_update_key_grabs): Move call to keycode_for_keysym
1001 2003-12-11 Padraig O'Briain <padraig.obriain@sun.com>
1003 * registryd/deviceeventcontroller.c (spi_dec_translate_mask):
1004 Allow for mask to contain values other than NumLock mask.
1007 2003-12-10 Padraig O'Briain <padraig.obriain@sun.com>
1009 * registryd/devieceventcontroller.c:
1010 (wait_for_release_event): Change first parameter from GdkEvent to
1012 (global_filter_fn); Correct call to wait_for_release_event.
1016 2003-12-08 Bill Haneman <billh@gnome.org>
1020 * registryd/ucs2keysym.c: New file.
1022 * registryd/deviceeventcontroller.c:
1023 (dec_keysym_for_unichar): Remove old partial implementation and
1024 replace with call to ucs2keysym(), which is much more complete.
1025 Thanks to Marcus G. Kuhn who put the original keysym2ucs.c into
1030 2003-12-05 Bill Haneman <billh@gnome.org>
1032 * configure.in: Version 1.3.9.
1034 * docs/reference/cspi/tmpl/spi_registry.sgml:
1035 Added reference to libspi/keymasks.h to the
1036 description of Registry queries: AccessibleKeyMaskType.
1039 2003-12-04 Bill Haneman <billh@gnome.org>
1041 Fix for bug #121974.
1043 * idl/Accessibility_Application.idl:
1044 (Accessibility::LOCALE_TYPE): New enum, corresponds to
1045 setlocale's LC_TYPEs.
1046 (Accessibility::Application::getLocale): New method.
1047 Allows clients to query the locale, by type, of an app.
1050 * cspi/spi_application.c:
1051 (AccessibleApplication_getLocale): New method, wraps IDL above.
1053 * libspi/application.c:
1054 (spi_application_class_init): Init epv entry for getLocale.
1055 (impl_accessibility_application_get_locale): Impl for above.
1057 * test/test-simple.c:
1058 (test_application): Added assertion for getLocale, i.e.
1059 that the string from AccessibleApplication_getLocale (app, type)
1060 is the same as that from setlocale (type, NULL);
1062 2003-12-03 Padraig O'Briain <padraig.obriain@sun.com>
1064 *registryd/deviceeventcontroller.c: Add an idle handler which polls
1065 the keyboard on a timeout intil the key state goes from pressed to
1066 released. Fixes bug #111429.
1068 2003-12-03 Padraig O'Briain <padraig.obriain@sun.com>
1070 * atk-bridge/bridge.c: (atk_bridge_init): Create accessible application
1071 root object so that it is present when a context menu in an
1072 out-of-process applet is popped up.
1073 (spi_atk_bridge_do_registration): Create acceessible application root
1074 object only if it does not exist.
1076 This fixes bug #125834.
1078 2003-12-01 Bill Haneman <billh@gnome.org>
1080 Fix for bug #114926. Thanks to Michael Meeks for some of this patch.
1083 Added enum for AccessibleStreamableContentSeekType.
1084 (AccessibleStreamableContent_freeContentTypeList): New.
1086 * cspi/spi_streamablecontent.c:
1087 (accessible_bonobo_stream_client_seek): New private method.
1088 (AccessibleStreamableContent_seek): Implemented this method,
1089 using Bonobo_Stream_seek.
1090 (AccessibleStreamableContent_freeContentTypeList): New method
1091 for freeing the return value from
1092 AccessibleStreamableContent_getContentTypes.
1093 (stream_cache_item_free): Replaces stream_release; stop leaks.
1094 (stream_release): removed.
1095 (AccessibleStreamableContent_read): Use properly init'd CORBA_evs,
1096 free the memory properly.
1098 2003-12-02 Padraig O'Briain <padraig.obriain@sun.com>
1100 Fix for bug #116009.
1102 * cspi/spi-roletypes.h: Add SPI_ROLE_EDITBAR.
1104 * cspi/spi_accessible.c (cspi_init_role_table): Add SPI_ROLE_EDITBAR.
1106 * docs/reference/cspi/tmpl/spi-accessible.sgml: Add SPI_ROLE_EDITBAR
1108 * idl/Accessibility_Role.idl: Add ROLE_EDITBAR.
1110 2003-12-01 Bill Haneman <billh@gnome.org>
1112 Fix for bug/rfe #127463.
1114 * idl/Accessibility_Accessible.idl:
1115 (getLocalizedRoleName): New.
1116 (unimplemented4): Removed (replaced by above).
1118 * libspi/accessible.c:
1119 (impl_accessibility_accessible_get_local_role_name): New.
1120 (spi_accessible_class_init): Add getLocalizedRoleName entry to
1124 (Accessible_getLocalizedRoleName): New.
1126 * cspi/spi_accessible.c:
1127 (Accessible_getLocalizedRoleName): New.
1129 2003-12-01 Bill Haneman <billh@gnome.org>
1131 Fix for bug #118581.
1132 * idl/Accessibility_Text.idl:
1133 (getDefaultAttributes): New.
1134 (unimplemented4): Removed (replaced by above method).
1137 (impl_getDefaultAttributes): New method.
1138 (spi_text_class_init):
1139 initialize the get_default_attributes slot in the epv.
1142 (AccessibleText_getDefaultAttributes): New prototype.
1145 (AccessibleText_getDefaultAttributes): New method.
1147 2003-11-06 Padraig O'Briain <padraig.obriain@sun.com>
1149 * cspi/spi_accessible.c (cspi_init_relation_type_table): Do not
1150 write beyond the end of the table. Fixes bug #120473.
1152 2003-09-30 Christian Rose <menthos@menthos.com>
1154 * configure.in: Added "eu" to ALL_LINGUAS.
1156 2003-09-28 Kjartan Maraas <kmaraas@gnome.org>
1158 * configure.in: ALL_LINGUAS: Added no.
1160 2003-09-28 Gediminas Paulauskas <menesis@delfi.lt>
1162 * configure.in: Added lt to ALL_LINGUAS.
1164 2003-09-25 Padraig O'Briain <padraig.obriain@sun.com>
1166 * atk-bridge/bridge.c:
1167 (atk_bridge_init): Register event listeners always even for
1168 out-of-process applet.
1169 (spi_atk_bridge_toplevel_added): Remove call to
1170 spi_atk_bridge_event_type_consts as it is now called in atk_bridge_init
1171 (spi_atk_bridge_toplevelk_removed): Remove call to
1172 spi_atk_deregister_event_listenersa as the listeners are now always
1174 (spi_atk_bridge_register_application): Remove call to
1175 spi_atk_register_event_listeners as it is not done in atk_bridge_init
1177 This fixes bug #120991.
1179 * libspi/table.c (impl_getColumnDescription): Correct typo,
1180 pointed out by Bolian.Yin@sun.com.
1182 2003-09-21 Ã
\85smund Skjæveland <aasmunds@fys.uio.no>
1184 * configure.in: Added nn to ALL_LINGUAS (which is commented out).
1186 2003-09-08 Bill Haneman <billh@gnome.org>
1188 * configure.in: Revved to 1.3.7.
1190 This is the GNOME 2.4.0 release of at-spi.
1192 * docs/reference/cspi/Makefile.am:
1193 Removed spurious inclusion of 'index.sgml' in the
1194 html directory; this was breaking make distcheck and
1195 also some other build environments.
1197 2003-09-05 Padraig O'Briain <padraig.obriain@sun.com>
1199 * registryd/registry.[ch}:
1200 Add queue_handler_id and focus_object to SpiRegistry data structure.
1201 (registry_flush_event_queue): If event being discarded is
1202 "state-change:focused" store object as focus_object.
1203 (registry_start_queue): Remove queue handler and focus object
1205 (registry_discard_event): New function which discards a focus event
1206 if we had stored focus object in the registry.
1207 (registry_queue_event): Add new check that is_queueing is set as this
1208 function is reentrant.
1209 (registry_filer_event): Add call to registry_discard_event.
1211 This resolves issues raised in bug #108664.
1213 2003-09-05 Taneem Ahmed <taneem@bengalinux.org>
1215 * configure.in: Added "bn" to ALL_LINGUAS.
1217 2003-09-04 Bill Haneman <billh@gnome.org>
1219 * cspi/spi_event.c: Documentation improvements for
1220 (SPI_registerAccessibleKeylistener).
1222 * docs/reference/tmpl/spi_registry.sgml:
1223 Documentation improvements for SpiAccessibleKeylistenerCB.
1225 2003-09-02 Mugurel Tudor <mugurelu@go.ro>
1227 * configure.in: Added "ro" to ALL_LINGUAS.
1230 2003-09-01 Padraig O'Briain <padraig.obriain@sun.com>
1232 * cspi/spi_main.c (cspi_object_return): Ensure that reference count is
1233 not decremented to zero. Fixes bug #120725.
1235 2003-08-30 KAMAGASAKO Masatoshi <emerald@gnome.gr.jp>
1237 * configure.in: Added "ja" to ALL_LINGUAS.
1239 2003-08-22 Samúel Jón Gunnarsson <sammi@techattack.nu>
1241 * configure.in: Added "is" to ALL_LINGUAS.
1243 2003-08-22 Christian Rose <menthos@menthos.com>
1245 * configure.in: Added "nl" to ALL_LINGUAS.
1247 2003-08-19 Padraig O'Briain <padraig.obriain@sun.com>
1249 * cspi/spi-private.h: Add declaration for _cspi_exceptoin_throw
1250 * cspi/spi_accessible.c (cspi_init_relation_type_table): Add call
1252 * cspi/spi_event.c: (AccessibleEvent_unref); Add casts to gfree
1254 * cspi/spi_main.c (SPI_Exception_getSourceType); Return the correct
1255 type for unspecified exception.
1256 * cspi_streamablecontect): Add include of string.h for memcpy.
1257 (stream_release): Correct call to bonobo_object_release_unref
1258 (stream_cache_item_free): Correct call to bonobo_object_release_unref
1259 * cspi/bonobo/spi-bonobo.c: (cspi_check_event): Add cast to second
1260 argument of _cspi_expection_throw.
1261 * libspi/hyperlink.c: Add include of libspi/action.h:
1262 (spi_hyperlink_new): Cast argument to spi_action_interface_new.
1263 * libspi/streamablecontent.c: add include of libspi/component.h.
1264 * regisrtyd/deviceeventcontroller.c:
1265 (spi_dec_translate_mask): Removed unused variable priv.
1266 (dec_synth_keysym): Initialize lock_mods to avoid compilker warning/
1267 * registryd/registry.c:
1268 (registry_filter_event): Remove unused variable queue_is-empty.
1269 (impl_registry_notify_event): Use correct modifier in fprintf call.
1271 This fixes compiler warnings reported in bug #120220.
1273 2003-08-18 Padraig O'Briain <padraig.obriain@sun.com>
1275 * registryd/registryd.c: Remove this file.
1277 2003-08-17 Sanlig Badral <badral@openmn.org>
1279 * configure.in: Added mn to ALL_LINGUAS.
1281 2003-08-16 Tõivo Leedjärv <toivo@linux.ee>
1283 * configure.in: Added et to ALL_LINGUAS.
1285 2003-08-13 Padraig O'Briain <padraig.obriain@sun.com>
1287 * test/event-listener-test.c: Change active-descendant to
1288 active-descendant-changed.
1290 2003-08-10 Sami Pesonen <sampeson@iki.fi>
1292 * configure.in: Added "fi" in ALL_LINGUAS.
1294 2003-08-08 Guntupalli Karunakar <karunakar@freedomink.org>
1296 * configure.in: Added "hi" in ALL_LINGUAS.
1298 2003-08-08 Padraig O'Briain <padraig.obriain@sun.com>
1300 * configure.in: Revved to 1.3.6.
1304 2003-08-07 Padraig O'Briain <padraig.obriain@sun.com>
1306 * registryd/deviceeventcontroller.c
1307 (spi_device_event_controller_object_finalize): Fix typo in previous
1310 2003-08-07 Marc Mulcahy <marc.mulcahy@sun.com>
1312 * registryd/deviceeventcontroller.c
1313 (spi_device_event_controller_object_finalize): Fix build on
1314 systems without XEvIE.
1316 2003-08-06 Brian Cameron <Brian.Cameron@sun.com>
1318 * acconfig.h, configure.in, registryd/Makefile.am,
1319 registryd/devicecontoller.[ch]: Add XEViE support.
1321 2003-08-06 Wang Jian <lark@linux.net.cn>
1323 * configure.in: Added "zh_CN" to ALL_LINGUAS.
1325 2003-08-06 Metin Amiroff<metin@karegen.com>
1327 * configure.in: Added "az" (Azerbaijani) to ALL_LINGUAS
1329 2003-08-06 Padraig O'Briain <padraig.obriain@sun.com>
1331 * idl/Accessibility_Registry.idl: Put MODIFIER_SHIFTLOCk and
1332 MODIFIER_ALT in correct place.
1334 This fixes part of bug #118114.
1336 2003-07-30 Alessio Frusciante <algol@firenze.linux.it>
1338 * configure.in: Added "it" (Italian) to ALL_LINGUAS.
1340 2003-07-28 Changwoo Ryu <cwryu@debian.org>
1342 * configure.in: Added "ko" to ALL_LINGUAS.
1344 2003-07-28 Ole Laursen <olau@hardworking.dk>
1346 * configure.in: Added "da" to the commented out ALL_LINGUAS.
1348 2003-07-27 Laurent Dhima <laurenti@alblinux.net>
1350 * configure.in: Added "sq" to ALL_LINGUAS.
1352 2003-07-27 Hasbullah Bin Pit <sebol@ikhlas.com>
1354 * configure.in: Added 'ms' (Malay) in ALL_LINGUAS.
1356 2003-07-24 Pablo Saratxaga <pablo@mandrakesoft.com>
1358 * configure.in: updated ALL_LINGUAS list
1360 2003-07-24 Dmitry G. Mastrukov <dmitry@taurussoft.org>
1362 * configure.in: Added Belarusian to ALL_LINGUAS.
1364 2003-07-23 Padraig O'Briain <padraig.obriain@sun.com>
1366 * cspi/spi_event.c (AccessibleEvent_unref): Call CORBA_free for
1368 * cspi/bonobo/cspi-bonobo-listener.c (cspi_event): Call
1369 CORBA_any__alloc to allocate CORBA_Any in InternalEvent.
1371 This fixes bug #116949.
1373 2003-07-22 Padraig O'Briain <padraig.obriain@sun.com>
1375 * cspi/spi_registry.c (SPI_registerAccessibleKeyStrokeListener):
1376 Correct CSPI to SPI in function documentation.
1378 This fixes bug #118054.
1380 2003-07-16 Dmitry G. Mastrukov <dmitry@taurussoft.org>
1382 * configure.in: Added Russian to ALL_LINGUAS.
1384 2003-07-16 Duarte Loreto <happyguy_pt@hotmail.com>
1386 * configure.in: Added Portuguese (pt) to ALL_LINGUAS.
1388 2003-07-14 Danilo Ã…Â Segan <dsegan@gmx.net>
1390 * configure.in: Added "sr" and "sr@Latn" (Serbian) to ALL_LINGUAS.
1392 2003-07-10 Joel Brich <joel.brich@laposte.net>
1394 * configure.in: Added "eo" (Esperanto) to ALL_LINGUAS.
1396 2003-07-07 Pablo Gonzalo del Campo <pablodc@bigfoot.com>
1398 * configure.in (ALL_LINGUAS): Added "es" (Spanish).
1400 2003-07-07 Padraig O'Briain <padraig.obriain@sun.com>
1402 * cspi/spi_event.c (AccessibleEvent_unref): Update code to free
1403 resources allocated for AccessibleEvent. See cspi_event().
1405 * cspi/spi_streamablecontent.c (cspi_streams_close_all): Set
1406 static variable streams to NULL.
1408 * cspi/bonobo/cspi-bonobo-listener.c (cspi_event):
1409 Update so that AcessibleEvent_ref will work.
1411 This fixes bug #116624.
1413 2003-07-06 Jordi Mallach <jordi@sindominio.net>
1415 * configure.in (ALL_LINGUAS): Added "ca" (Catalan).
1417 2003-07-06 Christophe Merlet <redfox@redfoxcenter.org>
1419 * configure.in: Added "fr" (French) to ALL_LINGUAS.
1421 2003-07-02 Christian Neumair <chris@gnome-de.org>
1423 * configure.in: Added "de" (German) to ALL_LINGUAS.
1425 2003-07-01 Dafydd Harries <daf@parnassus.ath.cx>
1427 * configure.in: Added "cy" (Welsh) to ALL_LINGUAS.
1429 2003-07-01 Miloslav Trmac <mitr@volny.cz>
1431 * configure.in: Addded "cs" to ALL_LINGUAS. Why is it commented out?
1433 2003-07-01 Artur Flinta <aflinta@cvs.gnome.org>
1435 * configure.in: Added "pl" to ALL_LINGUAS.
1437 2003-07-01 Gil "Dolfin" Osher <dolfin@rpg.org.il>
1439 * configure.in: Added "he" (Hebrew) to ALL_LINGUAS.
1441 2003-06-30 Bill Haneman <bill.haneman@sun.com>
1444 (get_action_from_servant):
1445 Removed assertion that action is implemented on an AtkObject.
1447 * libspi/hyperlink.c:
1448 (spi_hyperlink_new):
1449 Aggregate AccessibleAction interface on the hyperlink object if
1450 the object implements AtkAction. (This convention is used in
1453 2003-06-30 Bill Haneman <bill.haneman@sun.com>
1455 * configure.in: Revved to 1.3.5.
1457 * registryd/Accessibility_Registry.server.in.in:
1458 Marked up appropriate strings for translation.
1460 * atk-bridge/bridge.c: Marked a couple of
1461 user-visible warnings for translation. Questionable
1462 whether they are really useful, but possibly so.
1465 2003-06-28 Christian Rose <menthos@menthos.com>
1467 * configure.in: Added "sv" to ALL_LINGUAS.
1469 2003-06-26 Bill Haneman <bill.haneman@sun.com>
1471 * registryd/registry.c:
1472 (spi_registry_object_finalize): Unref the deviceeventcontroller.
1473 (registry_defer_on_event): Defer focus: events, this is an
1474 improvement to the patch for bug #108664.
1476 * TODO: Update with 2.4/"Dev Complete" items.
1478 2003-06-26 Padraig O'Briain <padraig.obriain@sun.com>
1480 * atk-bridge/bridge.c:
1481 (spi_atk_bridge_init_event_type_consts): Ensure that this function only
1482 looks up signals once.
1483 (atk_bridge_init): Call spi_atk_bridge_init_event_type_consts only
1484 if doing registration.
1485 (spi_atk_bridge_toplevel_added): Call spi_bridge_init_event_type_consts
1486 when doing registration.
1488 This fixes bug #115014.
1490 2003-06-25 Padraig O'Briain <padraig.obriain@sun.com>
1492 * atk-bridge/bridge.c:
1493 (atk_bridge_init): Add signal handler for children-changed:remove on
1494 root when in a BonoboComponent.
1495 (spi_atk_bridge_toplevel_added): Call spi_atk_bridge_do_registration
1496 for first toplevel only other incrememt variable toplevels.
1497 (spi_atk_bridge_toplevel_removed): For last toplevel deregister
1498 application and remove listeners.
1499 (spi_atk_bridge_get-registry): Change NULL to CORBA_OBJECT_NIL for
1501 (spi_atk_deregister_event_listeners): New function which removes
1503 (reinit_register_vars): New fuction which reinitializes variables.
1505 This fixes bug #111578.
1507 2003-06-13 Bill Haneman <bill.haneman@sun.com>
1509 * configure.in: version 1.3.4.
1511 * cspi/spi_accessible.c:
1512 Changed test of obj==NULL to obj==CORBA_OBJECT_NIL.
1515 2003-06-13 Michael Meeks <michael@ximian.com>
1517 * cspi/bonobo/cspi-bonobo.c (cspi_check_ev): use it.
1519 * cspi/spi_main.c (cspi_peek_ev): impl.
1521 2003-06-11 Padraig O'Briain <padraig.obriain@sun.com>
1523 * cspi/spi-roletypes.h: Add role SPI_ROLE_AUTOCOMPLETE
1525 * cspi/spi_accessible.c (cspi_init_role_table): Add ROLE_AUTOCOMPLETE.
1527 * docs/reference/cspi/tmpl/spi_accessible.sgml: Add role
1528 SPI_ROLE_AUTOCOMPLETE
1530 * idl/Accessibility_Role.idl: Add role ROLE_AUTOCOMPLETE
1532 * libspi_accessible.c(spi_init_role_lookup_table): Add lookup
1533 for ROLE_APPLICATION and ROLE_AUTOCOMPLETE
1535 2003-06-11 Bill Haneman <bill.haneman@sun.com>
1537 * libspi/streamablecontent.h:
1538 * libspi/streamablecontent.c:
1539 New files, provide implementation/wrappers for
1540 Accessibility_StreamableContent.
1542 * cspi/spi_streamablecontent.c:
1543 Connected the C wrappers to the libspi C bindings.
1544 (AccessibleStreamableContent_close): New method.
1547 (AccessibleStreamableContent_close): New method, needed
1548 since we have an "open, [seek], read, close" model in cspi.
1550 2003-06-11 Bill Haneman <bill.haneman@sun.com>
1552 Fix for #108664; Padraig's revision of my original patch.
1554 * registryd/registry.h:
1555 Added event queue list, is_queuing, and exit_notify_timeout
1556 to the registry struct.
1558 * registryd/registry.c:
1559 (registry_init): Initialize new struct from registry.h.
1560 (impl_registry_notify_event):
1561 Filter events before notifying, in case some need to be
1563 (registry_filter_event): New,
1564 we defer certain incoming events (for instance
1565 window:deactivate) because we may wish to hide
1566 or reject them based on pending events. This is
1567 mostly a workaround for bug #108664.
1568 (registry_queue_event, registry_start_queue): New.
1569 (registry_defer_on_event): Test event to see if it
1571 (registry_reset_on_event): Returns TRUE if the
1572 event should cause a queue reset.
1573 (registry_discard_on_event): Returns TRUE if the event
1574 should cause the previous queue contents to be discarded.
1575 (registry_timeout_flush_queue): Flushes the pending event
1576 queue if no reset/discard-triggering events have come in
1577 within the timeout period.
1578 (registry_emit_event): New.
1579 (registry_clone_notify_context): New, used when queueing the
1580 event notify contexts.
1582 2003-06-10 Bill Haneman <bill.haneman@sun.com>
1584 * configure.in: Version revved to 1.3.2, lt 0.9.2
1585 Incremented ATK required version to 1.3.4.
1587 * cspi/spi_registry.c:
1588 (SPI_generateKeyEvent):
1589 We now pass the keystring along if it's non-null.
1591 * registryd/deviceeventcontroller.c:
1592 (keysym_mod_mask): New method, returns modifier mask
1593 required to generate a keysym from a given keycode.
1594 (dec_synth_keysym): New method.
1595 (dec_synth_keystring): New method.
1596 (dec_get_modifier_state): New method.
1597 (dec_lock_modifiers): New
1598 (dec_unlock_modifiers): New.
1599 (dec_keysym_for_unichar): New, rather brute-force
1600 conversion from UCS-4 to X KeySyms. Only works for
1601 Latin at the moment, with partial implementations for
1602 Greek, Hebrew, and (incomplete) Katakana.
1603 (impl_generate_keyboard_event): Now implement
1604 "KEYSTRING" synthesis and implement "KEYSYM"
1606 (keycode_from_keysym): Improved, passes a returned
1607 modmask value now if the corresponding param is non-NULL.
1609 Fixes bugs #92143 and #109776.
1612 * test/keysynth-test.c:
1613 New test program for key synthesis, to confirm fixes for
1617 2003-06-10 Padraig O'Briain <padraig.obriain@sun.com>
1619 * cspi/spi.h: Add relation SPI_RELATION_POPUP_FOR
1621 * cspi/spi_accessible.c (cspi_init_relation_type_table):
1622 Add line for RELATION_POPUP_FOR
1624 * docs/reference/cspi/tmpl/spi_relation.sgml:
1625 Add relation SPI_RELATION_POPUP_FOR
1627 * docs/reference/cspi/tmpl/spi_stateset.sgml:
1628 Change state SPI_STATE_INCONSISTENT to SPI_STATE_INDETERMINATE
1630 * idl/Accessibility_Reloation.idl: Add RELATION_POPUP_FOR.
1632 * libspi/relation.c (spi_init_relation_type_table):
1633 Add line for RELATION_POPUP_FOR
1635 2003-06-10 Padraig O'Briain <padraig.obriain@sun.com>
1637 * cspi/atk-bridge/bridge.c (spi_atk_bridge_exit_func): Check if
1638 there are still windows which have not been deleted and emit
1639 window:deactivate, if necessary and window:destroy events.
1640 This fixes bug #114370. The change on June 5th was not correct.
1642 2003-06-09 Bill Haneman <bill.haneman@sun.com>
1644 * configure.in: Revved to 1.3.3. (lt-version 9:2:9, .so.0.9.2)
1647 (SPI_dupString): Allow dup-ing of a string such that it's safe to
1649 New methods for client exception handling and interception.
1650 (SPI_exceptionHandlerPush): New - push a handler onto the stack.
1651 (SPI_exceptionHandlerPop): You guessed it...
1652 (SPI_getSourceType): Return the type of object which offended.
1653 (SPI_getExceptionCode): Return an enum code telling, possibly,
1654 what sort of thing went wrong, i.e. DISCONNECT (object died), etc.
1655 (SPIAccessibleException_getSource): get the source object for
1656 exceptions that come from Accessibles, if SPIExceptionSourceType is
1657 SPI_EXCEPTION_SOURCE_ACCESSIBLE.
1658 (SPIException_getDescription): New, returns a string description of
1659 the problem. [Not yet a stable ABI, strings are not frozen]
1661 * cspi/spi-private.h:
1662 Added implementation details of opaque SPIException
1666 Implementations of above. Also
1667 (_cspi_exception_throw): new private method that
1668 dispatches exceptions to handlers, called from cspi-bonobo.c
1670 * cspi/bonobo/cspi-bonobo.c:
1671 (cspi_check_ev): call _cspi_exception_throw.
1672 Don't print a warning message if the exception has been
1673 handled by _cspi_exception_throw.
1675 2003-06-05 Padraig O'Briain <padraig.obriain@sun.com>
1677 * cspi/atk-bridge/bridge.c (spi_atk_bridge_exit_func): Check if
1678 there are still windows which have not been deleted and emit
1679 window:deactivate, if necessary and window:destroy events.
1680 This fixes bug #114370.
1682 2003-06-03 Bill Haneman <bill.haneman@sun.com>
1685 (cspi_accessible_is_a): Make non-fatal
1686 if the object reference is dead.
1688 Mon Jun 2 15:35:29 2003 Jonathan Blandford <jrb@redhat.com>
1690 * cspi/spi_main.c: #include <stdio.h>
1691 * test/simple-at.c: ditto
1692 * test/event-listener-test.c: ditto
1693 * test/screen-review-test.c: ditto
1695 2003-05-30 Michael Meeks <michael@ximian.com>
1697 * test/test-simple.c (main): use CORBA_ORB_perform_work
1698 instead of an unnecessary linc_ call.
1700 2003-05-20 Padraig O'Briain <padraig.obriain@sun.com>
1702 * cspi/spi-statetypes.h, cspi/docs/tmpl/spi_stateset.sgml:
1703 Add SPI_STATE_INDETERMINATE.
1705 * cspi/spi_accessible.c (spi_state_to_corba): Add support for
1708 * idl/Accessibility_State.idl: Add support for STATE_INDETERMINATE.
1710 * libspi/stateset.c (init_state_type_tables): Add support for
1713 2003-05-19 Padraig O'Briain <padraig.obriain@sun.com>
1715 * configure: Update versions of atk and gail required.
1716 This fixes bug #113268.
1718 2003-05-02 Bill Haneman <bill.haneman@sun.com>
1720 * configure.in: Revved micro version to 1.3.1 (because of build fix).
1722 2003-05-02 Frederic Crozat <fcrozat@mandrakesoft.com>
1724 * libspi/Makefile.am:
1725 Ensure headers are generated before being used by c sources.
1727 2003-05-01 Bill Haneman <bill.haneman@sun.com>
1730 Simplified lt versioning rules.
1731 Incremented version to 1.3.0, to indicate that we're on the
1732 unstable branch now.
1734 2003-04-29 Padraig O'Briain <padraig.obriain@sun.com>
1736 * docs/reference/cspi/Makefile.am, docs/reference/idl/Makefile.am:
1737 Add MKDB_OPTIONS=--outtput-format=xml
1739 * docs/reference/cspi/at-spi-cspi-docs.sgml
1740 docs/reference/idl/at-spi-idl-docs.sgml:
1741 Convert to Docbook XML.
1743 This fixes bug #111793.
1745 2003-04-25 Padraig O'Briain <padraig.obriain@sun.com>
1747 * cspi/spi-listener.h: Add documentation for AccessibleDeviceEventType,
1748 AcccessibleKeyEventType, AccessibleKeyMaskType.
1750 * cspi/spi-roletypes.h: Update documentation for AccessibleRole.
1752 * cspi/state-types.h: Add documentation for AccessibleState.
1754 * cspi/spi.h: Add documentation for AccessibleTextBoundaryType,
1755 AccessibleTextClipType, AccessibleRelationType, AccessibleCoordType,
1756 AccessibleKeySynthType, AccessibleKeyListenerSyncType,
1757 AccessibleComponentLayer.
1759 * cspi/spi_event.c, cspi/spi_registry.c, cspi/spi_text.c: Fix bugs
1762 * docs/reference/cspi/at-spi-cspi-sections.txt: Add undefined symbols.
1764 * docs/reference/cspi/tmpl/spi_registry.sgml: Add description of
1765 Accessible. Add description of AccessibleEvent,
1766 AccessibleEventListenerCB.
1768 * docs/reference/cspi/tmpl/spi_event.sgml: Update with extra
1771 * docs/reference/cspi/tmpl/spi_registry.sgml: Update with extra
1772 documentation. Add description of AccessibleKeystrokeListenerCB,
1773 AccessibleKeyEventMask, AccessibleModifierMaskType,
1774 AccessibleKeyMaskType, AccessibleKeystroke, AccessibleDeviceEvent,
1775 AccessibleDeviceEventMask, AccessibleDeviceListenerCB.
1777 * docs/reference/cspi/tmpl/spi_stateset.sgml: Add description of
1780 * docs/reference/cspi/tmpl/spi_text.sgml: Update with extra
1783 This fixes bug #104730.
1785 2003-04-24 Padraig O'Briain <padraig.obriain@sun.com>
1787 * atk-bridge/bridge.c (spi_init_keystroke_from_atk_key_event):
1788 Set is_text field of Accessibility_DeviceEvent data structure.
1790 * cspi/bonobo/cspi-bonobo-listener.c (cspi_device_event): Set
1791 is-text field of AccessibleDeviceEvent data structure.
1793 This addresses part of bug #108666.
1795 * registryd/devcieeventcontroller.c: Unset debug option.
1797 2003-04-14 Padraig O'Briain <padraig.obriain@sun.com>
1799 * cspi/accessible.c:
1800 (cpi_initial_relation_type_table): New function which initializes
1801 mapping between Accessibility_RelationType and AccessibleRelationType.
1802 (cspi_relation_type_from_spi_relation_type): New function which
1803 translates an Accessibility_RelationType into an AccessibleRelationType.
1804 (AccessibleRelation_getRelationType): Use
1805 cpi_relation_type_get_spi_relation_type to return correct value.
1806 (spi_state_to_corba): Return correct type for default case.
1808 * cspi/spi_registry.c (SPI_registerAccessibleKeyStrokeListener):
1809 Use Accessibility_EventType instead of Accessibility_KeyEventType.
1811 * cspi/cspi-bonobo-listener.c:
1812 Remove semicolon after BONOBO_TYPE_FUNC. Add casts to avoid compiler
1815 * libspi/accessible.c, libspi/action.c, libspi/application.c,
1816 libspi/base.c, libspi/component.c, libspi.devicelistener.c,
1817 libspi/editabletable.c, libspi/hyperlink.c, libspi/hypertext.c,
1818 libspi/image.c, libspi/listener.c, libspi/selection.c,
1819 libspi/stateset.c, libspi/table, libspi/text.c, libspi/value.c,
1820 registryd/desktop.c, registryd/registry.c:
1821 Remove semicolon after BONOBO_TYPE_FUNC_FULL.
1823 * libspi/eventlistener.c
1824 Remove semicolon after BONOBO_TYPE_FUNC.
1826 * libspi/relation.c:
1827 Remove semicolon after BONOBO_TYPE_FUNC_FULL.
1828 (spi_init_relation_type_table): Initialize using correct type.
1830 * registryd/desktop.c:
1831 Remove semicolon after BONOBO_TYPE_FUNC_FULL.
1832 (spi_keystroke_from_x_key_event): Use Accessibility_EventType instead
1833 of Accessibility_KeyEventType.
1835 * test/key-listener-test.c (report_tab_key_event): Use fprintf
1838 * tests/simple-at.c, tests/screen-review-test.c:
1839 Add include for <strings.h>.
1841 * tests.stress-test.c:
1842 Add includes for <unistd.h> and <bonobo/bonobo-main.h>
1844 These changes fix compiler warnings when using FORTE compiler on
1845 Solaris; fixes bug #107479.
1848 2003-04-10 Bill Haneman <bill.haneman@sun.com>
1851 * configure.in: revved to 1.1.10
1853 * libspi/keymasks.h:
1854 (SPI_KEYMASK_NUMLOCK): Added.
1856 * registryd/deviceeventcontroller.c:
1857 (spi_key_event_matches_listener): AND with a smaller
1858 bitmask (as we should).
1859 (spi_dec_translate_mask):
1860 New method, sets the virtual NumLock modifier bit
1861 if numlock is on. Eventually it can handle other virtual
1862 modifier bits if needed, or other marshalling from
1863 at-spi modifier masks to platform (X) masks.
1864 (spi_dec_key_listener_new):
1865 Call spi_dec_translate_mask to set up virtual mod bits
1866 in the 'mask' field when creating a new listener struct.
1867 (spi_dec_emit_modifier_event):
1868 Set the virtual (i.e. NumLock) bits before emitting event.
1869 (spi_controller_register_with_devices):
1870 Query for the NumLock modifier 'physical' bit if Xkb is
1871 present, for use in above methods.
1875 2003-04-10 Bill Haneman <bill.haneman@sun.com>
1877 * registryd/deviceeventcontroller.c:
1878 (spi_keystroke_from_x_key_event):
1879 Instead of checking to see if the keysym is
1880 printable, check the string from XLookupString
1881 if available, get the first unicode character from it,
1882 and call g_unichar_isprint to determine whether the
1883 is_text flag should be TRUE or FALSE.
1887 2003-04-02 Padraig O'Briain <padraig.obriain@sun.com>
1889 * atk-bridge/bridge.c: Add support for extended events
1890 * cspi/spi_event.c: Add documentation and implementation for
1892 * tests/event-listener-test.c: Add tests for extended events.
1894 This fixes bugs #100424 and #100426.
1896 2003-04-02 Padraig O'Briain <padraig.obriain@sun.com>
1898 * configure.in: Add 100 to AT_SPI_BINARY_AGE and update calculation
1899 of LT_CURRENT. This fixes bug #89350.
1901 2003-04-01 Padraig O'Briain <padraig.obriain@sun.com>
1903 * atk-bridge/bridge.c (spi_bridge_signal_listener): Add check for
1904 number of signal parameter values before accessing them. This fixes
1907 2003-04-01 Bill Haneman <bill.haneman@sun.com>
1909 * configure.in: Fixed duplicate inclusion of -lspi.
1910 * branched for gnome-2-2/HEAD.
1911 [created tag "gnome-2-2"]
1913 2003-03-07 Bill Haneman <bill.haneman@sun.com>
1915 * configure.in: 1.1.9 release.
1918 2003-03-07 Bill Haneman <bill.haneman@sun.com>
1920 [needed by GOK, to fix bugs 107985 and 107988]
1921 * registryd/deviceeventcontroller.c:
1922 (spi_dec_clear_unlatch_pending):
1923 New method, unsets the 'unlatch' mask for XkbStateNotifyEvents.
1924 (spi_dec_set_unlatch_pending):Revised DEBUG comment.
1925 (spi_dec_init_mouse_listener):Emit warning if mouse button
1927 (spi_device_event_controller_forward_mouse_event):
1928 Removed unnecessary parens from a conditional.
1929 (global_filter_fn):Added TODO comment.
1930 (impl_generate_keyboard_event):
1931 Cancel a pending relatch if a 'delatching' key was
1934 2003-03-07 Padraig O'Briain <padraig.obriain@sun.com>
1936 * atk-bridge/bridge.c:
1937 Change atk_signal_child_changed to atk_signal_children_changed.
1938 Reorganize code in spi_atk_bridge_signal_listener().
1940 * test/event-listener-test.c:
1941 Add children_changed_listener and report_children_changed_event()
1942 to test AccessibleChildEvent_getChildAccessible.
1944 2003-03-05 Padraig O'Briain <padraig.obriain@sun.com>
1946 * cspi/spi_event.c (cspi_internal_event_get_text): Change
1947 g_strdup to CORBA_String_dup (bug #105291)
1949 * test/event-listener-test.c (report_text_event): Add call to
1952 2003-02-28 Bill Haneman <bill.haneman@sun.com>
1954 * registryd/deviceeventcontroller.c:
1955 (spi_keystroke_from_x_key_event):
1956 Fix string and keysym return codes to match modifier state.
1959 2003-02-28 Bill Haneman <bill.haneman@sun.com>
1961 * registryd/deviceeventcontroller.c:
1962 (spi_keystroke_from_x_key_event):
1963 Fix segv due to improper use of isprint(c). [bug #107254]
1965 2003-02-24 Bill Haneman <bill.haneman@sun.com>
1968 (get_accessible_text_boundary_type):
1969 Move default return value to (new) default case in switch.
1970 (get_accessible_text_clip_type):
1971 Move default return value to (new) default case in switch.
1973 * libspi/application.c:
1974 (lookup_toolkit_event_for_name, reverse_lookup_name_for_toolkit_event):
1975 Remove unused methods.
1976 (impl_accessibility_application_register_object_event_listener):
1977 Remove unused methods.
1980 Added #include of <math.h>.
1982 * registryd/deviceeventcontroller.c:
1983 (spi_dec_ungrab_mouse): Bracketed with #ifdefs, since
1984 we don't currently use this method.
1985 (spi_dec_init_mouse_listener): Don't call XkbGetMap unless
1987 (impl_generate_key_event):
1988 Remove unused variables.
1989 (impl_generate_mouse_event):
1990 Initialize button to zero, just in case we get an invalid
1991 input. Added support for mouse buttons 4 and 5.
1992 (spi_device_event_controller_new):
1993 Removed unused variable declaration for 'private'.
1995 Added #include of <gdk/gdk.h>
1997 2003-02-14 Padraig O'Briain <padraig.obriain@sun.com>
1999 * configure.in: Update to work when X is not installed in expected
2000 location. Fixes bug #105836.
2002 * atk-bridge/bridge.c
2003 (spi_atk_bridge_init_event_type_consts): Look up "link-selected" for
2005 (spi_atk_register_event_listener): Add signal listener for
2007 (spi_atk_bridge_signal_listener): Event event when link-selected
2008 signal is emitted. (bug #104622)
2010 * cspi/spi_event.c (cspi_internal_event_get_text): Call g_strdup()
2011 on returned string. (bug #105291)
2013 * test/event-listener-test.c: Add test for link-selected.
2015 2003-02-14 Padraig O'Briain <padraig.obriain@sun.com>
2017 * atk-bridge/Makefile.am: Correct typo in previous commit.
2019 2003-02-13 Padraig O'Briain <padraig.obriain@sun.com>
2021 * atk-bridge/Makefile.am: Allow for build directory to be different
2022 from source directory
2024 * registryd/Makefile.am: Allow for build directory to be different
2025 from source directory
2029 2003-01-29 Bill Haneman <bill.haneman@sun.com>
2032 Fixed dependencies for libcspi so that libspi gets pulled in
2033 properly. Fixes 104741.
2037 Clean up inline docs a little.
2039 2003-01-27 Padraig O'Briain <padraig.obriain@sun.com>
2041 * registryd/desktop.c: Implement AccessibleComponent for SpiDesktop.
2042 This is done by implementing AtkComponent for SpiAtkDesktop, which is
2043 the AtkObject within an SpiDesktop.
2044 This addresses bug #101524.
2046 * registryd/deviceeventcontroller.c (spi_device_event_controller_init):
2047 Remove call to gdk_init().
2049 * registryd/registry.c (spi_registry_init): Add call to gdk_init()
2050 so that Display is set when SpiDesktop is created.
2052 2003-01-21 Padraig O'Briain <padraig.obriain@sun.com>
2054 * registryd/deviceeventcontroller.c: Add include of <sys/time.h>
2055 This fixes bug #102830.
2057 2003-01-15 Padraig O'Briain <padraig.obriain@sun.com>
2059 * test/test-simple.c: Update to take account of fact that GailButton
2060 now implements AtkText.
2061 (create_text_window): Set name on AtkObject for GtkEntry.
2062 (validate_accessible): Check accessible name before calling test_text().
2064 * libspi/Makefile.am: Fix problem with building outside of source
2065 directory. Bug #98120.
2067 * cpsi/spi_table.c (AccessibleTable_getNSelectedColumns): Fix
2068 typo in documentation comments. Bug #94275.
2070 2003-01-15 Padraig O'Briain <padraig.obriain@sun.com>
2072 * libspi/text.c (impl_getBoundedRanges): Bug fix.
2074 2003-01-10 Padraig O'Briain <padraig.obriain@sun.com>
2077 Add includes to avoid compiler warnings on Solaris.
2078 (impl_getRangeExtents): Bug fix.
2080 2002-12-17 Bill Haneman <bill.haneman@sun.com>
2082 Fix for 100944, [API addition approved by Gman and murrayc].
2089 * idl/Accessibility_Text.idl:
2090 (Text::Range, Text::RangeList, TEXT_CLIP_TYPE): New typedefs
2091 (Text::getRangeExtents): New method for efficient
2092 bounds query of a text range.
2093 (Text::getBoundedRanges): New method for efficient
2094 clipping of text to bounding boxes.
2095 (unImplemented7, unImplemented8):
2096 Removed these padding methods to preserve bincompat.
2099 (impl_getRangeExtents): implementation of new IDL.
2100 (impl_getBoundedRanges): implementation of new IDL.
2101 (SpiTextRect): Internal use struct.
2102 (_spi_text_rect_union): internal method, calculates union of two
2103 SpiTextRect bounding rects.
2104 (_spi_text_range_seq_from_gslist): internal method, allows us
2105 to build our sequence efficiently as a gslist then convert it
2107 (_spi_bounds_contain): internal method, determines whether
2108 a text character is "in" or "out" of a clip rect according to
2109 values of TEXT_CLIP_TYPE.
2110 (spi_text_class_init): Initialize the new methods in the epv.
2113 (AccessibleTextClipType): New enum used by screen review api.
2114 (AccessibleTextRange): New struct used by screen review api.
2115 (AccessibleText_getRangeExtents):
2116 cspi binding for Accessibility_Text_getRangeExtents.
2117 (AccessibleText_getBoundedRanges):
2118 cspi binding for Accessibility_Text_getBoundedRanges.
2119 (AccessibleTextRange_freeRanges): convenience method.
2122 (AccessibleText_getRangeExtents):
2123 cspi binding for Accessibility_Text_getRangeExtents.
2124 (AccessibleText_getBoundedRanges):
2125 cspi binding for Accessibility_Text_getBoundedRanges.
2126 (AccessibleTextRange_freeRanges): convenience method.
2127 (get_accessible_text_clip_type): internal conversion method.
2128 (get_accessible_text_ranges_from_range_seq): internal conversion method.
2130 * registryd/deviceeventcontroller.c:
2131 (spi_dec_mouse_check):
2132 Improved behavior for mouse:abs events
2133 [same granularity as mouse:rel events, and no
2134 events when mouse is idle].
2136 2002-12-16 Michael Meeks <michael@ximian.com>
2138 * cspi/spi_accessible.c (spi_state_to_corba): rename.
2140 * libspi/stateset.c (state_spi_to_atk): split out
2141 ( fix several remote array bounds nasties )
2142 (spi_atk_state_set_from_sequence, impl_contains, impl_add),
2143 (impl_remove): make safe from array bounds issues.
2144 (spi_atk_state_from_spi_state): impl.
2146 * libspi/stateset.h (spi_state_set_cache_is_empty):
2147 add a set of wrapper defines to get layering right.
2149 * cspi/spi_accessible.c: update state set stuff to
2152 2002-12-14 Michael Meeks <michael@ximian.com>
2154 * atk-bridge/bridge.c (spi_atk_bridget_get_dec): impl.
2155 to avoid 2 roundtrips to the registry per key event
2156 (spi_atk_bridge_key_listener): upd.
2157 (deregister_application): release the dec.
2159 * registryd/registry.c (notify_listeners_cb):
2160 bin lots of re-enterant complexity - we no longer
2161 do a round-trip bonobo ref here, ensure that a single
2162 listener's exception failure won't poison all other
2164 (impl_registry_notify_event): bin obvious memory leak.
2166 2002-12-13 Michael Meeks <michael@ximian.com>
2168 * atk-bridge/bridge.c (spi_atk_bridge_focus_tracker):
2169 init the ev so the error is meaningful.
2170 (spi_atk_bridge_key_listener): ditto.
2172 * cspi/spi_main.c (cspi_ev): init the ev so we start
2173 with a clean slate, otherwise the first exception
2174 kills us completely.
2176 * cspi/spi_text.c (get_accessible_text_boundary_type):
2177 add a fallthrough for no warnings.
2179 * cspi/spi_registry.c: prune unused warnings.
2181 * cspi/spi_main.c (cspi_object_take): fix
2182 mind-blowing brokenness ( by watching the compile
2185 * cspi/spi_accessible.c (Accessible_getStateSet):
2186 re-impl. to use an AtkStateSet.
2187 (spi_state_type_from_accessible_state),
2188 (init_state_table): bin these.
2190 * libspi/stateset.c (spi_atk_state_set_from_sequence):
2192 (atk_state_set_from_accessibility_state_set): here.
2194 * cspi/spi_accessible.c (spi_state_to_atk): impl.
2195 (AccessibleStateSet_contains, AccessibleStateSet_ref),
2196 (AccessibleStateSet_unref, AccessibleStateSet_contains),
2197 (AccessibleStateSet_add, AccessibleStateSet_remove),
2198 (AccessibleStateSet_equals, AccessibleStateSet_compare),
2199 (AccessibleStateSet_isEmpty): re-write to use a local
2202 2002-12-13 Bill Haneman <bill.haneman@sun.com>
2204 * configure.in: Revved to 1.1.7 (new keymask vals).
2206 2002-12-10 Bill Haneman <bill.haneman@sun.com>
2208 * libspi/keymasks.h:
2209 Added SPI_KEYMASK_MOD4 and SPI_KEYMASK_MOD5.
2211 2002-12-10 Padraig O'Briain <padraig.obriain@sun.com>
2214 (cspi_internal_event_get_object): Use CORBA_TypeCode_Equivalent()
2215 to compare two CORBA_TypeCodes.
2216 (cspi_internal_event_add): Silence warning from FORTE compiler.
2218 * cspi/bonobo/cspi_bonobo-listener.h: Add function declarations to
2219 avoid implicit declaration of functions.
2221 2002-12-09 Padraig O'Briain <padraig.obriain@sun.com>
2223 * atk-bridge/bridge.c:
2224 (spi_atk_bridge_init_event_type_consts): Store signal id for
2225 active-descendant-changed signal.
2226 (spi_atk_register_event_listeners): Add signal listener for
2227 active-descendant-changed signal,
2228 (spi_atk_bridge_signal_listener): Move code in function
2229 spi_atk-signal_emit_event() into this function.
2230 Add support for active-descendant-changed
2231 Update support for child-changed signal.
2232 (spi_bridge_window_event_listener): Silence warning.
2234 * libspi/spi_private.[ch]:
2235 (spi_init_any_object): Change second parameter from CORBA_Object to
2237 Omit call to CORBA_Object_duplicate().
2238 Set CORBA_any's _value to CORBA_Object*.
2240 2002-12-06 Bill Haneman <bill.haneman@sun.com>
2246 (AccessibleEvent_ref, AccessibleEvent_unref):
2247 New methods, for persisting an event outside the emission context.
2248 Must be used if the new accessor methods are to be called
2249 outside of the event listener's callback.
2251 * cspi/bonobo/cspi-bonobo.c:
2252 (cspi_dup_ref): Pass 'ev' to bonobo_object_dup_ref
2253 as second parameter instead of NULL, so we can call
2254 cspi_check_ev afterwards.
2257 (cspi_object_take): New internal method,
2258 converts a CORBA_Object reference to a hard ref on
2259 an Accessible if possible, returning NULL if the object
2260 reference is invalid or an Accessible * otherwise.
2263 (AccessibleEvent_ref):
2264 Increment the event's internal private refcount, and
2265 add the event's internal struct to an internal cache
2266 if it's not already there.
2267 (AccessibleEvent_unref):
2268 Decrement the event's refcount and remove it from
2269 the cspi event cache if refcount==0.
2270 (cspi_event_compare): New private method.
2271 Compares two event structs via their ids. Used
2273 (cspi_internal_event_lookup): New private method.
2274 (cspi_internal_event_check): New private method,
2275 a 0-order sanity check for events to make sure their
2276 private data is intact.
2277 (cspi_internal_event_add, cspi_internal_event_remove):
2278 New private methods for managiing the event cache.
2280 * cspi/bonobo/cspi-bonobo-listener.c:
2282 Initialize the new private data elements (id, magic, ref_count).
2284 * atk-bridge/bridge.c:
2285 (spi_atk_bridge_signal_listener):
2286 Fixed bug #100530, passing wrong params to emission func.
2288 * registryd/deviceeventcontroller.c:
2289 (spi_dec_button_update_and_emit):
2290 Fixed type in mask bit operations; fix for #99799.
2292 2002-12-02 Bill Haneman <bill.haneman@sun.com>
2294 Removed some of the more dangerous workarounds from
2295 previous commit; they are only needed by GOK, which
2296 in reality should be using another method to accomplish
2297 the goals. So on reconsideration some of the workarounds
2298 need to be reverted:
2300 * registryd/deviceeventcontroller.c:
2301 (spi_keycodes_contain, spi_dec_init_keycode_list):
2302 Removed these methods, used only by a nasty hack to try
2303 and detect whether a key synthesis should be allowed
2304 to reset the XKB latch state or not. This code was only
2305 required to work around an interaction between GOK,
2306 button events, and XKB.
2307 (impl_generate_key_event):
2308 Removed hack at end of key generation that tried to
2309 "do the right thing" if XKB latch keys were generated
2310 in the midst of button press/release pairs.
2313 Added a check for HAVE_XINPUT. Not normally used yet.
2315 2002-11-25 Bill Haneman <bill.haneman@sun.com>
2317 Workarounds and fixes for mouse event/XKB interaction.
2319 * registryd/deviceeventcontroller.c:
2320 (spi_keycodes_contain, spi_dec_init_keycode_list):
2321 New internal methods.
2322 (spi_dec_set_unlatch_pending):
2323 Split the method that tells XKB to expect an
2324 unlatch (and revert it) out of the rest of the
2325 event handling code. This method is called by the
2326 two mouse event handlers (the poll and the filter).
2327 (spi_dec_update_and_emit, spi_dec_mouse_check):
2328 New methods split from spi_dec_poll_mouse_moved.
2329 The second one is now called from inside the filterFn
2330 when an XKB delatch event is received, to determine
2331 whether to revert the delatch or not.
2332 (spi_poll_mouse_moved): Refactor; also we can now
2333 properly handle the case where multiple button states
2334 have changed between polling cycles and we didn't get
2335 notified due to another client's grab.
2337 Synchronize the server while handling an XKB notification.
2338 Ugly, but apparently necessary to avoid nasty races.
2339 Check the mouse state on receipt of an XKB latch change,
2340 to decide whether to revert the latch or not. (Latches are
2341 reverted if there is an immediately preceding mouse button
2342 event that a client has consumed, in which case we don't want
2343 the user to see the side-effect of the event).
2344 (spi_device_event_controller_forward_mouse_event):
2345 Check for modifier events and fire before resetting mouse_mask_state,
2346 prevents losing modifier events.
2348 (impl_generate_keyboard_event):
2349 If we've just generated a keyboard event for a non-shift key,
2350 we don't want to revert the pending XKB latch.
2351 Otherwise, check the modifier state (via a call to
2352 spi_dev_mouse_check) and set the relatch mask to
2353 that state before returning.
2355 2002-11-24 Bill Haneman <bill.haneman@sun.com>
2358 Updated NEWS (accidentally didn't make it into 1.1.5 tarball,
2361 * atk-bridge/bridge.c:
2362 (spi_atk_register_event_listeners):
2363 Don't re-register for ATK events if the registry has died
2364 and the app needs to re-register; the ATK listeners are in
2365 process and doing so will cause duplicate emission.
2367 * registryd/deviceeventcontroller.c:
2368 (spi_poll_mouse_moved):
2369 Reformat the source, detect and emit multiple button-change
2370 events (i.e. if multiple buttons have changed between poll
2372 Add code to detect mouse-down events even when the pointer
2373 is grabbed; workaround for GOK bug 98420.
2374 (spi_controller_register_with_devices):
2375 Call XTestGrabControl with 'impervious' flag set to True,
2376 allows us to synthesize events and query the pointer even during
2377 an active grab by another client.
2378 (spi_device_event_controller_forward_mouse_event):
2379 Set the mouse_mask_state to the mouse_button_state from
2380 the intercepted event, to synchronize the grab listener with
2383 2002-11-20 Bill Haneman <bill.haneman@sun.com>
2385 * cspi/spi_accessible.c:
2386 (AccessibleRole_getName):
2387 Added necessary strings for making this (deprecated)
2388 method work with the new role types.
2389 (init_role_table, role_table):
2390 Added definition of SPI_ROLE_APPLICATION.
2392 * libspi/spi-roletypes.h:
2393 Added SPI_ROLE_APPLICATION.
2395 * idl/Accessibility_Role.idl:
2396 Added ROLE_APPLICATION.
2398 * docs/reference/cspi/at-spi-cspi-decl.txt:
2399 Added SPI_ROLE_APPLICATION to docs.
2401 2002-11-20 Padraig O'Briain <padraig.obriain@sun.com>
2403 * cspi/spi_accessible.c
2404 (cspi_init_role_table): Do not write beyond end of role_table.
2405 (Accessible_getRole): Use correct type for value returned by
2406 Accessibility_Accessible_getRole().
2408 * libspi/accessible.c (spi_init_role_lookup_table): Do not write
2409 beyond end of role_table. (This fixes bug #98269)
2411 * libspi/application.c: Add include file spi-private.h for
2412 definition of spi_init_any_nil.
2414 2002-11-19 Bill Haneman <bill.haneman@sun.com>
2418 * libspi/spi-private.h:
2419 Added DGB() macro, and extern int _dbg declaration.
2421 * registryd/registry.c:
2422 (definitions) storage for _dbg.
2423 (spi_registry_init):
2424 Get environment variable "AT_SPI_DEBUG".
2425 (spi_registry_set_debug):
2426 New method, to initialize _dbg value.
2427 (spi_listener_struct_new, spi_registry_object_finalize):
2428 (notify_listeners_cb):
2429 Changed fprintfs to use DBG and g_warning().
2431 * registryd/deviceeventcontroller.c:
2432 (_deregister_keygrab, spi_controller_register_device_listener):
2433 Changed debug/warning messages to use DBG macro.
2435 * libspi/listener.c:
2436 (impl_notify_event):
2437 Changed warning messages to use DBG macro and g_warning().
2439 * atk-bridge/bridge.c:
2440 (atk_bridge_init, spi_atk_bridge_get_registry):
2441 (spi_atk_bridge_exit_func):
2442 (spi_atk_bridge_property_event_listener):
2443 Changed status, warning, and error messages to use
2444 g_warning, g_message, and DBG macros.
2447 Read the state of the AT_SPI_DEBUG environment variable
2448 and set a local '_dbg' accordingly.
2450 2002-11-19 Bill Haneman <bill.haneman@sun.com>
2452 FIXES for 98836, 98842, other bugs.
2455 Revved to 1.1.4, interface-age=4, binary-age=4.
2457 * registryd/deviceeventcontroller.c:
2459 Fixed crasher bug in last_mouse_pos initialization.
2461 * registryd/registry.c:
2462 (desktop_add_application, desktop_remove_application):
2463 Added (and then commented out) some support for
2464 object context marshalling. [TODO]
2466 * atk-bridge/bridge.c:
2467 (spi_atk_bridge_event_context_create):
2468 Commented out object context creation until it can
2469 be properly tested and debugged.
2471 * registryd/registry.c:
2472 (impl_registry_notify_event):
2473 Fixed crasher bug, we were calling
2474 spi_re_entrant_list_foreach () with an empty list.
2476 2002-11-18 Bill Haneman <bill.haneman@sun.com>
2478 * idl/Accessibility_Action.idl:
2479 * idl/Accessibility_Component.idl:
2480 * idl/Accessibility_Desktop.idl:
2481 * idl/Accessibility_Event.idl:
2482 * idl/Accessibility_Hyperlink.idl:
2483 * idl/Accessibility_Image.idl:
2484 * idl/Accessibility_Relation.idl:
2485 * idl/Accessibility_Selection.idl:
2486 * idl/Accessibility_State.idl:
2487 * idl/Accessibility_Value.idl:
2488 Updated unimplemented slot count to minimum of
2489 four for all interfaces, for ABI freeze.
2491 * idl/Accessibility_EditableText.idl:
2492 * idl/Accessibility_Text.idl:
2493 Updated unimplemented slot count to six
2496 * idl/Accessibility_Registry.idl:
2497 Updated unimplemented slot count to six
2498 (also for DeviceEventController),
2501 * idl/Accessibility_Table.idl:
2502 Updated unimplemented slot count to eight,
2505 * idl/Accessibility_Event.idl:
2506 Added CORBA_any "any_data" member to Event struct.
2508 * idl/Accessibility_Event.idl:
2509 Added CORBA_any "any_data" member to Event struct.
2511 * atk-bridge/bridge.c:
2513 atk_signal_text_changed, atk_signal_child_changed,
2514 signal ids queried from gtype system.
2515 (AtkBridgeEventContextType): New enum.
2516 (AtkBridgeEventContextData): New struct.
2517 (AtkBridgeEventContext): New struct.
2518 (atk_bridge_init_event_type_consts):
2519 New method, initializes type contants for comparison
2520 prior to emit_eventv.
2521 (atk_bridge_event_context_init): New method,
2522 initializes a CORBA_any from an AtkBridgeEventContext.
2523 (atk_bridge_focus_tracker): Call spi_init_any_nil to
2524 initialize the event.any_data struct.
2525 (spi_atk_bridge_event_context_create): New method,
2526 creates an AtkBridgeEventContext from signal/event info.
2527 (spi_atk_bridge_event_context_free): New method.
2528 (spi_atk_emit_eventv): Changed to take an
2529 AtkBridgeEventContext parameter. We now initialize
2530 the event.any_data member prior to notifying the
2531 Registry, via the AtkBridgeEventContext.
2532 (spi_atk_bridge_property_event_listener):
2533 (spi_atk_bridge_state_event_listener):
2534 Match emit_eventv signature.
2535 (spi_atk_bridge_object_event_listener):
2536 Match emit_eventv signature, and create an
2537 event context from the event details.
2538 Free the event context afterwards.
2539 (spi_atk_bridge_window_event_listener):
2540 Create an event context, pass it to the
2544 (AccessibleEvent_getContextString):
2545 (AccessibleEvent_getContextObject):
2546 New methods, allow query of AccessibleEvent objects
2547 for more context details (via the "any_data" member
2548 of the Event struct, above).
2551 Definitions for AccessibleEvent_getContextString
2552 and AccessibleEvent_getContextObject.
2554 * cspi/spi_listener.h:
2555 (InternalEvent): New struct.
2558 (AccessibleEvent_getContextString):
2559 (AccessibleEvent_getContextObject):
2560 Implementations of new methods, for obtaining
2561 additional context information from some event types.
2563 * cspi/spi_registry.c:
2564 (SPI_registerGlobalEventListener):
2565 Added mention of active-descendant-changed event in docs.
2567 * cspi/cspi-bonobo-listener.c:
2569 Marshal the any into the AccessibleEvent via
2572 * libspi/spi-private.h:
2573 #include <orbit/orbit.h>
2575 (spi_init_any_string):
2576 (spi_init_any_object):
2577 New convenience function declarations.
2581 (spi_init_any_string):
2582 (spi_init_any_object):
2583 New convenience function implementations.
2585 * registryd/deviceeventcontroller.c:
2586 (spi_poll_dec_mouse_moved):
2587 (spi_device_event_controller_forward_mous_event):
2588 Initialize any_data member of event.
2589 (spi_deregister_controller_device_listener):
2590 Fix incorrect param pass which was preventing deregistration.
2592 * registryd/registry.c:
2593 (desktop_add_application):
2594 (desktop_remove_application):
2595 Add object data to event's any_data before dispatch.
2597 Fix for error messages from GAIL.
2599 * test/event-listener-test.c:
2600 Test new ContextString and "any_data" API:
2601 (report_text_event): New method query and output context string.
2602 (main): register a new text listener with report_text_event
2605 2002-11-19 Darren Kenny <darren.kenny@sun.com>
2607 Fixes for bugs 98127 and 97914.
2608 * cspi/spi-roletypes.h:
2609 Added SPI_ROLE_HEADER, SPI_ROLE_FOOTER, SPI_ROLE_PARAGRAPH,
2611 * cspi/spi-statetypes.h:
2612 Added SPI_STATE_MANAGES_DESCENDANTS
2614 Added SPI_RELATION_FLOWS_TO, SPI_RELATIONS_FLOWS_FROM,
2615 SPI_RELATION_SUBWINDOW_OF, SPI_RELATION_EMBEDS, SPI_RELATION_EMBEDDED_BY
2616 * cspi/spi_accessible.c:
2617 Added mapping in role_table from new Accessibility_ROLE_* to SPI_ROLE_*
2618 Added mapping from SPI_STATE_MANAGES_DESCENDANTS to
2619 Accessibility_STATE_MANAGES_DESCENDANTS
2620 * libspi/accessible.c:
2621 Added Mapping from ATK_ROLE_{FOOTER,HEADER,PARAGRAPH,RULER} to
2622 Accessibility_ROLE_{FOOTER,HEADER,PARAGRAPH,RULER}
2623 As requested by Bill, I also cleaned up the alignment.
2624 * libspi/relation.c:
2625 Added mapping of the ATK_RELATION_{FLOWS_TO,FLOWS_FROM,SUBWINDOW_OF,
2626 EMBEDS,EMBEDDED_BY} to equivalend Accessibility_RELATION_*
2627 * libspi/stateset.c:
2628 Added mappings between ATK_STATE_MANAGES_DESCENDANTS and
2629 Accessibility_STATE_MANAGES_DESCENDANTS
2630 * docs/reference/cspi/tmpl/spi_accessible.sgml:
2631 Document changes reflecting modifications to roles.
2632 * docs/reference/cspi/tmpl/spi_relation.sgml:
2633 Document changes reflecting modifications to relations.
2634 * docs/reference/cspi/tmpl/spi_stateset.sgml:
2635 Document changes reflecting modifications to states.
2637 2002-11-17 Bill Haneman <bill.haneman@sun.com>
2640 Revved to 1.1.3, interface-age=3, binary-age=3.
2641 Added REBUILD macro.
2644 Removed accessx-gui from the tests, since we have a nice
2645 keyboard accessibility capplet now :-)
2647 * test/keysynth-demo.c:
2648 (increment_scan): removed do-nothing default: case,
2651 * test/visual-bell.c:
2652 (main) : removed do-nothing default: case,
2655 * cspi/spi_action.c:
2656 (AccessibleAction_getKeyBinding_):
2657 Documented keybinding string format.
2661 (AccessibleText_getAttributes):
2662 Documented the text attribute string format.
2663 It's changed to use semicolon delimiters also,
2664 to prevent clashes with CSS attributes, but the old
2665 trick of looking for ", " strings will still work
2666 (as unreliably as ever). Fix for bug related to 97916.
2669 Include <cspi/bonobo/cspi-bonobo-listener.h>
2670 Fixes build warning.
2671 (SPI_freeAccessibleKeySet):
2672 (AccessibleKeystrokeListener_addCallback):
2673 (AccessibleKeystrokeListener_removeCallback):
2674 Modify to use AccessibleDeviceListener API internally,
2675 instead of AccessibleKeystrokeListener.
2677 * idl/Accessibility_Event.idl:
2678 Added two more empty slots to EventListener (for a total of four).
2680 * idl/Accessibility_Accessible.idl:
2681 Added four empty slots to Accessible interface.
2683 2002-11-15 Bill Haneman <bill.haneman@sun.com>
2685 * idl/Accessibility_Registry.idl:
2686 (KeyEventType, EventType):
2687 Marked KeyEventType as deprecated; it duplicates
2688 functionality of EventType, which has been extended to
2689 include Mouse-button events.
2690 (KeyEventTypeSeq): defined in terms of EventType.
2691 (registerDeviceEventListener, deregisterDeviceEventListener):
2692 New methods, for managing listeners to device events,
2693 which potentially may consume them.
2696 Added definition for AccessibleDeviceListener.
2698 * cspi/spi-listener.h:
2699 (enum AccessibleDeviceEventType):
2700 Added SPI_BUTTON_PRESSED and SPI_BUTTON_RELEASED.
2701 Typedef'd AccessibleKeyEventType to AccessibleDeviceEventType
2702 for backwards compat.
2703 (AccessibleKeystroke): Renamed AccessibleKeystroke to AccessibleDeviceEvent,
2704 and typedef'd AccessibleKeystroke to it for back-compat.
2705 (AccessibleDeviceListenerCB):
2706 New function prototype typedef.
2709 (AccessibleDeviceEventMask): New typedef.
2710 (AccessibleModifierMaskType): New typedef (renamed from AccessibleKeyMaskType).
2711 (AccessibleKeyMaskType):
2712 Set equivalent to AccessibleModifierMaskType for back-compat.
2713 (SPI_createAccessibleKeystrokeListener):
2714 (AccessibleKeystrokeListener_unref):
2715 Deprecated in favor of equivalent (better-named) new API below..
2716 keystroke listeners are like all device listeners.
2717 (SPI_createAccessibleDeviceListener, AccessibleDeviceListener_unref)
2718 New API names for old features :-).
2719 (AccessibleDeviceListener_addCallback):
2720 (AccessibleDeviceListener_removeCallback):
2721 (SPI_registerDeviceEventListener):
2722 (SPI_deregisterDeviceEventListener):
2726 (SPI_createAccessibleKeystrokeListener):
2727 Use new preferred API, cspi_device_listener_new() and
2728 cspi_device_listener_add_cb().
2729 (AccessibleKeystrokeListener_removeCallback):
2730 Use new preferred API, cspi_device_listener_remove_cb().
2731 (AccessibleKeystrokeListener_unref):
2732 Use new preferred API, cspi_device_listener_unref().
2733 (SPI_createAccessibleDeviceListener):
2734 (AccessibleDeviceListener_addCallback):
2735 (AccessibleDeviceListener_removeCallback):
2736 Implementation of new API.
2738 * cspi/spi_registry.c:
2739 (SPI_registerDeviceEventListener):
2740 (SPI_deregisterDeviceEventListener):
2741 Implementation of new API. Fixed memory leak and removed need to
2742 allocate EventTypeSeq (thanks Michael for catching this).
2743 Squashed a wayward CORBA_exception_free that shouldn't get called.
2745 * cspi/bonobo/cspi-bonobo-listener.c:
2747 Changed union (bin-and-api-compatibly) to refer to AccessibleDeviceListenerCB.
2748 (cspi_key_event): renamed to cspi_device_event().
2749 Internal use of CSpiKeystrokeListener changed to CSpiDeviceListener.
2750 Extended to handle mouse button events as well as key events.
2751 (CSpiKeystrokeListener):
2752 Class superceded by CSpiDeviceListener.
2753 (cspi_keystroke_listener_add_callback, cspi_keystroke_listener_get_corba):
2754 These internal APIs changed to "*device_listener" from "*keystroke_listener".
2756 * cspi/bonobo/cspi-bonobo-listener.h:
2757 (CSpiKeystrokeListener):
2758 Class superceded by CSpiDeviceListener.
2759 (cspi_keystroke_listener_add_callback, cspi_keystroke_listener_get_corba):
2760 These internal APIs changed to "*device_listener" from "*keystroke_listener".
2762 * libspi/Makefile.am:
2763 Replaced keystrokelistener.h and keystrokelistener.c
2764 with devicelistener.h and devicelistener.c; keystrokelisener.h
2765 stub retained for back-compat.
2767 * libspi/keystrokelistener.c:
2771 Replaced inclusion of keystrokelistener.h with devicelistener.h.
2773 * registryd/deviceeventcontroller.c:
2774 (DEControllerListener): Added Accessibility_EventTypeSeq member.
2775 (DEControllerKeyListener): Removed Accessibility_KeyEventTypeSeq member.
2776 (DEControllerPrivateData): Added xkb settings data.
2777 (spi_dec_poll_mouse_moved): Changed to dispatch device events for
2778 button release events (which can't be captured via XGrabButton).
2779 Don't dispatch via the 'normal' event mechanism if the device event was
2781 (spi_dec_key_listener_new, spi_key_listener_clone, spi_key_listener_data_free):
2782 Handle the typeseq data in its new location (see above).
2783 (spi_dec_listener_new, spi_listener_clone, spi_listener_clone_free):
2784 New methods, for "generic" device listeners.
2785 (spi_controller_register_device_listener):
2786 Now handle mouse event listeners as well as key listeners.
2787 (spi_controller_notify_mouselisteners):
2788 New internal method.
2789 (spi_device_event_controller_forward_mouse_event):
2790 Now we notify mouse device listeners as well as generating the
2791 non-consumable "mouse:" events.
2793 We must check and restore the XKB
2794 modifier map if we consume the event, since the act of triggering
2795 a mouse event will normally reset the XKB latch. This is required for
2797 (spi_controller_register_with_devices):
2798 Load the XKB settings when registering, and register for XKB
2799 state notify events.
2800 (spi_key_eventtype_seq_contains_event):
2801 Renamed spi_eventtype_seq_contains_event, since it's used
2802 internally for all device event types now.
2803 (spi_key_event_matches_listener):
2804 Uses spi_eventtype_seq_contains_event now.
2805 (spi_device_event_controller_object_finalize):
2806 Free the private data and the XkbKeyboard struct.
2807 (impl_register_device_listener, impl_deregister_device_listener):
2808 Implementation of new IDL.
2809 (spi_deregister_controller_device_listener):
2810 New internal method.
2811 (dec_xkb_get_slowkeys_delay dec_xkb_get_bouncekeys_delay):
2812 More efficient implementation, we don't have to create a new
2813 XkbControls structure every time we query.
2814 (spi_device_event_controller_class_init):
2815 Initialize the epv entries for the new IDL. Assign the
2816 "spi-dec-private" quark.
2817 (spi_device_event_controller_init):
2818 Initialize the private data.
2819 (spi_device_event_controller_forward_key_event):
2820 Removed a bogus CORBA_exception_free() call.
2822 * registryd/deviceeventcontroller.h:
2823 Replaced inclusion of keystrokelistener.h with
2826 * test/event-listener-test.c:
2827 (report_mouse_event):
2830 Added mouse-event device listener.
2832 * test/test-simple.c:
2833 (create_test_window):
2834 Fixed regression (we were instantiating a GtkRange,
2835 which is now an abstract class). Also fixed to match
2836 existing AtkRole names, this seems to have changed in ATK
2837 awhile ago; too late now I think, and the new
2838 mechanism is at least elegant and consistent with the
2839 glib enum "nick" APIs.
2841 2002-11-15 Darren Kenny <darren.kenny@sun.com>
2843 * idl/Accessibility_Relation.idl:
2844 add RELATION_FLOWS_TO,RELATION_FLOWS_FROM,RELATION_SUBWINDOW_OF,
2845 RELATION_EMBEDS,RELATION_EMBEDDED_BY
2846 * idl/Accessibility_Role.idl:
2847 add ROLE_HEADER, ROLE_FOOTER, ROLE_PARAGRAPH, ROLE_RULER
2848 * idl/Accessibility_State.idl:
2849 add STATE_MANAGES_DESCENDANTS
2850 * test/event-listener-test.c:
2851 Added a listener for active-descendant events.
2853 2002-11-15 Padraig O'Briain <padraig.obriain@sun.com>
2855 * atk-bridge/bridge.c
2856 (atk_bridge_init): If application is Bonobo component wait until top
2857 level is added before registering
2858 (spi_atk_bridge_do_registration): New function which contains code,
2859 formerly in atk_bridge_init, to do application registration.
2860 (spi_atk_bridge_toplevel_added): Signal called when top level
2861 added to Bonobo component
2863 This fixes bug #83134.
2865 2002-10-23 Vitaly Tishkov <tvv@sparc.spb.su>
2867 * registryd/deviceeventcontroller.c
2868 Fixed compilation error caused by calling gettimeofday()
2871 2002-10-18 Bill Haneman <bill.haneman@sun.com>
2876 Added template for HAVE_XKB.
2879 Changes to check for XKB, and to set the HAVE_XKB #define if it
2882 * libspi/listener.c:
2883 ()impl_notify_event): Make failure to get event source name
2886 * registryd/deviceeventcontroller.c:
2887 (#include): include X11/XKBlib.h.
2888 (DEControllerPrivateData) : New struct.
2889 (dec_xkb_get_slowkeys_delay) (dec_xkb_get_boucekeys_delay) :
2891 (dec_synth_keycode_press) (dec_synth_keycode_release):
2892 New methods; split the key synthesis code into these methods.
2893 They check XKB settings before determining the "time" values to
2894 pass to Xtest; this fixes bug #95828.
2895 (impl_generate_keyboard_event): Changed to use methods above,
2896 instead of callng Xtest directly.
2897 (spi_device_event_controller_init): Initialize new privae struct s
2899 (spi_device_event_controllr_object_finalize):
2900 Free the (new) private data.
2902 * registryd/deviceeventcontroller.h:
2903 Add new gpointer to end of struct data.
2905 2002-10-16 Bill Haneman <bill.haneman@sun.com>
2908 Incremented revision to 1.1.2, SONAME is still '.so', library
2909 extensions are ".so.0.0.2".
2911 * registryd/deviceeventcontroller.c:
2912 FIXES FOR #93592 and #95940.
2913 (statics): renamed mouse_button_state to mouse_mask_state,
2914 added key_modifier_mask.
2915 (spi_dec_poll_mouse_moved):
2916 Added key modifier checks, and emit "keyboard:modifiers"
2917 events when the key modifiers currently in use change.
2918 Also generate "mouse:abs" events periodically, even if the mouse
2919 is stationary (should we?).
2920 Alternatively we could generate "mouse:abs" events for either all
2921 mouse movements, or every 'nth' mouse movement, or at the
2922 beginning and end of every "active" mouse period.
2924 * test/event-listener-test.c:
2925 (main): Added listener for "keyboard:modifiers" events.
2927 2002-10-15 Bill Haneman <bill.haneman@sun.com>
2929 * libspi/keymasks.h:
2930 Added key mask #defines for mouse buttons; e.g.
2931 SPI_KEYMASK_BUTTON1, etc.
2934 Incremented dependency on ATK to version 1.1.0. (This dependency
2935 is probably premature but will soon be real enough).
2937 2002-10-11 Padraig O'Briain <padraig.obriain@sun.com>
2939 * libspi/hyperlink.[ch]
2940 (spi_hyperlink_new): Change parameter from AtkObject to AtkHyperlink.
2941 (get_hyperlink_from_servant): Check object is AtkHyperlink not
2944 * libspi/hypertext.c (impl_getLink): Remove cast of AtkHyperlink to
2949 2002-10-10 Padraig O'Briain <padraig.obriain@sun.com>
2951 * registryd/deviceeventcontroller.c
2952 (global_filter_fn): Correct typo which caused KeyPress and KeyRelease
2953 events to be ignored.
2954 (spi_controller_update_key_grabs): Use GrabModeSync for pointer_mode
2955 keyboard_mode so that XAllowEvents() can be called.
2959 2002-10-08 Padraig O'Briain <padraig.obriain@sun.com>
2961 * cspi/spi-accessible.c: Correct names of roles returned by
2962 AccessibleRole_getName(). Fixes bug #95055.
2964 2002-10-03 Padraig O'Briain <padraig.obriain@sun.com>
2966 * cspi/spi_main.c (report_leaked_ref): Report address of leaked
2969 * registryd/registry.c
2970 (desktop_remove_application: Write diagnostic message to stderr for
2973 (impl_accessibility_registry_deregister_global_event_listener):
2974 Correct size of lists array. This addresses bug #94555).
2976 2002-09-24 Padraig O'Briain <padraig.obriain@sun.com>
2978 * libspi/accessible.c (spi_init_role_lookup_table): Correct typos
2981 2002-09-19 Padraig O'Briain <padraig.obriain@sun.com>
2983 * registryd/Makefile: Add CLEANFILES so that .server file is removed
2986 * registryd/registry.c (impl_registry_notify_event): Remove
2987 unnecessary call to parser_event_type().
2989 * docs/reference/cspi/tmpl/spi_component.sgml:
2990 Add reference to SPI_LAYER_WINDOW.
2992 2002-09-17 Padraig O'Briain <padraig.obriain@sun.com>
2994 * registryd/registry.c
2995 (desktop_add_application): Remove leak.
2996 (desktop_remove_application): Remove leak.
2997 (parser_event_type): Remove leak.
2999 2002-09-16 Padraig O'Briain <padraig.obriain@sun.com>
3001 * registryd/deviceeventcontroller.c (spi_dec_mouse_moved): Removed
3002 bogus call to CORBA_string_dup(). Also removed unnecessary
3003 g_string_dup/g_free calls.
3005 2002-09-13 Bill Haneman <bill.haneman@sun.com>
3007 * registryd/deviceeventcontroller.c:
3008 spi_dec_mouse_moved: Fixed memory leaks and reordered 2 code blocks.
3010 * test/event-listener-test.c:
3011 main: commented out three redundant listeners, to reduce output
3012 noise. (They still are potentially useful for testing).
3015 2002-09-13 Michael Meeks <michael@ximian.com>
3017 * Update all the copyrights to include Ximian.
3019 2002-09-06 Mark McLoughlin <mark@skynet.ie>
3021 * cspi/spi.h: add SPI_LAYER_WINDOW.
3023 * cspi/spi_component.c: (AccessibleComponent_getLayer):
3024 add Accessibility_LAYER_WINDOW case.
3026 * idl/Accessibility_Component.idl: add LAYER_WINDOW.
3028 * libspi/component.c: (impl_accessibility_component_get_layer):
3029 add ATK_LAYER_WINDOW case.
3031 2002-08-28 Bill Haneman <bill.haneman@sun.com>
3033 * configure.in: incremented micro version.
3035 * branched for gnome-2-0 (a gnome-2-0-0 branch already exists).
3037 2002-08-20 Bill Haneman <bill.haneman@sun.com>
3040 Clarified and reworded our commit policy.
3043 Started an API "todo" addition list for 2.2.
3046 (impl_getSelection):
3047 Free char pointer from atk_text_get_selection, which was being leaked.
3049 2002-08-19 Bill Haneman <bill.haneman@sun.com>
3052 Small revision to author acknowledgement.
3054 2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
3056 * atk-bridge/bridge.c (spi_atk_bridge_signal_listener):
3057 If signal has detail add it to the type of the event.
3060 2002-08-12 Michael Meeks <michael@ximian.com>
3062 * test/test-simple.c (global_listener_cb): bin bogosity.
3063 (test_keylisteners): disable, still doesn't work reliably,
3064 certainly not on my system anyway.
3066 * atk-bridge/bridge.c (spi_atk_bridge_key_listener):
3067 don't leak a reference on the DEC. This round-trip
3068 fetching of the DEC per keystroke sucks, it should be
3071 * cspi/spi-private.h,
3072 * cspi/cspi-lowlevel.h,
3073 * cspi/bonobo/cspi-bonobo-listener.[ch],
3074 * cspi/bonobo/cspi-bonobo.c: get the copyright
3075 notices better - there is still a large amount of
3076 work in at-spi falsely attributed solely to Sun.
3078 * cspi/spi_main.c (cspi_object_ref): kill bogus
3079 hash lookup, just increment the ref.
3080 (SPI_freeString): make explicit the fact that we
3081 handle NULL strings just fine.
3082 (report_leaked_ref): obey coding standards.
3083 (cspi_object_hash, cspi_object_equal): kill retval.
3084 (cspi_object_release): only release if not on loan.
3085 (cspi_object_get_ref): add 'loan' concept, bin 'do_ref'.
3086 (cspi_object_borrow, cspi_object_return): impl.
3088 * cspi/bonobo/cspi-bonobo-listener.c (cspi_event):
3089 use cspi_object_borrow / return.
3091 2002-08-12 Darren Kenny <darren.kenny@sun.com>
3093 * cspi/bonobo/cspi-bonobo-listener.c:
3095 Don't call cspi_oject_new() because this is creating a new Accessible
3096 every single time that an event is fired. This causes ATs like at-poke
3097 to nolonger recognise the source of the event and thus ignore it.
3098 Re-use the object from the cache, ref it and then unref it after the
3099 listeners have been called.
3101 2002-08-06 Darren Kenny <darren.kenny@sun.com>
3103 * test/event-listener-test.c:
3104 Added command-line options to disable mouse events (m) and
3107 2002-07-31 Padraig O'Briain <padraig.obriain@sun.com>
3109 * configure.in: Update required versions of ATK, GTK+ and GAIL
3111 * cspi-1.0.pc.in: Add dependency for X include files
3114 * cspi/bonobo/Makefile.am:
3115 Add $(X_CFLAGS) so that X include files
3116 are picked up even if not in standard place (bug #71686)
3118 2002-06-25 Bill Haneman <bill.haneman@sun.com>
3120 * registryd/deviceeventcontroller.c: fix for 84261
3121 (spi_dec_mouse_moved):
3122 Added test of mouse button mask, so that we can detect mouse
3123 button release. Unfortunately we can't otherwise detect mouse
3124 button release events without consuming the mouse press event,
3125 because of the way XGrabButton works. This means that our mouse
3126 release events have a latency dependent on the polling period
3127 while the mouse button is down. At least in this case we only
3128 have to poll while the button is down, and not at other times.
3129 If the button masks don't match with what the last press event
3130 reported, we report the appropriate button release event.
3131 (spi_dec_ungrab_mouse):
3132 New method (not yet called).
3133 (spi_device_event_controller_forward_mouse_event):
3134 New method, sends mouse press event from GdkFilter.
3135 (spi_dec_init_mouse_listener):
3136 Added code to call XGrabButton, redirecting mouse button events to
3137 the root window and our Gdk event loop.
3139 Added code to filter mouse button events, and reordered.
3141 * test/event-listener-test.c:
3143 Added registration for mouse events of type "mouse:button".
3145 2002-06-25 Bill Haneman <bill.haneman@sun.com>
3147 * registryd/deviceeventcontroller.c: partial fix for 84261
3148 (spi_dec_poll_mouse_idle):
3149 New method, a timeout which checks to see if the mouse
3151 (spi_dec_poll_mouse_moving):
3152 A timeout to be called when mouse motion is underway.
3153 (spi_dec_poll_mouse_moved):
3154 A method which fires an event if the mouse has moved, and reports
3155 whether or not it did so.
3156 (spi_dec_init_mouse_listener):
3157 A method which sets up the timeouts above.
3158 (spi_device_event_controller_new):
3159 Now calls spi_dec_init_mouse_listener.
3161 * registryd/registry.c:
3162 (spi_registry_init):
3163 Now we initialize the device event controller when the registry is
3164 initialized, instead of waiting until a client has requested a key
3165 event notification; this is because we need the event controller
3166 for mouse events, but the mouse event registration API is a
3167 "registry" call and doesn't explicitly call the
3168 deviceeventcontroller.
3169 We now report mouse motion events with a 100 ms idle latency and
3170 a 20 ms granularity when motion is in progress.
3172 * test/event-listener-test.c:
3174 We now register the "detail listener" for events of type
3175 "mouse:rel" and "mouse:abs" (Note, mouse-abs events generally are
3176 delivered only for the first mouse event received, and thereafter
3177 "mouse:abs" events are delivered.)
3179 * cspi/spi_registry.c:
3180 DOCS: Documented the above mouse event typestrings.
3182 2002-06-21 Bill Haneman <bill.haneman@sun.com>
3184 Happy Summer Solstice...
3186 * registryd/deviceeventcontroller.c: [fix for bug 84100]
3187 (spi_controller_notify_keylisteners):
3188 Changes to remove a listener from the listener list, freeing its
3189 open keygrabs, if a notification to that listener fails. This
3190 means that although a dead listener can continue to hold a passive
3191 keygrab, a maximum of one dispatch to such a listener can fail
3192 before the listener is removed from the list, thus the keygrab
3193 will be released on the next occurrence.
3194 As part of this fix:
3195 (spi_notify_keylisteners):
3196 Renamed to spi_controller_notify_keylisteners, as the controller
3197 instance must now be passed as an argument.
3198 The copied 'notify' GList is now a list of DEControllerKeyListener
3199 objects, since we need more than just the CORBA reference if a
3200 notify fails and we need to deregister the listener.
3201 (impl_notify_listeners_sync):
3202 (impl_notify_listeners_async):
3203 (spi_device_event_controller_forward_key_event):
3204 Modify use of notify_keylisteners in accordance with above
3206 (spi_deregister_controller_key_listener):
3207 New method introduced by refactoring, from
3208 impl_deregister_keystroke_listener.
3209 (impl_deregister_keystroke_listener):
3210 Call spi_deregister_controller_key_listener.
3211 (spi_key_listener_clone):
3212 New method to copy a key listner without doing a 'ref' on the
3213 remote object instance; used to create a notifier list.
3214 (spi_key_listener_data_free):
3215 New method, frees data without unreffing the source.
3217 (spi_key_listener_clone_free): new method.
3218 (spi_key_listener_free):
3219 refactored to call spi_key_listener_data_free.
3221 2002-06-20 Bill Haneman <bill.haneman@sun.com>
3223 * registryd/registry.c: [fix for bug 86048]
3224 (notify_listeners_cb):
3225 Clear CORBA system exceptions which occur when notifying
3226 listeners, before returning to the source of the original event,
3227 since the event source doesn't care if the relayed notify failed.
3228 In other words, don't complain to the atk-bridge if the registry
3229 could not notify all its listeners, that's no fault of the
3230 application and thus should not appear to be an error from the
3231 application's perspective.
3233 * cspi/spi_main.c: [fix for bug 85980]
3235 Replaced use of bonobo_object_dup_ref with call to the wrapper
3236 method, csou_dup_ref (); this silences a compiler warning and
3237 provided more portability.
3239 Ping the registry before return, and restart if necessary.
3241 * cspi/bonobo/cspi-bonobo.c:
3243 New internal method.
3245 Fixed this method to return an object reference, as it should have
3248 * cspi/cspi-lowlevel.h:
3249 Added internal definition for cspi_ping() and fixed
3250 return type of cspi_dup_ref().
3253 2002-06-19 Bill Haneman <bill.haneman@sun.com>
3255 * atk-bridge/bridge.c: [fix for bug 85305]
3256 (spi_atk_bridge_register_application):
3257 New method where the initial application registry calls have been
3258 moved; it allows an application to re-register in response to
3259 certain error conditions (such as a registry restart, see below).
3261 Moved some initialization code to the method
3262 spi_atk_bridge_get_registry, below.
3263 (spi_atk_bridge_get_registry):
3264 New, private accessor function for the Accessibility_Registry
3265 instance. If the registry has not been started before, or has
3266 died (as detected by failure of a CORBA exception), it is
3267 restarted before return, and spi_atk_bridge_register_application
3268 is called again to register with the new bridge instance.
3269 (spi_atk_emit_eventv):
3270 Set registry_died on error; use spi_atk_bridge_get_registry () to
3271 access the registry.
3273 * registryd/registry.c:
3274 (impl_accessibility_registry_register_global_event_listener):
3275 Set listener's event_type_quark to etype.minor instead of
3276 etype.major (fix for bug 84856).
3278 * test/event-listener-test.c:
3279 (report_detail_event):
3280 Change the output string so that user/tester can tell that the
3281 'detail listener' was called instead of the 'generic listener'.
3283 2002-06-18 Bill Haneman <bill.haneman@sun.com>
3285 Fixes for bugs 84900, 84908, 84897, 84898.
3290 Revved version to 1.1.0
3291 (reserving the 1.0.X branch for gnome-2-0-0 branch, this
3292 version is going to HEAD which will be used for gnome-2-0-1 and later.)
3294 * idl/Accessibility_Registry.idl:
3295 (EventListener::notifyEvent):
3296 Removed 'oneway' directive after extensive consulation with
3297 ORBit2 team and others. This means also that unref() of the event
3298 source can and should be done synchronously after emission, rather
3299 than remotely in the client, after servicing the notify call on
3302 NOTE: This change speeds up listener performance considerably, but
3303 introduces new latency on the application side. We may want to
3304 add an event queue to the atk-bridge.
3306 * atk-bridge/bridge.c:
3307 (spi_atk_bridge_focus_tracker):
3308 Do a local unref() on the event source after emission.
3310 * registryd/registry.c:
3311 (desktop_remove_application):
3312 Do an unref() on the event source after emission.
3313 (desktop_add_application):
3314 Do an unref() on the event source after emission.
3315 (notify_listeners_cb):
3316 When relaying an event, don't automatically add the event source
3317 to the local object cache, just CORBA_dup it instead. Likewise,
3318 if this method reenters, release the ref rather than calling
3320 (impl_registry_notify_event):
3321 No longer call remote unref() on the event source after dispatch.
3323 * libspi/eventlistener.c:
3324 (impl_accessible_event_notify_event):
3325 Removed remote unref ()
3327 * cspi/bonobo/cspi-bonobo-listener.c:
3329 We now call cspi_object_new() instead of cspi_object_add() on
3330 receipt of an event; thus we only have an implicit object ref
3331 while the cspi_event method is being executed. If we need to keep
3332 a reference to the object, the listener must call ref() on the
3333 object. Thus also we don't need to call cspi_object_unref() after
3334 invoking the listener callbacks in this method.
3338 New internal API for creating a new cspi object, without adding it
3339 to the object cache.
3341 Now uses cspi_object_new() to create the cspi object instance.
3343 Now checks to see if the object is in the internal object cache,
3344 and adds it if necessary before incrementing its refcount (note
3345 that new objects are added with a refcount of 1).
3346 (report_leaked_ref):
3347 New method which gives some information on leaked object instances
3348 if leak detection is turned on.
3350 * test/event-listener-test.c:
3351 (timing_test_event):
3352 New method, used for testing event delivery timing for special
3353 events of type "object:test". It reports elapsed time and
3354 events/sec every 500 events.
3356 Added a new listener, 'test listener', to check timing of event
3357 receipt as noted above.
3359 Added some timing output here also, reports elapsed time every 100
3362 * test/stress-test.c:
3363 Emit events of type "object:test", for use with "event-listener-test".
3365 * test/test-simple.c:
3366 (global_listener_cb):
3367 Call Accessible_ref() on the event source before calling
3368 validate_accessible, since the validation process does pointer
3369 comparisons on the event source, meaning that the event source
3370 needs to be added to the local object cache first. Any use of
3371 such pointer comparisons between Accessible objects requires that
3372 the caller hold an explicit reference to those objects.
3373 We also must therefore call Accessible_unref() when leaving this method.
3375 2002-06-13 Bill Haneman <bill.haneman@sun.com>
3377 * registryd/deviceeventcontroller.c:
3378 (spi_controller_update_key_grabs):
3379 Fix for #84735, subsequent keygrab listeners not informed of
3380 registration failure.
3383 (spi_base_construct):
3384 Add an assertion on construct, to make sure the GObject passed in
3385 is really a GObject.
3387 Explicitly initialize object->gobj pointer to NULL;
3389 * cspi/bonobo/cspi-bonobo-listener.c:
3390 (cspi_object_add_ref):
3391 New method, can specify whether to dup-ref a bonobo object passed
3392 in if it's newly added to the object cache.
3394 Now calls cspi_object_add_ref with second param of "FALSE". This
3395 prevents us from doing a pointless dup-ref followed by
3396 release-unref for all those cases where the object is already in
3397 our object cache (fix for #85205).
3399 * atk-bridge/bridge.c:
3400 (spi_atk_bridge_idle_init):
3401 Removed this method, we don't need to initialize in an idle
3404 Changed to call spi_atk_register_event_listeners directly, not via an
3405 idle handler. (fix for #81139)
3406 (gnome_accessibility_module_shutdown):
3407 Removed conditional around deregistration of listeners, since we
3408 don't use the idle handler and thus have always registered when
3410 (spi_init_keystroke_from_atk_key_event):
3411 Changed references to Accessibility_KEY_PRESSED to
3412 Accessibility_KEY_PRESSED_EVENT, etc. (fix for #79865).
3414 2002-06-12 Bill Haneman <bill.haneman@sun.com>
3416 (TAGGED AND BRANCHED for gnome-2-0-0 after this commit)
3421 * test/stress-test.c:
3424 (may have been an incomplete commit yesterday?)
3426 2002-06-12 Bill Haneman <bill.haneman@sun.com>
3429 Added target for new stress-test.
3431 * test/stress-test.c:
3432 New test, sends 1000 focus notifies in quick succession.
3434 * test/key-listener-test.c:
3435 Now we report whether a keylistener registration
3436 request succeeded or failed.
3438 * test/event-listener-test.c:
3439 Uncommented some listeners which are now implemented.
3442 2002-06-06 Bill Haneman <bill.haneman@sun.com>
3444 * registryd/deviceeventcontroller.c:
3445 (spi_controller_update_key_grabs):
3446 Fix for #82509, lack of failure notification when
3447 ALL_WINDOWS keygrabs fail due to XGrabKey
3448 failure: we synchronize the server when
3449 registering a passive grab, to make sure we get the
3450 error message before the call returns.
3452 2002-06-03 Bill Haneman <bill.haneman@sun.com>
3454 * test/test-simple.c:
3456 Removed #ifdef KEY_IMPL_WORKS guards.
3457 (test_keylisteners):
3458 Removed #ifdef KEY_IMPL_WORKS guards.
3459 Fixed bug which was causing a hang waiting for a
3460 "press" event (which was already overwritten by a "release"
3461 event) from SPI_generateKeyboardEvent with synth-type of SPI_KEY_SYM.
3463 Added code to set globals 'key_press_received' and
3464 'key_release_received'.
3467 Added section "1.1 API Proposed Additions" which
3468 lists API additions desired for at-spi-1.1 (only one so far).
3469 Updated TODO list a little.
3471 2002-06-02 Bill Haneman <bill.haneman@sun.com>
3473 AT-SPI 1.0 API FINAL: at-spi 1.0 is now
3476 * configure.in: Revved to 1.0.0.
3478 * idl/Accessibility_Registry.idl:
3479 (registerKeystrokeListener):
3480 Added boolean return value.
3482 * registryd/registry.c:
3483 (notify_listeners_cb): Minor fix to debug output.
3485 * registryd/Accessibility_Registry.server.in.in:
3486 Revved version number in OAFIID to 1.0.
3488 * registryd/registryd.c:
3490 Use new OAFIID version.
3492 * cspi/bonobo/cspi-bonobo.c:
3494 Use new OAFIID version.
3500 * atk-bridge/bridge.c:
3502 Use new OAFIID version.
3504 * registryd/deviceeventcontroller.c:
3505 (impl_register_keystroke_listener):
3506 Added CORBA_boolean return value.
3507 (spi_controller_register_device_listener):
3508 Added gboolean return value.
3509 (spi_controller_register_global_keygrabs):
3510 Added gboolean return value.
3511 (spi_key_set_contains_key):
3512 Added implementation for many more control keys,
3513 for instance F1-F12, arrow keys, End, Home, Page_Up,
3515 [TODO: some still not implemented].
3517 * text/screen-review-test.c:
3518 (text_chunk_pad_string):
3519 New function: it provides mapping between coordinate
3520 positions of text chunks and character positions in the
3521 screen-review-line output string.
3522 (text_chunk_to_string):
3523 New function, calls text_chunk_pad_string with various
3524 pad/delimiter characters. Pushbuttons are delimited with
3525 square brackets, Frames with vertical 'pipe' lines, and
3526 other text with double quotes.
3527 (text_chunk_list_to_string):
3528 Calls new function text_chunk_to_string.
3529 (toplevel_composite):
3530 New function to composite layers CANVAS through
3531 POPUP in each toplevel (other layers are composited
3532 across toplevels, i.e. BACKGROUND and OVERLAY).
3533 (review_buffer_composite):
3534 Revise to use new methods.
3540 2002-05-31 Laszlo Peter <laca@sun.com>
3542 * configure.in: add the Xtst libdir to the runpath on Solaris,
3543 since it's not in the default library search path.
3545 2002-05-29 jacob berkman <jacob@ximian.com>
3547 * registryd/Makefile.am (EXTRA_DIST): dist the .in.in
3549 2002-05-29 Bill Haneman <bill.haneman@sun.com>
3551 * test/screen-review-test.c:
3552 (text_chunk_pad_string):
3553 Added method, which pads the string according to the
3554 text bounds of the chunk. It also takes a 3-character
3555 string as a param which indicates the characters to be
3556 used for start, padding, and end delimitation of the chunk.
3557 (text_chunk_to_string):
3558 Changed to use text_chunk_pad_string.
3560 * configure.in: Fixed bug in AC_OUTPUT that was
3561 causing path substitution in Accessibility_Registry.server
3564 2002-05-23 Bill Haneman <bill.haneman@sun.com>
3566 * text/screen-review-test.c:
3567 (guess_string_clip):
3568 New method which attempts a best-guess at clipping
3569 text from components (like Java labels) which don't
3570 actually implement AccessibleText. This inaccurate
3571 clip is based on the assumption that the label is
3572 justified left-and-right, and monospaced.
3573 (text_chunk_get_clipped_string):
3574 We now call guess_string_clip() for text-containing
3575 components that don't implement AccessibleText.
3577 * test/screen-review-test.c:
3578 (review_buffer_get_text_chunk):
3579 We now pull "name" from labels if they do not implement
3580 AccessibleText (i.e. for Java labels).
3581 (get_screen_review_line_at):
3582 Added #ifdef guards CHUNK_LIST_DEBUG for diagnostics.
3585 Replaceded AC_OUTPUT target
3586 registryd/Accessibility_Registry.server with
3587 registryd/Accessibility_Registry.server.in.
3589 * registryd/Accessibility_Registry.server.in:
3590 Removed (this is now a Makefile target).
3592 * registryd/Accessibility_Registry.server.in.in:
3593 Added (source for target above). We now use $(libexecdir) as
3594 prefix for the executable at-spi-registryd.
3596 * registry/Makefile.am:
3597 Now install at-spi-registryd into $(libexecdir), and build .server
3598 file with path (see above).
3600 2002-05-22 Bill Haneman <bill.haneman@sun.com>
3602 * test/screen-review-test.c:
3603 (text_chunk_get_clipped_string):
3604 We now check to see if words fall within clip bounds
3605 before resorting to character-by-character clip bounds testing.
3607 * TODO: Added a section for "2.2 Proposed API Additions".
3609 2002-05-21 Bill Haneman <bill.haneman@sun.com>
3611 * test/screen-review-test.c:
3613 Added a screen review benchmarking and test program to test
3616 * cspi/spi_accessible.c:
3618 Made some of the debug strings passed to cspi_check_ev a
3619 little more specific.
3621 2002-05-21 Padraig O'Briain <padraig.obriain@sun.com>
3623 * test/screen-review-test.c: Fix crashes in debug statements
3625 2002-05-20 Bill Haneman <bill.haneman@sun.com>
3627 * test/screen-review-test.c: Added this file.
3629 2002-05-13 Marc Mulcahy <marc.mulcahy@sun.com>
3631 * atk-bridge/bridge.c: changed "object:state-change" to
3632 "object:state-changed" to match docs.
3634 2002-05-13 Marc Mulcahy <marc.mulcahy@sun.com>
3636 * atk-bridge/bridge.c: Hooked up state-change event details.
3638 2002-05-11 Bill Haneman <bill.haneman@sun.com>
3640 * registryd/registry.c:
3641 Fixed quarking bug in event string parsing; now events with
3642 detail parameters get matched correctly to listeners.
3645 * util/idl/Magnifier.idl: remove.
3647 * util/*.[ch]: Remove.
3648 Magnification utilities and IDL are now in module gnome-mag.
3650 2002-05-10 Bill Haneman <bill.haneman@sun.com>
3652 * registryd/deviceeventcontroller.c:
3653 Fixed bug in grab key conversion which was causing keycode grabs
3654 to be converted to AnyKey grabs.
3657 updated NEWS file to reflect recent spin-off of gnome-mag.
3659 2002-05-09 Marc Mulcahy <marc.mulcahy@sun.com>
3661 * cspi/spi_accessible.c: Added exception checks. Fixed completely
3662 busted AccessibleStateSet_compare. Removed redundant casts.
3664 * cspi/spi-action.c: Removed redundant casts.
3666 * cspi/spi_application.c: Fixed typo in AccessibleApplication_getVersion.
3668 * cspi/spi_component.c: Fixed typos and casting error.
3670 * cspi/spi_editabletext.c: Removed redundant casts.
3672 * cspi/spi_hyperlink.c: Fixed casting and exception checking.
3674 * cspi/spi_hypertext.c: Eliminated redundant casts.
3676 * cspi/spi_image.c: Eliminated redundant casts.
3678 * cspi/spi_registry.c: Eliminated redundant casts.
3679 SPI_deregisterGlobalEventListenerAll () removed retval variable.
3680 * cspi/spi_selection.c: Removed redundant casts.
3681 * cspi/spi_text.c: Eliminated redundant casts. Fixed exception
3682 handling. Screen geometry and text offsets were being returned as 0
3683 on error which is technically valid-- changed these to return -1.
3684 Added marshaller for text boundary types to fix bug with boundary
3685 types being passed incorrectly to atk.
3687 2002-05-09 Bill Haneman <bill.haneman@sun.com>
3690 * cspi/spi_registry.c:
3691 Fixed nasty bug in SPI_registerAccessibleKeystrokeListener
3692 which was uncovered by the recent key changes.
3694 2002-05-09 Bill Haneman <bill.haneman@sun.com>
3696 * test/event-listener-test.c:
3698 Added new test, "event-listener-test";
3699 this code does two things; it benchmarks traversal time
3700 for the accessible hierarchy for the first running accessible
3701 app, and it connects listeners for all supported event types.
3702 It is thus useful as an example event listener and for
3703 diagnostics/debugging of event generation.
3705 2002-05-08 Bill Haneman <bill.haneman@sun.com>
3708 Removed unnecessary dependency on libutil.
3711 Revved micro version: 0.13.1
3713 2002-05-08 Bill Haneman <bill.haneman@sun.com>
3716 Removed util/Makefile from targets.
3719 Removed util subdir from SUBDIRS (temporarily,
3720 pending removal of magnifier-only code
3724 #ifdef-ed out magnifier dependencies, since
3725 magnifier IDL, headers, and binary now live in
3726 module gnome-mag and we don't want at-spi to depend
3727 on gnome-mag. A magnifier demo which can run alongside
3728 simple-at is forthcoming in the gnome-mag module.
3730 NOTE: Split magnifier binary, IDL, and magnification
3731 activation code from at-spi into module gnome-mag.
3733 2002-05-03 Marc Mulcahy <marc.mulcahy@sun.com>
3735 * cspi/bonobo/cspi-bonobo.c cspi/bonobo/cspi-bonobo-listener.c
3736 cspi/bonobo/cspi-bonobo-listener.h: Added copyright notice.
3738 2002-05-03 Bill Haneman <bill.haneman@sun.com>
3741 Revved to version 0.13.0
3743 * idl/Accessibility_Registry.idl:
3744 Changed definition of KeySet from sequence of longs to sequence of
3745 KeyDefinitions, and added KeyDefinition struct.
3746 Required for fix to bug 80616.
3748 * cspi/spi_registry.c: SPI_registerAccessibleKeystrokeListener():
3749 Changed AccessibleKeySet to Accessibility_KeySet marshalling code
3750 to use new definition (see above).
3752 * registryd/deviceeventcontroller.c: handle_keygrab(),
3753 spi_keyset_contains_key():
3754 Changed to make use of new struct; this allows matching based on
3755 string key-name, for instance "Tab". This also allows matching of
3756 composed characters, non-alphanumeric characters in a way that
3757 doesn't involve dependencies on X keysym codes directly, etc.
3759 * test/key-listener-test.c:
3760 Added test for Alt-Tab key using "string" specification of keyset,
3761 and modified one of the tests to use a keycode-based keyset.
3762 Thus this test both tests and demonstrates the creation and use of
3763 keysets of three forms: specified via keycode array,
3764 keysym array, and string array. (The string case only contains a
3765 single string, i.e. a string array of length 1).
3768 Turned on PRINT_TREE option by default. Also fixed a
3769 string-freeing bug in the PRINT_TREE code.
3770 Added a listener to window:minimize events.
3772 2002-05-08 Padraig O'Briain <padraig.obriain@sun.com>
3774 * atk-bridge/bridge.c:
3775 (spi_atk_register_event_listeners) Call atk_add_global_event_listener()
3776 for window:activate and window:deactiveate
3777 (atk_bridge_property_event_listener atk_bridge_signal_listener
3778 atk_bridge_window_event_listener) Tidy debug code
3780 2002-05-02 Marc Mulcahy <marc.mulcahy@sun.com>
3782 * libspi/accessible.c (impl_accessibility_accessible_get_role_name):
3783 Fixed handling for NULL return value from ATK.
3785 * libspi/action.c libspi/component.c libspi/editabletext.
3786 libspi/hyperlink.c libspi/hypertext.c image.c libspi/selection.c
3787 libspi/stateset.c libspi/table.c libspi/text.c libspi/value.c:
3788 Removed redundant casts.
3790 * libspi/table.c (impl_getSelectedRows, impl_getSelectedColumns):
3791 Fixed off by one bug.
3793 *libspi/text.c: removed impl_getRowColAtOffset (unimplemented
3794 function not present in idl)
3796 2002-05-02 jacob berkman <jacob@ximian.com>
3798 * atk-bridge/Makefile.am: make atk-bridge a real module
3800 2002-04-26 Radek Doulik <rodo@ximian.com>
3802 * libspi/stateset.c (spi_init_state_type_tables): fix size of
3803 atk_state_types table
3805 2002-04-22 jacob berkman <jacob@ximian.com>
3808 * libspi/Makefile.am: add deps on the built files to help
3809 automake, and don't version the ORBit typelib
3811 2002-04-19 Padraig O'Briain <padraig.obriain@sun.com>
3813 * cspi/cspi-lowlevel.h cspi/spi-impl.h cspi/spi-listener.h
3814 cspi/spi-private.h cspi/spi-roletypes.h cspi/spi-statetype.h
3815 cspi/spi.h cspi/spi_accessible.c cspi/spi_action.c
3816 cspi/spi_application.c cspi/spi_component.c cspi/spi_editabletext.c
3817 cspi/spi_hyperlink.c cspi/spi_hypertext.c cspi/spi_image.c
3818 cspi/spimain.c cspi/spi_selection.c cspi/spi_streamablecontent.c
3819 cspi/spi_table.c cspi/spi_text.c cspi/spi_value.c
3820 libspi/accessible.h libspi/accessible.h libspi/base.h
3821 libspi/component.h libspi/editabletext.h libspi/hyperlink.h
3822 libspi/hypertext.h libspi/image.h libspi/keymasks.h libspi/libspi.h
3823 libspi/relation.h libspi/remoteobject.h libspi/selection.h
3824 libspi/spi-private.h libspi/statetset.h libspi/table.h
3825 libspi/text.h libspi/util.h libspi/value.h util/mag_client.c
3826 util/mag_client.h util/mag_control.c util/mag_image.c
3827 util/mag_image.h util/magnifier.c util/magnifier.h:
3828 Add missing file headers; standardize existing ones
3830 2002-04-18 Marc Mulcahy <marc.mulcahy@sun.com>
3832 * atk-bridge/bridge.c: Added window event support.
3834 2002-04-18 Michael Meeks <michael@ximian.com>
3836 * libspi/relation.c (impl_getNTargets): impl.
3837 (impl_getTarget): impl.
3839 * libspi/Makefile.am: fix stateset install.
3841 2002-04-17 Bill Haneman <bill.haneman@sun.com>
3844 Started putting useful info in this file.
3846 2002-04-17 Marc Mulcahy <marc.mulcahy@sun.com>
3848 * atk-bridge/bridge.c:
3849 Propagate state-changed notifications to ATs
3851 * cspi/spi_registry.c: update docs to reflect actual behavior of
3852 state-change events.
3854 2002-04-17 Bill Haneman <bill.haneman@sun.com>
3857 Incremented version to 0.12.1
3859 * util/mag_client.h:
3860 Add missing declaration for magnifier_exit,
3861 used by mag_control.c - Forte compiler didn't like
3862 the implicit redeclaration of the function :-(
3865 2002-04-16 Bill Haneman <bill.haneman@sun.com>
3868 Revved version to 0.12 due to API change (see below).
3870 * cspi/spi-roletypes.h:
3871 removed (obsolete) SPI_ROLE_FOCUS_TRAVERSABLE
3872 definition from the inline docs, and added docs
3873 for SPI_ROLE_LAST_DEFINED.
3876 * cspi/spi_streamablecontent.c:
3877 Added missing seek_type parameter to
3878 (so far unused) method,
3879 AccessibleStreamableContent_seek().
3880 [ RT approval JodyG. ]
3883 Fixed docs for SPI_createAccessibleKeystrokeListener.
3885 * cspi/spi_registry.c:
3886 Fixed docs for SPI_KEYSET_ALL_KEYS.
3888 * docs/reference/cspi/at-spi-cspi-sections.txt:
3889 Added a number of missing APIs to SECTIONS.
3891 2002-04-16 Bill Haneman <bill.haneman@sun.com>
3893 * registryd/Makefile.am:
3895 * cspi/bonobo/Makefile.am:
3896 Add $(X_LIBS) to makefiles.
3898 2002-04-15 Bill Haneman <bill.haneman@sun.com>
3901 Revved version to 0.11.
3903 * libspi/component.c:
3904 Added implementation for grabFocus.
3906 * idl/Accessibility_Component.idl
3907 (Accessibility_Component_grabFocus):
3908 Made this method return boolean to indicate success or failure, to
3909 be consistent with cspi and the corresponding ATK method.
3911 * idl/Accessibility_Selection.idl
3912 (Accessibility_Selection_selectAll) :
3913 Made these methods return boolean to indicate success or
3914 failure, to be consistent with cspi and the corresponding ATK methods.
3916 * idl/Accessibility_EditableText.idl
3917 (Accessibility_EditableText_setTextContents,
3918 Accessibility_EditableText_insertText,
3919 Accessibility_EditableText_cutText,
3920 Accessibility_EditableText_deleteText,
3921 Accessibility_EditableText_pasteText):
3922 Made these methods return boolean to indicate
3925 * cspi/spi_editabletext.c:
3926 Made these methods return booleans.
3928 * libspi/selection.c:
3929 * libspi/component.c:
3930 * libspi/editabletext.c:
3931 Connected the boolean returns from ATK
3932 to the server-side code referenced above.
3934 2002-04-14 Bill Haneman <bill.haneman@sun.com>
3936 * idl/Accessibility_Table.idl: Added missing methods,
3937 Accessibility_Table_addRowSelection,
3938 Accessibility_Table_addColumnSelection,
3939 Accessibility_Table_removeRowSelection,
3940 Accessibility_Table_removeColumnSelection.
3943 Added C wrappers for above IDL:
3944 AccessibleTable_addRowSelection,
3945 AccessibleTable_addColumnSelection,
3946 AccessibleTable_removeRowSelection,
3947 AccessibleTable_removeColumnSelection.
3950 Added server-side implementation code for IDL above, connecting
3951 to pre-existing ATK api.
3953 2002-04-13 Marc Mulcahy <marc.mulcahy@sun.com>
3955 * idl/Accessibility_State.idl: Made StateSet inherit from BonoboUnknown.
3957 * libspi/accessible.c: Added implementation fo
3958 Accessibility_Accessible_get_state.
3960 * libspi/libspi.h: Added stateset.h to the list of includes.
3962 * libspi/stateset.c: Fixed broken implementation.
3964 2002-04-13 Bill Haneman <bill.haneman@sun.com>
3967 Added implementation code for Accessibility_Magnifier_exit ().
3969 * util/mag_control.c:
3970 Added test code for above method; you can
3971 now kill an existing magnifier via
3972 ./mag_control q, from the util directory.
3974 * test/key-listener-test.c:
3976 Added a new test, for our key listener API.
3978 2002-04-11 Bill Haneman <bill.haneman@sun.com>
3980 * test/app.c, test/keysynth-demo.c:
3982 Replace use of snprintf with g_snprintf.
3983 (fix for bugzilla 78249)
3985 2002-03-27 Michael Meeks <michael@ximian.com>
3989 * util/Makefile.am (INCLUDES): fix.
3990 (DONT_DIST_SOURCE): don't distribute the
3993 * libspi/Makefile.am (dist-hook): ditto.
3995 2002-03-27 Padraig O'Briain <padraig.obriain@sun.com>
3997 * libspi/hypertext.c:
3998 Fix warnings when yelp is used with atk-bridge
4000 2002-03-21 Michael Meeks <michael@ximian.com>
4002 * libspi/application.c (spi_application_new):
4003 use spi_accessible_construct so we use the AtkObject
4006 2002-03-19 Michael Meeks <michael@ximian.com>
4008 * registryd/registry.c (desktop_remove_application),
4009 (desktop_add_application): clean coding style.
4011 * registryd/desktop.c (spi_desktop_remove_application),
4012 (spi_desktop_add_application): kill re-enterency hazards.
4013 (spi_desktop_dispose): remove bogus redundant cast
4014 obscuring bug; fix bug too.
4015 (spi_desktop_init): make the desktop object immortal.
4017 2002-03-16 Bill Haneman <bill.haneman@sun.com>
4020 Added a #define-guarded tree-traversal step
4021 when enumerating the apps (diagnostic tool).
4023 2002-03-15 Bill Haneman <bill.haneman@sun.com>
4025 * idl/Accessibility_Role.idl:
4026 Added ROLE_DRAWING_AREA which seemed to be missing from the
4029 2002-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
4031 * cspi/spi-roletypes.h cspi/spi_accessible.c
4032 idl/Accessibility_Role.idl libspi/accessible.c: synched up role
4035 * registryd/desktop.c registryd/desktop.h registryd/registry.c:
4036 Added signals to SpiDesktop and callbacks in SpiRegistry to notify
4037 AT when applications are added and removed from the desktop. This
4038 reverts the previous broken implementation using the backing
4039 AtkObject for the SpiDesktop.
4041 2002-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
4043 * registryd/desktop.c: emit the "children-changed::add" and
4044 "children-changed::remove" signals on the backing ATK object for
4045 the desktop so AT can tell when applications are started and shut
4048 2002-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
4050 * cspi/spi_accessible.c: Made role names freeable with SPI_freeString ()
4052 2002-03-14 Marc Mulcahy <marc.mulcahy@sun.com>
4054 * libspi/stateset.c: implemented Accessibility_StateSet_compare ()
4056 * cspi/spi_accessible.c: Implemented c bindings for stateset support
4058 * cspi/state-types.h: synched with IDL and ATK
4060 2002-03-13 Bill Haneman <bill.haneman@sun.com>
4062 * libspi/accessible.c
4063 (impl_accessibility_accessible_get_child_at_index):
4064 Change return value for g_return_if_fail ()
4065 to CORBA_OBJECT_NIL instead of "0" (!)
4067 * registryd/Makefile.am:
4068 * registryd/Accessibility_Register.server.in:
4069 Changed name of executable, "registryd",
4070 to something more informative:
4073 2002-03-13 Michael Meeks <michael@ximian.com>
4075 * atk-bridge/bridge.c (atk_bridge_init): don't register
4076 if we're in a bonobo-component, rather than a bonobo app.
4078 2002-03-13 Michael Meeks <michael@ximian.com>
4080 * atk-bridge/bridge.c (gtk_module_init): split
4081 out body to (atk_bridge_init): here, since otherwise
4082 we get symbol conflicts and oddness when invoked
4083 from (gnome_accessibility_module_init): here (upd.)
4085 2002-03-11 Bill Haneman <bill.haneman@sun.com>
4088 New file. Explicitly allow "build sheriff" putbacks provided
4089 they are tested on Solaris.
4091 * docs/reference/cspi/Makefile.am:
4092 Added '-' to the "cp" command for index.sgml.
4093 ("patch by thomasvs, soon coming to a GUADEC near you")
4096 Incremented version number (0.9.0) for new release.
4097 Changed macro that checks for popt, to better detect
4098 obsolete versions of popt.
4101 Added X_LIBS to AC_SUBST, for applications
4102 that call Xlib API directly.
4105 2002-03-07 Bill Haneman <bill.haneman@sun.com>
4108 Include gdk_pixbuf_x11-2.0 in UTILS_LIBS.
4111 Fix regression caused by hard-coding major
4112 version of gdk_pixbuf_x11; now use $(UTILS_LIBS)
4115 * test/test-simple.c (test_editable_text),
4116 (test_test): revert previous change (error was
4117 a regression in gail which is now fixed).
4119 2002-03-04 Michael Meeks <michael@ximian.com>
4121 * test/test-simple.c (test_editable_text),
4122 (test_text): pass G_MAXINT instead of '-1' for
4123 whole string - is this a good thing !?
4125 * cspi/spi_accessible.c
4126 (Accessible_getRelationSet): fix crasher bug
4127 overwriting the end of the array.
4129 * test/test-simple.c (validate_accessible): free,
4130 not g_free returned relation set.
4132 2002-02-26 Marc Mulcahy <marc.mulcahy@sun.com>
4134 * libspi/stateset.c libspi/stateset.h libspi/Makefile.am:
4135 implemented stateset support
4137 * idl/Accessibility_State.idl: Made necessary changes to
4138 the IDL to support state sets.
4140 2002-02-12 Bill Haneman <bill.haneman@sun.com>
4142 * registryd/deviceeventcontroller.c:
4143 Added implementation for generateMouseEvent.
4145 * cspi/spi_registry.c:
4146 Connected new implementation for generateMouseEvent
4149 2002-02-12 Bill Haneman <bill.haneman@sun.com>
4152 Incremented revision (but no change in public API
4153 outside of 'utils', which are not installed public yet.)
4155 * libspi/component.c:
4156 Changed to use atk_component API for layers and
4157 mdi_zorder, instead of deprecated atk_object API.
4159 Magnification Utility Enhancements:
4162 Added implementation of createZoomRegion, clearAllZoomRegions,
4163 resizeZoomRegion. Added new commandline argument
4164 "--no-initial-region". Note that clearAllZoomRegions doesn't
4165 unmap the old '0' region as it should (yet), and the other
4166 methods only work when creating/resizing a single region,
4167 which is "region 0".
4168 (Code for multiple region support will be added later.)
4171 Now we raise the magnifier window each time it's refreshed;
4172 this will help keep it on top.
4174 * util/mag_client.h:
4175 Added simple wrappers for above, used by mag_control.
4176 For general use, it's recommended to use the bonobo magnifier
4177 control API directly instead of using these wrappers.
4180 Moved ZoomRegionData from magnifier.c to this file.
4182 * util/mag_control.c:
4183 Added some code to exercise new IDL implementations.
4185 2002-02-06 Marc Mulcahy <marc.mulcahy@sun.com>
4187 * libspi/text.c: Provide implementation for getAttributes.
4189 2002-02-04 Bill Haneman <bill.haneman@sun.com>
4192 Incremented revision.
4194 * test/test-simple.c:
4195 Replaced use of deprecated g_main_iteration with
4196 g_main_context_iteration.
4198 2002-01-28 Padraig O'Briain <padraig.obriain@sun.com>
4201 Incremented revision for desktop alpha 2.
4203 2002-01-28 Mark McLoughlin <mark@skynet.ie>
4205 * libspi/remoteobject.[ch]: make RemoteObject and interface rather
4208 * test/simple-at.c: include netinet/in.h.
4210 2002-01-24 Mark McLoughlin <mark@skynet.ie>
4212 * cspi/spi_accessible.c: (Accessible_getRelationSet):
4213 use NULL, not CORBA_OBJECT_NIL.
4215 * libspi/accessible.c:
4216 (impl_accessibility_accessible_get_relation_set):
4217 allocate the sequence correctly.
4219 * libspi/remoteobject.h: kill spi_remote_object_new.
4221 * test/test-simple.c: (validate_accessible): add code
4222 to test relation sets, now all we need is to figure
4223 out how to excercise this code path :/
4225 2002-01-18 Michael Meeks <michael@ximian.com>
4227 * test/test-simple.c
4228 (key_listener_cb): consume the key.
4229 (test_keylisteners): update.
4230 (main): wait for any pending unrefs on events.
4232 * registryd/deviceeventcontroller.c
4233 (spi_controller_update_key_grabs): only re-issue the
4234 grab on a key release.
4235 (spi_device_event_controller_forward_key_event):
4236 refresh the keygrabs before we notify the listeners,
4237 to reduce the X ungrab / re-grab race.
4238 (spi_controller_register_with_devices): remove
4239 XSelectInput - we do that with the gdk_window_ call.
4240 (_spi_controller_device_error_handler): return a value.
4241 s/GDK_DISPLAY/spi_get_display/
4243 2002-01-17 Michael Meeks <michael@ximian.com>
4245 * registryd/deviceeventcontroller.c
4246 (_deregister_keygrab): don't blow out the later
4249 * test/test-simple.c (test_keylisteners): do a
4250 more intelligent validation.
4252 2002-01-14 Michael Meeks <michael@ximian.com>
4254 * atk-bridge/bridge.c
4255 (gnome_accessibility_module_init),
4256 (gnome_accessibility_module_shutdown): impl.
4257 (gtk_module_init): protect vs. double inits.
4258 (add_signal_listener): impl.
4259 (spi_atk_bridge_state_event_listener): kill
4260 (deregister_application): split out of
4261 (spi_atk_bridge_exit_func): here.
4263 2002-01-18 Bill Haneman <bill.haneman@sun.com>
4266 Added caret tracking when using magnifier, and
4267 now use text bounds for focus tracking of text elements, rather than
4268 the component bounds - this is helpful for short text fields in long
4269 table cells, at high magnification.
4271 2002-01-16 Bill Haneman <bill.haneman@sun.com>
4273 * registryd/deviceeventcontroller.c:
4274 Regression fix for keylistener de-registration; global keygrabs
4275 were not being released when deregisterKeystrokeListener was
4276 called in cspi, since
4277 Accessibility_DeviceEventController_deregisterKeystrokeListener
4278 was called with a zero-length keyset. That is because the cspi
4279 method, SPI_deregisterKeystrokeListener, does not take a keyset
4280 parameter but instead should remove all the key grabs held be a
4282 The code in impl_deregister_keystroke_listener was changed to copy
4283 the keylist from the listener instance previously registered with
4284 the DeviceEventController before releasing the grabs.
4286 * registryd/registry.c:
4287 * registryd/deviceeventcontroller.c:
4288 * libspi/spi-private.h:
4290 Changed spelling of "re-enterant" to "re-entrant" globally.
4292 2002-01-16 Bill Haneman <bill.haneman@sun.com>
4294 * test/test-simple.c:
4295 Changed key listeners test - the test was slightly mis-using the
4296 (admittedly poorly documented) SPI_generateKeyboardEvent API.
4297 It now uses '=' as the key event listened to and generated,
4298 relying on a keysym match rather than assuming that keycode 33
4299 is always equal to keysym '!'.
4301 2002-01-15 Bill Haneman <bill.haneman@sun.com>
4304 Changed simple-at to use a specific keyset, rather than
4305 SPI_KEYSET_ALL_KEYS - this helps minimize clashes with the window
4306 manager, desktop, etc.
4308 2002-01-11 Bill Haneman <bill.haneman@sun.com>
4310 * registryd/deviceeventcontroller.c:
4311 Replaced standard X error handler with a special handler that
4312 is non-fatal for failed keygrabs. This works around
4313 problems with keygrab clashes sometimes observed on
4315 Re-instated SPI_DEVICE_TYPE_MOUSE in enum (didn't reinstate
4316 mouse handling code as yet).
4318 2002-01-11 Bill Haneman <bill.haneman@sun.com>
4321 Incremented revision for desktop alpha release.
4324 Fixed a couple of the more glaring errors (still not
4327 2002-01-11 Michael Meeks <michael@ximian.com>
4329 * registryd/deviceeventcontroller.c
4330 (spi_device_event_controller_forward_key_event): kill
4331 XUngrabKey / XKeyGrab race.
4332 (spi_controller_grab_keyboard): rename to
4333 (spi_controller_update_key_grabs): this, and deal
4334 with incremental adding / removing grabs more
4336 (_register_keygrab): ensure we're not pending a remove.
4337 (spi_grab_mask_free): impl.
4338 (spi_controller_register_global_keygrabs): split out
4340 (handle_keygrab): impl.
4341 (_deregister_keygrab): impl.
4342 (spi_controller_deregister_global_keygrabs): impl.
4343 (spi_controller_update_key_grabs): re-issue the grab if
4344 we just recieved a notification.
4346 * test/test-simple.c (key_listener_cb): remove debug.
4348 * registryd/deviceeventcontroller.c
4349 (spi_controller_register_device_listener): after
4350 registering a global keygrab, actualy register it !
4351 don't wait for a timeout; doh !
4353 * registryd/deviceeventcontroller.[ch]: s/DeviceEvent/DE/
4354 to make it more readable / manipulable.
4355 s/grabmask/grab_mask/ s/refcount/ref_count/
4356 s/keyval/key_val/ s/modmask/mod_mask
4358 2002-01-08 Michael Meeks <michael@ximian.com>
4360 * registryd/deviceeventcontroller.c
4361 (spi_controller_register_with_devices): use gdk calls to
4363 (global_filter_fn): implement the filter.
4364 (spi_device_event_controller_check_key_event): rename to
4365 (spi_device_event_controller_forward_key_event): this & upd.
4366 (spi_get_display): replace with GDK_DISPLAY.
4368 * registryd/deviceeventcontroller.c
4369 (spi_controller_deregister_device_listener): unroll into
4370 (impl_deregister_keystroke_listener): here to simplify.
4371 (spi_controller_register_global_keygrabs): split cut and
4372 paste (!) out into (_register_keygrab): here, shorter & sweeter.
4373 (spi_controller_deregister_device_listener): remove.
4374 (impl_register_mouse_listener): remove, no mouse listener
4375 support in at-spi-1.0
4377 * registryd/registry.c
4378 (_device_event_controller_hook): kill.
4379 (spi_registry_init): upd.
4381 * registryd/deviceeventcontroller.c
4382 (spi_device_event_controller_class_init): upd.
4383 (spi_check_key_event): merge into.
4384 (spi_device_event_controller_check_key_event):
4385 here and kill strange static ev init, don't leak
4386 the x_event - nor dynamicaly allocate it.
4388 * registryd/registry-main.c (main): re-direct
4389 timeout to remove strange vtable mess.
4391 * registryd/deviceeventcontroller.c
4392 (remove_listener_cb): impl.
4393 (spi_controller_deregister_device_listener):
4394 fix re-enterancy hazard.
4396 2002-01-07 Michael Meeks <michael@ximian.com>
4398 * registryd/deviceeventcontroller.c
4399 (spi_device_event_controller_new): upd.
4400 (impl_notify_listeners_sync): upd. debug.
4401 (spi_notify_keylisteners): fix re-enterancy hazards,
4402 prettify, remove O(n*n) iteration.
4403 (spi_controller_grab_keyboard): fix iteration.
4404 (spi_check_key_event): re-format to suit coding style.
4405 Clean all the warnings - we're warning free.
4407 * registryd/deviceeventcontroller.h:
4408 * registryd/registry.h: make mutualy referential with
4409 typesafe forward references instead of (!) void pointer
4412 2002-01-11 Michael Meeks <michael@ximian.com>
4414 * cspi/spi_accessible.c (role_names): add a role name
4415 to sync this array with the enum; and make the regression
4418 2002-01-10 Michael Meeks <michael@ximian.com>
4420 * cspi/spi_registry.c (SPI_generateKeyboardEvent):
4421 allow expansion of enumeration & kill warning.
4423 * test/test-simple.c (key_listener_cb): impl.
4424 (test_keylisteners): impl.
4426 * cspi/spi-listener.h: make listener signatures const
4427 on the provided (const) events.
4429 * test/keysynth-demo.c: upd. to const events.
4431 * test/simple-at.c: ditto.
4433 2002-01-11 Bill Haneman <bill.haneman@sun.com>
4436 Rev the version to 0.5 (the previous tarball was named 0.4,
4437 even though the micro number was 3), so we need to rev upwards
4438 again for beta2/"desktop-alpha"
4441 Checked in a demo script, which requires editing before use!
4442 Proceed with caution.
4445 Fixed typo in header which was redefining SPI_ACTION_CLASS.
4447 * cspi/spi_accessible.c:
4448 Add a couple of missing enum initializations, and fix some enum
4451 * cspi/spi_registry.c:
4452 Add comment describing keystring parameter to SPI_generateKeyboardEvent.
4454 * docs/reference/cspi/at-spi-cspi-sections.txt:
4455 Remove/fix a couple of broken document references.
4458 Minor tweaks to the demo. We now (sigh) use Alt-SHIFTLOCK as well
4459 as Alt-Control to listen for commands, since on some systems
4460 Control-Alt may already be grabbed.
4462 2002-01-10 Bill Haneman <bill.haneman@sun.com>
4465 Update version number to 0.4 for Beta2.
4467 * libspi/accessible.c, libspi/accessible.h:
4468 Expose spi_accessible_construct, to enable libgail-gnome
4469 construction from spi_accessible subtype.
4471 * utils/magnifier.c:
4472 Workaround for bug in some non-gnome-compliant window managers
4473 which made magnifier resize improperly.
4475 2002-01-09 Bill Haneman <bill.haneman@sun.com>
4477 * libspi/accessible.c: (spi_accessible_new) :
4478 Move the test for SPI_IS_REMOTE_OBJECT to
4479 spi_accessible_new_return, fixing a bug and compile time warning.
4481 2002-01-08 Michael Meeks <michael@ximian.com>
4483 * registryd/registry.c (parse_event_type): remove strndup.
4485 * libspi/Makefile.am (libspi_la_SOURCES): remove
4486 sources already included in the headers section.
4488 * libspi/util.c: add.
4490 * libspi/spi-private.h: add.
4492 * registryd/registry.c: update to moved list iterators.
4494 2002-01-05 Michael Meeks <michael@ximian.com>
4496 * test/simple-at.c (main): upd. auto-module set to atk-bridge
4498 * test/test-simple.c (main): ditto.
4500 2002-01-04 Michael Meeks <michael@ximian.com>
4502 * libspi/accessible.c (spi_accessible_new): remove 2nd,
4503 redundant construct.
4505 * registryd/registry.c
4506 (get_listener_list): impl.
4507 (impl_accessibility_registry_register_global_event_listener):
4508 re-impl. to simplify using ~, remove dodgy const cast off.
4509 (parse_event_type): constify.
4510 (impl_accessibility_registry_deregister_global_event_listener_all):
4511 re-write, more efficiency and simplicity, kill re-enterancy
4513 (compare_listener_corbaref, compare_corba_objects),
4514 (compare_listener_quarks): define out.
4515 (impl_accessibility_registry_deregister_global_event_listener):
4516 re-write for effiency, and nail re-enterancy hazard.
4517 (impl_accessibility_registry_get_desktop_list): impl.
4518 (re_enterant_list_delete_link): impl.
4519 (re_enterant_list_foreach): impl.
4520 (remove_listener_cb): impl.
4521 (_registry_notify_listeners): kill.
4522 (notify_listeners_cb): impl.
4524 * cspi/spi_registry.c (SPI_freeDesktopList): impl.
4525 (SPI_getDesktopList): impl.
4527 * test/test-simple.c (test_desktop): test the methods.
4529 2002-01-03 Michael Meeks <michael@ximian.com>
4531 * cspi/spi_event.c (SPI_createAccessibleKeySet): dup the
4532 keystrings since we free them
4533 (SPI_freeAccessibleKeySet): in here.
4535 * libspi/accessible.c (spi_accessible_new): kill warning,
4536 wonder what is going on with the constructor here.
4538 2002-03-01 Bill Haneman <bill.haneman@sun.com>
4540 * libspi/accessible.c (spi_accessible_new ()) :
4541 Added check to see if AtkObject is an SpiRemoteObject before
4542 creating an SpiAccessible.
4544 2002-05-01 Bill Haneman <bill.haneman@sun.com>
4546 * registryd/deviceeventcontroller.c (spi_controller_grab_keyboard):
4547 Enable keygrabs using the Control modifier, now that they are
4548 working properly (they were previously disabled).
4551 Change the command keygrab for this demo to "Control+Alt", so as
4552 to conflict with fewer other key commands on the system; this
4553 means that the quit command for "simple-at" is now "Ctrl-Alt-q".
4555 Removed a pointlessly-chatty keylistener for unshifted keys
4556 (shifted keys are still reported).
4558 2002-02-01 Bill Haneman <bill.haneman@sun.com>
4560 * libspi/remoteobject.h:
4561 * libspi/remoteobject.c:
4562 Added definitions for special AtkObject subtype, required for
4563 support of remote components (specifically, used by BonoboControl
4564 accessibility implementation).
4566 2002-01-02 Marc Mulcahy <marc.mulcahy@sun.com>
4568 * cspi/spi.h: synched relation types with ATK
4570 * cspi/spi_accessible.c: Added implementations of
4571 AcccessibleRelation_* methods
4573 * idl/Accessibility_Relation.idl: added getRelationTypeName
4574 method. Synched known relation types with ATK. Allowed for
4575 relation type extension with the RELATION_EXTENDED type.
4577 * libspi/relation.c: Provided implementations for
4578 AccessibleRelation methods.
4580 2002-01-01 Bill Haneman <bill.haneman@sun.com>
4582 API tweaks for today's API 'freeze'.
4585 Added placeholder functions to allow future compatible expansion
4586 of the IDL interfaces.
4588 * idl/Accessibility_Registry.idl:
4589 Changed generateKeyEvent to generateKeyboardEvent. Changed
4590 signature of this method to accept an optional keystring in
4591 parameter (for complex text input synthesis) and changed use of
4592 simple 'boolean' parameter in registerKeystrokeListener to a
4593 struct, EventListenerMode.
4595 * cspi/spi_accessible.c:
4597 * cspi/spi_streamablecontent.c:
4598 Added references to AccessibleStreamableContent interface, and
4599 definition and implementation of AccessibleStreamableContent
4602 * cspi/spi_registry.c:
4604 Changed generateKeyEvent API to generateKeyboardEvent,
4605 taking a new (optional) keystring parameter to support complex
4610 Renamed directory (to better reflect its actual purpose, bridging
4611 from at-spi to ATK). The .so module is also now named
4614 * idl/Accessibility_Hypertext.idl:
4615 * libspi/accessible.c:
4616 * libspi/hypertext.h:
4617 * libspi/hypertext.c:
4618 Changed Accessibility_Hypertext to *not* derive from
4621 * cspi/spi_registry.c:
4622 Added list of legal event type names for 'window' events, which
4623 completes the registry event API.
4625 2001-12-22 Marc Mulcahy <marc.mulcahy@sun.com>
4627 * at-bridge/bridge.c: Added registration for separate
4628 "Atktext:text-changed::insert" and "AtkText:text-changed::delete"
4629 signals. If either of the first two parameters to the generic
4630 bridge signal handler are ints, they are passed on as event
4631 details. This allows an AT to determine what text was inserted.
4633 2001-12-21 Bill Haneman <bill.haneman@sun.com>
4635 * registryd/deviceeventcontroller.c:
4636 Fixed regressions in generateKeyEvent caused by the removal of
4637 gdk_init from registryd; we now use pure X calls to connect to the
4638 display, which makes sense because deviceeventcontroller already
4639 uses a fair bit of X API (should eventually be migrated to a
4640 'portability layer').
4642 * registryd/desktop.c:
4643 Fixed minor regression in spi_desktop_init, changed the way the
4644 desktop name is being set to work with new spi_base API
4645 (gobject-based, rather than AtkObject-based).
4647 * registryd/Makefile.am:
4648 Minor revision of makefile to use XTST_LIBS variable rather than
4649 hard-wiring the Xtst LD_ADD element.
4651 * test/keysynth-demo.c:
4652 Tweaked an output message; added initialization of the
4653 'keystrings' member of the "switch listener" key_set.
4655 * libspi/relation.c:
4656 Squashed compile-time warning.
4658 * libspi/accessible.c:
4659 Cosmetic and formatting fixes, renamed a static method.
4661 2001-12-18 Marc Mulcahy <marc.mulcahy@sun.com>
4663 * libspi/accessible.c
4665 * libspi/application.c
4668 * libspi/component.c
4669 * libspi/editabletext.c
4670 * libspi/hyperlink.c
4671 * libspi/hypertext.c
4673 * libspi/selection.c
4677 * registryd/desktop.c:
4678 Changed SpiBase to contain a GObject pointer rather than an AtkObject
4680 2001-12-17 Bill Haneman <bill.haneman@sun.com>
4682 * idl/Accessibility_Registry.idl:
4683 Added boolean member 'is_text' to DeviceEvent. This is for the
4684 use of key events, and helps prevent ambiguity between composed
4685 key strings and keysym names, since both may potentially be
4686 returned in the 'event_string' member.
4688 * at-bridge/bridge.c:
4689 * registryd/deviceeventcontroller.c:
4690 Use the 'is_text' member when notifying device event listeners.
4691 Knon issue: composed characters are not dealt with correctly by
4692 the global key listener implementation yet.
4694 2001-12-17 Bill Haneman <bill.haneman@sun.com>
4696 * at-bridge/bridge.c:
4697 Namespaced local static methods to spi_atk_bridge_* where
4698 previously named bridge_*, and spi_* elsewhere.
4700 * at-bridge/bridge.c:
4701 * cspi/bonobo/cspi-bonobo-listener.c:
4702 Added demarshalling/conversion for string member of
4703 Accessibility_DeviceEvent to AccessibleKeystroke.
4705 * registryd/deviceeventcontroller.c:
4706 Added code to fill the Accessibility_DeviceEvent key string value
4707 member for global key events (i.e. from XGrabKey), to match
4708 behavior of Accessibility_DeviceEvent from the toolkit key events
4709 from the bridge. Fixed timestamp in global key event notifications.
4712 Added printout of key event's string value to
4713 report_ordinary_key_event, for demo/debugging purposes.
4715 2001-12-15 Bill Haneman <bill.haneman@sun.com>
4717 * idl/Accessibility_Registry.idl:
4718 Removed Accessibility_KeyStroke structure in favor of generic
4719 Accessibility_DeviceEvent structure.
4720 Changed Accessibility_ControllerEventMask from a struct to an
4723 * at-bridge/bridge.c:
4724 Changed APIs to use DeviceEvent structure as above, and removed
4725 bogus casting between these event structures.
4727 * cspi/spi-listener.h:
4728 Added keystring member of AccessibleKeystroke structure, to enable
4729 matching on event "names" rather than only hardware codes and
4733 Added keystrings member of AccessibleKeySet struct, to allow
4734 matching on event names (as above).
4735 Added declarations for SPI_createAccessibleKeySet and
4736 SPI_freeAccessibleKeySet. Due to changes in libspi, we now pass
4737 event modmasks directly as unsigned ints rather than structs with
4738 refcounts, in the DeviceEventController methods.
4740 * cspi/spi_registry.c:
4741 Add SPI_createAccessibleKeySet and SPI_freeAccessibleKeySet methods.
4743 * cspi/spi-roletypes.h:
4744 Added documentation of newly added SPI Roles.
4746 * cspi/bonobo/cspi-bonobo-listener.c:
4747 Changes in support of API changes above.
4749 * libspi/accessible.c:
4750 Converted APIs to use DeviceEvent structure (see IDL changes
4753 * registryd/deviceeventcontroller.c:
4754 Added DEControllerGrabMask structure to track keygrabs not only by
4755 modmask but by keyset as well; this allows us to do "global"
4756 (i.e. X) keygrabs on a per-key or keyset basis rather than always
4757 grabbing on AnyKey and then filtering after-the-fact.
4758 Bugfixes for event filtration mean that we don't get false matches
4759 on SPI_KEY_RELEASED, when only SPI_KEY_PRESSED was requested.
4761 * registryd/deviceeventcontroller.c:
4762 Namespaced a number of static methods to use spi_ prefix. Major
4763 revision to internals of global (i.e. X) key grabs.
4765 * registryd/deviceeventcontroller.h:
4766 Removed keymask_list and added keygrabs_list to
4767 SpiDeviceEventController struct.
4770 Added use of SPI_createAccessibleKeySet API when creating a
4771 listener for only one key. Attach a listener to "shift spacebar
4772 SPI_KEY_RELEASE" as a demonstration. Changed (incorrect) usage of
4773 X key event names to SPI key event names, so that listeners are
4774 registered for (SPI_KEY_PRESSED | SPI_KEY_RELEASED), for instance.
4776 * test/keysynth-demo.c:
4777 Changed (incorrect) use of X key event names (KeyPressed,
4778 KeyReleased) to SPI enums SPI_KEY_PRESSED and SPI_KEY_RELEASED.
4781 2001-12-12 Bill Haneman <bill.haneman@sun.com>
4783 * libspi/accessible.c:
4784 Convert all AtkRole enumerations to Accessibility_Role enums when
4785 getting a role from an AtkObject.
4787 * cspi/spi_accessible.c:
4788 Complete the conversion of Accessibility_Role enums at runtime to
4789 AccessibleRole (SPI_ROLE_*) roles in Accessible_getRole, so that
4790 role enums correctly match those given in spi-roletypes.h.
4791 Re-synchronize the local names list for AccessibleRole_getName ().
4792 AccessibleRole_getName is now deprecated, since it duplicates the
4793 more reliable Accessible_getRoleName.
4794 Added some role types from Accessibility_Role.idl.
4796 * idl/Accessibility_Role.idl:
4797 Added some role types used by AtkRole.
4799 2001-12-12 Bill Haneman <bill.haneman@sun.com>
4802 * cspi/spi_registry.c:
4804 * cspi/cspi-bonobo-listener.c:
4805 Namespaced all methods that did not begin with an "SPI_" or
4806 "Accessible" prefix to "SPI_".
4809 Homogenized internal function namespace to "cspi_" for statics.
4812 Patched tests to use the new CSPI API.
4814 * docs/reference/cspi/at-spi-cspi-sections.txt:
4815 Updated docs to reflect namespace changes, and added a number of
4816 methods to the documentation.
4818 * registryd/registry.c:
4819 Changed use of strings and string hashes in listener event
4820 matching and parse_event_string to use GQuark, which is guaranteed
4823 * registryd/registry.h:
4824 Squashed annoying warning.
4826 * idl/Accessibility_Role.idl:
4827 Extended range of available Accessibility_Role values.
4829 * cspi/spi_accessible.c:
4830 Re-ordered role names.
4832 2001-12-12 Bill Haneman <bill.haneman@sun.com>
4834 * idl/Accessibility_Value.idl:
4835 Revert use of union back to CORBA_double, since the double type is
4836 more efficient and can contain the other types without loss of
4839 * idl/Accessibility_Accessible.idl:
4840 Added method Accessibility:Accessible:getRoleName, to complement
4841 Accessibility:Accessible:getRole.
4843 * cspi/spi_accessible.c:
4845 Added C binding for above, Accessible_getRoleName (), and changed
4846 signature of Accessible_getRole () to return an AccessibleRole.
4848 * cspi/spi-roletypes.h:
4849 Changed AccessibleRole_getName to return a char * instead of a
4850 const char *. This method is now at least temporarily deprecated
4851 in favor of asking Accessibles for their RoleNames directly.
4854 Revert to match Accessibility_Value.idl;
4858 Change signature of AccessibleValue methods to use double rather
4862 * cspi/spi_accessible.c:
4863 Changed Accessible_getRole to return an AccessibleRole enum rather
4864 than a UTF-8 string. The UTF-8 string can still be obtained via
4865 AccessibleRole_getName ().
4867 * test/test-simple.c:
4868 Add test_action. Small fixup to match API change to Accessible_getRole.
4871 Bugfix for get_action_from_servant ().
4873 2001-12-11 Michael Meeks <michael@ximian.com>
4875 * libspi/libspi.h: remove registry.h and
4876 desktop.h, deviceeventcontroller.h
4878 * libspi/Makefile.am: remove registry.[ch],
4879 desktop.[ch], deviceeventcontroller.[ch]
4881 * registryd/Makefile.am: add registry.[ch],
4882 desktop.[ch], rename registryd.c to registry-main.c.
4883 add deviceeventcontroller.[ch]
4885 2001-12-11 Bill Haneman <bill.haneman@sun.com>
4888 Replace setenv() call with putenv ().
4890 * libspi/component.c:
4891 Bugfix in AccessibleComponent_getExtents (),
4894 2001-12-11 Michael Meeks <michael@ximian.com>
4896 * libspi/image.c (impl_getImageExtents): impl.
4897 (spi_image_class_init): upd.
4900 (AccessibleImage_getImageDescription): fix daft bug
4903 * test/test-simple.c (global_listener_cb): update
4904 to only quit if not --poke
4905 (main): catch --poke.
4906 (validate_accessible): upd. dumping, call test_image
4909 * libspi/Makefile.am (IDL_DEPS): fixup the IDL
4912 * idl/Accessibility.idl: update all IDL includes.
4914 * idl/*.idl - rename to namespace - this sucks, blame
4915 mjs' bad decision for oafd.
4917 * test/test-simple.c (create_test_window): add more tests.
4918 (create_tree): split this out.
4919 (validate_accessible): bugfix.
4921 2001-12-11 Michael Meeks <michael@ximian.com>
4923 * cspi/bonobo/cspi-bonobo-listener.c:
4924 (cspi_kestroke_listener_unref),
4925 (cspi_event_listener_unref): impl. undoing previous
4926 homenous environment - for Bill.
4928 * cspi/spi_table.c (long_seq_to_array): use
4931 * cspi/spi_main.c: split out all bonoboish bits into
4934 * cspi/spi-impl.h: upd. typedefs.
4936 * cspi/spi_registry.c: update to lowlevel API,
4937 return booleans to indicate success in some places.
4939 * cspi/spi_event.c: update to lowlevel API.
4941 * cspi/bonobo/Makefile.am: add.
4943 * cspi/bonobo/cspi-lowlevel.h: add
4945 * cspi/bonobo/cspi-bonobo.c: add
4947 * cspi/bonobo/cspi-bonobo-listener.[ch]: impl.
4949 * cspi/Makefile.am: remove spi-listener-impl.[ch],
4950 (SUBDIRS): add bonobo, link in the libs.
4952 * cspi/spi-util.c: kill this file.
4954 * TODO: merge in my bits.
4956 2001-12-11 Michael Meeks <michael@ximian.com>
4958 * test/test-simple.c (test_value, test_table, main):
4959 remove unused variables causing warnings.
4961 * configure.in: cleanup checks - require gail.
4963 2001-12-11 Bill Haneman <bill.haneman@sun.com>
4966 Changed Value interface to use SValue (scalars) rather than
4967 assuming all values are floats. This allows floats, doubles,
4968 longs, shorts, and unsigned values to be manipulated.
4969 Introduced Accessibility:SValue union.
4972 Updated to use new API above, and to work correctly with GValues
4973 of different types in AtkValue.
4976 Updated to use new API above. cspi's API is as yet unchanged.
4979 Updated the Value revision action item.
4981 2001-12-10 Bill Haneman <bill.haneman@sun.com>
4983 * test/test-simple.c:
4984 Added test_table (GtkTreeView widget in test window to follow).
4985 Un-commented test_value, added GtkRange widget.
4986 Added GtkTreeView widget with GtkListStore. It passes regression
4987 test but leaks one SPI object for some reason.
4990 Fixed bug in impl__set_currentValue.
4992 2001-12-10 Michael Meeks <michael@ximian.com>
4994 * cspi/spi_text.c: audit for exception handling,
4995 tolerating NULL object references safely etc.
4997 * cspi/spi_value.c: ditto.
4999 * cspi/spi_table.c (AccessibleTable_getSummary),
5000 (AccessibleTable_getAccessibleAt),
5001 (AccessibleTable_getRowHeader),
5002 (AccessibleTable_getColumnHeader),
5003 (AccessibleTable_getCaption): fix bugs hidden by
5005 (long_seq_to_array): impl.
5006 (AccessibleTable_getSelectedRows),
5007 (AccessibleTable_getSelectedColumns): use it.
5009 2001-12-10 Bill Haneman <bill.haneman@sun.com>
5012 Added a TODO list (rough and short for now).
5014 * cspi/spi_hyperlink.c:
5015 * cspi/spi_hypertext.c:
5016 Fixed macro name typos, and remove use of obsolete macro in
5017 AccessibleHyperlink_getLink.
5019 * cspi/spi_action.c:
5020 * cspi/spi_accessible.c:
5021 * cspi/spi_application.c:
5022 * cspi/spi_component.c:
5023 * cspi/spi_selection.c:
5026 Documentation fixes (removed return values from ref/unref methods).
5028 2001-12-10 Michael Meeks <michael@ximian.com>
5030 * cspi/spi_action.c: audit for exception handling,
5031 tolerating NULL object references safely etc.
5033 * cspi/spi_accessible.c: ditto.
5035 * cspi/spi_component.c: ditto.
5037 * cspi/spi_editabletext.c: ditto.
5039 * cspi/spi_hyperlink.c: ditto.
5041 * cspi/spi_hypertext.c: ditto.
5043 * cspi/spi_image.c: ditto.
5045 * cspi/spi_selection.c: ditto.
5047 2001-12-10 Michael Meeks <michael@ximian.com>
5049 * configure.in: use cspi/libspi.pc.in instead.
5051 * Makefile.am (pkgconfig_DATA): upd. to match.
5053 * test/simple-at.c (report_focus_event): kill hacks around
5054 bad return values, use putenv not setenv
5056 * libspi/desktop.c (impl_desktop_get_child_at_index): don't
5057 fire ChildGone - I killed it.
5059 * libspi/component.c
5060 (impl_accessibility_component_get_extents): remove
5063 * idl/Accessible.idl: kill ChildGone exception.
5065 * cspi/*.[ch]: kill int return from ref / unref.
5067 * cspi/spi_main.c (cspi_object_add_check): fold into
5068 (cspi_object_add): here.
5070 * cspi/spi_component.c (AccessibleComponent_getExtents):
5071 handle exceptions elegantly.
5073 * cspi/spi-private.h (cspi_check_ev_return),
5074 (cspi_return_if_fail): impl.
5076 * cspi/spi_accessible.c: use extensively.
5077 (AccessibleStateSet_equals): add direct compare check.
5079 * cspi/spi_selection.c: tolerate NULL objs, and check
5080 exceptions before return.
5082 * cspi/spi-util.c (cspi_warn_ev): rename to
5083 (cspi_check_ev): this & don't pass ev in; no point.
5085 2001-12-10 Michael Meeks <michael@ximian.com>
5087 * test/test-simple.c: use putenv not setenv
5088 (get_environment_vars): more chatty if you're not using
5091 * test/simple-at.c: do the setenv so more people see the
5094 2001-12-10 Bill Haneman <bill.haneman@sun.com>
5096 * libspi/registry.c:
5097 Changed check of CORBA_environment on notification to be a warning
5098 instead of an error for the moment, since we can recover from this
5099 error when caused by a queued notification from a dead app.
5102 Fixes for spi_value, use G_TYPE_DOUBLE for atk_value values (as
5103 used by all current implementors of AtkValue), and coerce to
5104 CORBA_float. (Proper general case fix may require change to Value.idl).
5106 2001-12-09 Bill Haneman <bill.haneman@sun.com>
5110 * cspi/spi_accessible.c:
5111 Documentation fixes: added user_data params to documentation for
5112 listeners and callbacks.
5114 * cspi/spi_accessible.c:
5115 Changed AccessibleStateSet_compare to return a
5116 StateSet rather than return the difference set into a third parameter.
5119 2001-12-09 Bill Haneman <bill.haneman@sun.com>
5122 Replace use of AM_PROG_XML_I18N_TOOLS macro with AC_PROG_INTLTOOL.
5123 remove 'dnl' comment line from AC_OUTPUT (autoconf doesn't like
5127 Remove subdirectory po from SUBDIRS for now.
5129 * at-bridge/bridge.c:
5130 Beefed up a couple of debug printouts.
5131 One-line fix for signal notification name formatting.
5133 * libspi/accessible.c:
5134 Added assertion to spi_accessible_new ().
5136 * libspi/application.c:
5137 Put #ifdef qualifiers around a printf.
5140 Fixed derivation (from BONOBO_OBJECT to SPI_BASE).
5142 * registryd/Makefile.am:
5144 Replaces use of XML_I18N_MERGE_SERVER_RULE with
5145 INTLTOOL_SERVER_RULE macro.
5148 Added an event listener for several ATK signals, for
5149 testing and debugging. Removed a few g_warnings.
5150 Added test output if focussed item implements the Value interface.
5152 * test/test-simple.c:
5153 Added test_value () function (known not to pass at the moment, so
5154 not actually called yet.
5156 2001-12-08 Michael Meeks <michael@ximian.com>
5158 * at-bridge/bridge.c (bridge_focus_tracker),
5159 (emit_eventv): fix the same ref. leak.
5160 (register_atk_event_listeners): don't leak.
5162 * cspi/spi-listener-impl.c (cspi_event): more
5163 protection from client code.
5165 * test/test-simple.c (test_desktop): unref the app.
5167 * test/Makefile.am: upd. TESTS.
5169 * at-bridge/bridge.c (bridge_exit_func): release the registry.
5171 * test/keysynth-demo.c (keysynth_exit): unref the listeners.
5173 * cspi/spi_accessible.c (Accessible_queryInterface): constify.
5175 * cspi/spi_registry.c: constify in strings.
5176 (deregisterGlobalEventListenerAll): don't release the ref.
5178 * cspi/spi.h: start removing redundant / conflicting
5179 gtkdoc comments, making the API readable at a glance :-)
5181 * cspi/spi_event.c (AccessibleEventListener_unref): impl.
5183 * test/keysynth-demo.c (keysynth_exit, main): upd.
5185 * test/simple-at.c (main, simple_at_exit): upd.
5187 * test/test-simple.c (unutterable_horror): kill.
5188 (utterable_normal_derefs): kill.
5189 (main): upd & do a setenv before gtk_init, so that we
5190 can use memprof - and to save the pain of remembering
5191 this, if we're running under memprof - don't exit.
5193 * cspi/spi_main.c (SPI_exit): return exit status
5195 (SPI_event_quit): impl.
5196 (SPI_event_main): simplify.
5197 (cspi_is_gnome_app): kill.
5198 (SPI_init): kill isGNOMEapp arg.
5200 * at-bridge/bridge.c (register_atk_event_listeners):
5201 re-instate the unref.
5202 (bridge_exit_func): don't re-activate the registry,
5203 protect vs. theoretical re-entry, use the
5204 AT_BRIDGE_SHUTDOWN env. var to determine whether to
5205 assert a clean shutdown - for regression tests.
5207 2001-12-08 Abel Cheung <maddog@linux.org.hk>
5209 * configure.in: Comment out dummy i18n support for now,
5210 otherwise it fails to build.
5211 * idl/Makefile.am: Add Selection.idl and Hypertext.idl to
5212 EXTRA_DIST. They are missing in tarball.
5214 2001-12-07 Michael Meeks <michael@ximian.com>
5216 * util/magnifier.c: kill bonobo activation reg. race.
5218 * libspi/component.c
5219 (impl_accessibility_component_get_extents): make it match
5222 * libspi/registry.c (_registry_notify_listeners):
5223 re-remove X headers & reconcile conflicts.
5224 (spi_listener_struct_free): bad conflict resolve.
5225 (impl_accessibility_registry_register_application):
5226 more bad merging fixed.
5227 (impl_accessibility_registry_deregister_application): ditto.
5228 (spi_registry_new): ditto.
5229 (spi_registry_init): don't have an applications field.
5231 [ merge fixups2 branch to here ]
5232 2001-12-07 Michael Meeks <michael@ximian.com>
5234 * test/simple-at.c (report_focus_event),
5235 (report_focussed_accessible): remove g_warning debug.
5237 2001-12-07 Michael Meeks <michael@ximian.com>
5239 * test/test-simple.c (validate_tree): comment out some checks.
5240 (test_desktop): app now not registered idly - horay.
5242 2001-12-07 Michael Meeks <michael@ximian.com>
5244 * cspi/spi_registry.c
5245 (registerAccessibleKeystrokeListener): clean, stop it leaking
5246 great swathes of memory, and device event controller references.
5247 ensure we always pass valid sequences.
5248 (deregisterAccessibleKeystrokeListener): ditto.
5249 (generateKeyEvent): upd.
5251 * at-bridge/bridge.c (bridge_key_listener): handle
5252 registry dead exception gracefully.
5253 (bridge_focus_tracker, emit_eventv): free ev.
5255 * test/simple-at.c (report_focus_event): fix polarity.
5257 * libspi/application.c (notify_listeners): kill the ev
5258 argument, and make sure we init the ev we use.
5259 (spi_application_object_event_listener): split out a chunk
5260 (get_atk_object_ref): here & fixup.
5261 (reverse_lookup_name_for_toolkit_event): make const.
5262 (spi_application_toolkit_event_listener): fixup, kill leaks
5265 * at-bridge/bridge.c (register_atk_event_listeners):
5266 don't unref the noop object - causes grief.
5268 * libspi/registry.c: remove the X headers.
5269 turn off the debug churn.
5271 * libspi/accessible.c (spi_accessible_new_return): only
5272 release the ref if we are supposed to [doh]
5274 * test/simple-at.c (report_button_press, report_focus_event):
5275 guard vs. unexpected exit.
5277 * at-bridge/bridge.c (gtk_module_init): prune printf.
5278 (bridge_exit_func): fix app unref.
5280 * libspi/Makefile.am: don't install registry or desktop.h
5282 * libspi/*.h: update includes.
5284 * libspi/application.h: don't include ourself, or
5285 other redundant headers.
5287 2001-12-06 Michael Meeks <michael@ximian.com>
5289 * libspi/accessible.c
5290 (get_accessible_from_servant): impl.
5291 Upd. all CORBA impl.s to use it killing cut and paste.
5293 * cspi/spi_main.c (cspi_cleanup): guard vs. double
5295 (SPI_init): register atexit cleanup handler here.
5297 2001-12-06 Michael Meeks <michael@ximian.com>
5299 * at-bridge/bridge.c (gtk_module_init): g_error on
5300 activation exception
5302 2001-12-06 Michael Meeks <michael@ximian.com>
5304 * at-bridge/bridge.c (gtk_module_init): some sort of
5305 confusing merge clash - reverted.
5306 (bridge_idle_init): ditto.
5308 * test/test-simple.c (main, utterable_normal_derefs):
5309 merge from Bill - somehow not committed.
5311 2001-12-06 Michael Meeks <michael@ximian.com>
5313 * libspi/value.c (spi_value_class_init): upd.
5314 (spi_value_finalize): kill.
5316 * libspi/table.c (spi_table_finalize): kill.
5317 (spi_table_interface_new): upd.
5318 (spi_table_class_init): upd.
5319 (get_table_from_servant): impl.
5320 Upd. all CORBA impl.s to use it killing yet more cut and paste.
5322 * libspi/selection.c (spi_selection_finalize): kill.
5323 (spi_selection_interface_new): upd.
5324 (spi_selection_class_init): upd.
5325 (get_selection_from_servant): impl.
5326 Upd. all CORBA impl.s to use it killing yet more cut and paste.
5328 * libspi/relation.c (spi_relation_finalize): kill.
5329 (spi_relation_class_init, spi_relation_new): upd
5331 * libspi/image.c (spi_image_finalize): kill.
5332 (spi_image_class_init): upd.
5333 (spi_image_interface_new): upd.
5334 (get_image_from_servant): impl.
5335 Upd. all CORBA impl.s to use it killing yet more cut and paste.
5337 * libspi/hyperlink.c (spi_hyperlink_class_init): upd.
5338 (spi_hyperlink_finalize): kill.
5339 (spi_hyperlink_new): upd.
5340 (get_hyperlink_from_servant): impl.
5341 Upd. all CORBA impl.s to use it killing yet more cut and paste.
5343 * libspi/hypertext.c (spi_hypertext_interface_new): upd.
5344 (spi_hypertext_finalize): kill.
5345 (spi_hypertext_class_init): upd.
5346 (get_hypertext_from_servant): impl.
5347 Upd. all CORBA impl.s to use it killing yet more cut and paste.
5349 * libspi/editabletext.c (spi_editable_text_finalize): kill.
5350 (spi_editable_text_interface_new): upd.
5351 (get_editable_text_from_servant): impl.
5352 Upd. all CORBA impl.s to use it killing yet more cut and paste.
5354 * libspi/text.c (get_text_from_servant): impl.
5355 All impls - update to use it killing more cut and paste,
5356 also fix bad string returns on duff args ( a somewhat
5357 impossible case to handle - but hey ).
5358 (spi_text_construct): impl.
5359 (spi_text_interface_new): upd.
5360 (spi_text_object_finalize): kill.
5362 * libspi/component.c
5363 (accessibility_component_object_finalize): kill.
5364 (spi_component_class_init): upd.
5365 (get_component_from_servant): impl. helper to kill cut & paste.
5366 (impl_accessibility_component_contains):
5367 (impl_accessibility_component_get_accessible_at_point):
5368 (impl_accessibility_component_get_position):
5369 (impl_accessibility_component_get_extents):
5370 (impl_accessibility_component_get_mdi_z_order):
5371 (impl_accessibility_component_get_layer):
5372 (spi_component_interface_new): upd.
5374 * libspi/action.c (spi_action_finalize): kill.
5375 (spi_action_class_init): upd. inherit from SpiObject.
5376 (spi_action_interface_new): upd.
5377 (get_action_from_servant): impl. helper to reduce cut & paste.
5378 (impl_getKeyBinding, impl_getName, impl_doAction),
5379 (impl_getDescription): Use it everywhere.
5381 * cspi/spi_main.c (get_live_refs): a pointer hash.
5382 (spi_object_hash, spi_object_equal): comment out.
5383 There are issues with CORBA object hashing that need
5386 * libspi/application.c (spi_application_init),
5387 (spi_application_new): upd.
5389 * libspi/accessible.c (spi_accessible_object_finalize): kill.
5390 (spi_accessible_class_init): upd.
5391 s/accessible/object/ in epv methods.
5393 2001-12-05 Bill Haneman <bill.haneman@sun.com>
5395 * at-bridge/bridge.c:
5396 Reorder the bridge initialization into the bridge gtk_module_init,
5397 an immediate call to bridge_register_app, and an idle_add for
5398 register_atk_event_listeners (the only code that *must* wait until
5399 GTK+ is initialized) via bridge_idle_add. Bridge_register_app does
5400 the activation, creates the application's Accessible object, and
5401 queues the bridge_idle_init function. Restored call to
5402 Accessibility_Registry_deregisterApplication().
5403 Prior to making this call we obtain a new reference to the
5404 registry, which is a temporary hack that helps us handle apps that
5405 shut down the bonobo mainloop before we get there.
5407 * libspi/registry.c:
5408 Fix string leakage in debug block, and don't segv if a an app
5409 dies before its event notifications have been propagated.
5412 Modify cspi_check_ev() to call g_warning() rather than g_error(),
5413 as stopgap measure until we get proper exception handling when
5414 objects die during or before interrogation.
5418 Moved use of isGNOMEApp flag from SPI_event_main to SPI_init.
5419 Also changed default value of is_gnome_app to TRUE.
5422 * test/keysynth-demo.c:
5423 Changed use of SPI_init and SPI_event_main to reflect API change above.
5426 Made report_focus_event check the warning value from getName
5427 before reporting on focussed accessible; simplifies handling of
5428 notifications from dead objects.
5430 * test/test-simple.c: (Changes not in this patch since source is
5433 2001-12-05 Michael Meeks <michael@ximian.com>
5435 * registryd/registryd.c (main): protect against
5436 bonobo-activation startup race condition.
5438 * cspi/spi_main.c (cspi_object_add_check): cope
5439 with the exception elegantly.
5441 * idl/Accessible.idl: decl. ChildGone
5443 * libspi/desktop.c (spi_desktop_dispose): impl.
5444 (spi_desktop_class_init): upd.
5445 (spi_desktop_add_application),
5446 (spi_desktop_remove_application),
5447 (abnormal_application_termination): impl.
5448 (impl_desktop_get_child_at_index): re-impl.
5451 (impl_accessibility_registry_deregister_application),
5452 (impl_accessibility_registry_register_application):
5453 kill excessive debug clutter.
5455 * test/test-simple.c (test_misc): test some NULL
5456 tolerance. (main): upd.
5458 * cspi/spi_main.c (cspi_accessible_is_a): a NULL
5459 implements no interfaces - so let's not crash.
5461 * cspi/spi_accessible.c (Accessible_queryInterface): ditto.
5463 * libspi/accessible.c (spi_accessible_new_return): impl.
5464 helper to calm the cut and paste, to cope with
5465 NULL AtkObjects effectively and efficiently, and to kill
5466 the referencing bugs.
5468 * libspi/table.c (impl_getAccessibleAt),
5469 (impl_getRowHeader, impl_getColumnHeader): upd.
5471 * libspi/hyperlink.c (impl_getObject): upd.
5473 * libspi/accessible.c
5474 (impl_accessibility_accessible_get_child_at_index): upd.
5476 * libspi/component.c
5477 (impl_accessibility_component_get_accessible_at_point): upd.
5479 * test/test-simple.c (test_editable_text, test_text): impl.
5482 * cspi/spi_editabletext.c
5483 (AccessibleEditableText_insertText): constify.
5485 * test/test-simple.c (focus_me): make more robust.
5487 * libspi/accessible.c: remove some printfs in methods that
5488 we test and work fine, so we can get a clean tree dump.
5490 * test/test-simple.c (validate_accessible),
5491 (validate_tree): make tree dumping pretty too.
5493 * at-bridge/bridge.c (bridge_signal_listener): upd. so
5494 it builds without debug on.
5496 * test/test-simple.c (validate_accessible): fix the most
5499 * cspi/spi_main.c (spi_object_release): leave the nicely
5500 blanked memory around if in debug mode.
5502 * cspi/spi-listener-impl.c (cspi_event): use add_check.
5504 [committed to fixups2]
5505 2001-12-05 Michael Meeks <michael@ximian.com>
5507 * libspi/editabletext.c
5508 (spi_editable_text_class_init): g_type_class_peek_parent,
5509 not interface peek - so we finalize cleanly.
5511 * libspi/accessible.c (spi_accessible_new): kill debug.
5513 * test/test-simple.c (validate_accessible): fix ref.
5514 leak, print strings before freeing them; sigh, comment a
5515 chunk out due to strangeness.
5516 (validate_tree): unref the child after use.
5518 * cspi/spi_component.c (AccessibleComponent_getLayer):
5519 add missing break statement, switch on zlayer not the
5520 uninitialized retval.
5522 * cspi/spi_main.c (cspi_object_add): add assert, local ref
5523 before (possibly re-entering) remote unref.
5525 * test/simple-at.c (main): unref the desktop.
5527 * cspi/spi_accessible.c (cspi_accessible_is_a): move
5530 * cspi/spi_main.c (cspi_accessible_is_a): here to
5531 isolate bonobo API usage more.
5533 * libspi/registry.c (impl_accessibility_registry_register_application):
5534 prune bogus comment.
5536 2001-12-04 Michael Meeks <michael@ximian.com>
5538 * test/test-simple.c (validate_tree): upd.
5539 IndexInParent check to make it more lucid.
5540 (validate_accessible): dump the tree.
5542 * libspi/accessible.c (de_register_public_ref),
5543 (get_public_refs): impl.
5544 (spi_accessible_new): make more efficient & intuitive.
5545 Now IndexInParent check works.
5547 2001-12-04 Michael Meeks <michael@ximian.com>
5549 * cspi/spi-util.h: remove.
5551 * cspi/spi.h: move SPI_freeString here
5553 * libspi/component.c (impl_accessibility_component_get_layer):
5555 (impl_accessibility_component_get_mdi_z_order): ditto,
5556 return -1 on error - is this ok ?
5558 * test/test-simple.c (test_application): impl.
5560 * cspi/spi_accessible.c (Accessible_getApplication),
5561 (Accessible_isApplication): impl.
5563 * libspi/registry.c (spi_listener_struct_free): release
5564 the CORBA reference too.
5566 * libspi/accessible.c
5567 (impl_accessibility_accessible_get_parent): fix ref leak.
5569 * libspi/registry.c (spi_registry_new): make the registry
5570 immortal - we don't want it to go away ever.
5572 * libspi/application.c
5573 (spi_accessible_application_finalize): impl. cleanup.
5575 * cspi/spi_registry.c
5576 (deregisterGlobalEventListenerAll),
5577 (deregisterGlobalEventListener),
5578 (deregisterAccessibleKeystrokeListener): fix ref leak.
5580 * cspi/spi_main.c (SPI_init): remove redundant ref.
5582 * test/test-simple.c (unutterable_horror): impl. to force a
5587 (impl_accessibility_registry_deregister_application): release
5588 the application when we de-register it.
5590 * at-bridge/bridge.c (bridge_exit_func): comment out shutdown
5591 until we have the infastructure to get it right.
5593 2001-12-03 Michael Meeks <michael@ximian.com>
5595 * libspi/Makefile.am: only build eventlistener.[ch]
5597 * libspi/accessible.c
5598 (impl_accessibility_accessible_get_child_at_index): don't leak.
5600 * at-bridge/bridge.c (bridge_exit_func): cope with an exit
5601 before we hit the idle handler.
5603 * cspi/spi-util.c (cspi_check_ev): g_error is far nicer for
5604 debugging than exit.
5606 * at-bridge/bridge.c (bridge_focus_tracker): fix ref issue.
5608 * libspi/listener.c (impl_notify_event): check source
5609 not NIL before unref.
5611 * libspi/registry.c (impl_registry_notify_event): ditto.
5613 * libspi/eventlistener.c
5614 (impl_accessible_event_notify_event): unref the source.
5616 * libspi/accessibleeventlistener.c
5617 (impl_accessible_event_notify_event): unref the source.
5619 * idl/Event.idl: remove 'hash_id' attribute - of no
5622 * libspi/application.c (notify_listeners): upd list
5624 (spi_application_object_event_listener),
5625 (spi_application_toolkit_event_listener): upd to do correct
5629 (_registry_notify_listeners): update.
5630 (parse_event_type): this method also leaks like a sieve.
5631 (impl_accessibility_registry_deregister_global_event_listener):
5632 fix ETYPE_WINDOW case.
5634 * libspi/application.c
5635 (impl_accessibility_application_register_object_event_listener):
5638 * libspi/hyperlink.c (impl_getObject): fix ref mistake.
5640 * libspi/hypertext.c (impl_getLink): ditto.
5642 * cspi/spi_main.c (cspi_object_add): remove
5643 bogus CORBA_Object_duplicate.
5645 * cspi/spi-listener-impl.c (cspi_event): dup/ref
5648 * cspi/spi_accessible.c
5649 (Accessible_getRelationSet): fix leak / referencing issue.
5651 * cspi/spi_main.c (spi_object_hash, spi_object_equal): impl.
5652 (cspi_object_add, cspi_object_unref): upd.
5653 (spi_object_release, get_live_refs): impl.
5654 (cspi_cleanup): simplify.
5656 * *.[ch]: s/boolean/SpiBoolean/
5658 * cspi/spi_accessible.c (role_names): actualy order so it
5659 corresponds with the enum !
5661 * test/test-simple.c (test_roles): check some role strings
5662 vs. enums to detect offset errors.
5664 2001-12-01 Michael Meeks <michael@ximian.com>
5666 * cspi/spi_main.c (cspi_object_add_check): impl. helper.
5668 * cspi/spi_accessible.c (Accessible_getChildAtIndex):
5670 (Accessible_getChildAtIndex): use cspi_add_check so we
5671 check the ev before using a (possibly) invalid value.
5673 * libspi/accessible.c
5674 (impl_accessibility_accessible_get_parent): don't segv
5677 * at-bridge/bridge.c (gtk_module_init): upd.
5678 (bridge_property_event_listener): don't leak strings
5680 (bridge_state_event_listener),
5681 (bridge_property_event_listener): don't use a static
5682 buffer in case of recursive event emission &
5683 re-enterancy - split out the swathe of cut and paste
5685 (emit_eventv): and fix 2 ref leaks here & comply to the
5687 (bridge_register_app): rename to
5688 (bridge_idle_init): this and kill arg parsing, split
5689 various inits & bonobo-activation registration to module
5690 init time, kill referencing error.
5691 (bridge_exit_func): fix the same leak.
5692 (bridge_focus_tracker): don't leak event structures
5694 (bridge_signal_listener): more leakage and cut & paste
5696 (bridge_key_listener): return the result - FIXME is
5697 this polarity correct ?
5698 (accessibility_keystroke_from_atk_key_event): rename
5699 (accessibility_init_keystroke_from_atk_key_event): and stop
5701 (gtk_module_init): return a value - not that it is checked by
5703 (bridge_key_listener): register my horror at casting between
5704 IDL defined structs.
5705 (bridge_get_registry): kill - not used.
5707 * cspi/spi_accessible.c (Accessible_getRole): make return const.
5709 * test/test-simple.c (test_roles): impl.
5710 (test_desktop, validate_accessible, validate_tree): impl.
5712 * cspi/spi_accessible.c (role_names): fixup bogus
5713 MAX_ROLES setup, make constants const for efficient linkage
5714 (AccessibleRole_getName): conform to coding style, make
5717 2001-11-30 Michael Meeks <michael@ximian.com>
5719 * cspi/spi.h: add missing prototype.
5721 * libspi/registry.c (spi_listener_struct_new): fix sig.
5723 * test/Makefile.am: add test-simple
5725 * test/test-simple.c: add
5727 * test/test.sh: add.
5729 * cspi/spi_main.c (SPI_init): make SPI_inited module global,
5731 * at-bridge/bridge.c (gtk_module_init): don't do an idle init,
5732 do it straight - since otherwise we often get an activation race.
5734 [ work before Bill duplicated a chunk of it ... ]
5735 2001-11-30 Michael Meeks <michael@ximian.com>
5737 * libspi/keystrokelistener.c
5738 (spi_keystroke_listener_class_init): fixup arg
5741 * libspi/eventlistener.c
5742 (spi_event_listener_class_init): ditto.
5744 * tests/test.sh: add.
5746 * cspi/spi-listener-impl.h: update macros.
5748 * cspi/spi-listener-impl.c
5749 (cspi_event_listener_remove_callback): add
5750 correct pre-conditions.
5752 * cspi/spi_main.c (SPI_exit): guard vs. double
5753 exits, exit the mainloop nicely.
5754 (SPI_event_main): make more sense.
5755 (SPI_init): move the atexit evilness here so we
5756 always do it (yuck).
5757 (SPI_event_main): upd.
5759 * test/simple-at.c: update for listener changes.
5761 * registryd/registryd.c (main): prune kruft.
5763 * libspi/libspi.h: upd.
5765 * libspi/eventlistener.[ch]: rename broken macros.
5767 * libspi/accessibleeventlistener.[ch]: remove.
5769 * libspi/*.[ch]: IS_SPI_... -> SPI_IS_...
5771 * test/test-simple.c: Add - automated tests.
5773 * cspi/spi-listener-impl.c (cspi_event),
5774 (cspi_key_event): add user_data to invoke.
5775 (cspi_keystroke_listener_finalize): impl.
5776 (cspi_keystroke_listener_class_init): upd.
5779 (createAccessibleEventListener),
5780 (AccessibleEventListener_addCallback),
5781 (createAccessibleKeystrokeListener),
5782 (AccessibleKeystrokeListener_addCallback): upd.
5784 * libspi/deviceeventcontroller.c
5785 (spi_device_event_controller_check_key_event): add public proto.
5788 (impl_accessibility_registry_deregister_global_event_listener):
5789 always init listeners.
5790 (_registry_notify_listeners): yes it is.
5792 * cspi/spi-listener-impl.c (cspi_key_event):
5794 (cspi_event_listener_finalize): impl.
5795 (cspi_event_listener_class_init): hook up.
5796 (event_handler_new, event_handler_free),
5797 (event_list_remove_by_callback): impl.
5798 (cspi_event_listener_remove_callback),
5799 (cspi_keystroke_listener_remove_callback),
5800 (cspi_keystroke_listener_add_callback),
5801 (cspi_event_listener_add_callback): upd.
5803 * libspi/keystrokelistener.c
5804 (keystroke_listener_object_finalize): kill
5805 (spi_keystroke_listener_class_init): upd.
5806 (spi_keystroke_listener_add_callback),
5807 (spi_keystroke_listener_remove_callback): kill,
5809 (impl_key_event): prune drasticaly.
5811 * libspi/eventlistener.c
5812 (spi_event_listener_add_callback),
5813 (spi_event_listener_remove_callback): kill, use
5815 (impl_accessible_event_notify_event): upd.
5816 (spi_event_listener_object_finalize): remove.
5818 * libspi/Makefile.am: use eventlistener.[ch]
5820 2001-12-04 Bill Haneman <bill.haneman@sun.com>
5822 * libspi/registry.c (_registry_notify_listeners):
5823 Changed listener loop iteration to use preferred convention.
5824 Got rid of string memory leaks caused be calling g_strconcat
5825 inside function calls.
5827 * libspi/registry.c (parse_event_type):
5828 Stopped g_strconcat memory leaks, free the g_strsplit return,
5829 g_strdup the split pieces when used, etc.
5831 2001-12-04 Bill Haneman <bill.haneman@sun.com>
5834 Change method 'compare' to return a 'difference set' rather than
5835 taking a StateSet as an out parameter (more Java-friendly).
5837 * idl/Accessible.idl:
5838 Added CORBA struct 'BoundingBox', to faciliate API changes below:
5840 * idl/Component.idl:
5842 Changed methods 'getExtents' and 'getImageExtents' in these
5843 interfaces to return a BoundingBox structure.
5844 (getPosition and getSize are redundant and possibly should be
5845 removed, rather than creating a corresponding Point struct.)
5847 * cspi/spi_component.c:
5848 Modify implementation of getExtents to reflect the above IDL
5853 Add (missing) AccessibleImage_getExtents () API.
5855 * docs/reference/cspi/at-spi-cspi-sections.txt:
5856 Added AccessibleImage_getImageExtents () to docs.
5858 2001-12-03 Bill Haneman <bill.haneman@sun.com>
5860 * idl/Component.idl:
5861 Added two methods, getLayer () and getMDIZOrder (), to reflect
5862 the new ATK methods atk_object_get_layer and
5863 atk_object_get_mdi_z_order. (Which arguably should be part of the
5864 AtkComponent API and AtkObject). Also added an enum,
5865 ComponentLayer, for the first method's return value.
5867 * libspi/component.c:
5868 Added implementations for these methods.
5870 * cspi/spi_component.c:
5872 Added cspi binding methods for above,
5873 AccessibleComponent_getLayer() and
5874 AccessibleComponent_getMDIZOrder().
5875 Added cspi enum 'AccessibleComponentLayer'.
5877 * docs/reference/cspi/at-spi-cspi-sections.txt:
5878 Added above methods to docs.
5882 Changed typedef for 'boolean' type (and all references to it) to
5883 SPIBoolean, to avoid keyword clashes with C++.
5886 Changed usages of 'boolean' to SPIBoolean.
5888 * test/keysynth-demo.c:
5889 Changed usages of 'boolean' to 'gboolean' (since this is a gnome
5890 app), except where SPIBoolean is required by the callbacks API.
5892 2001-12-02 Bill Haneman <bill.haneman@sun.com>
5894 * cspi/spi_registry.c:
5895 Removed obsolete X event loop for passive keygrabs (which now
5898 * registryd/registryd.c:
5899 Removed unnecessary call to gdk_init() [cruft]. This also allows
5900 removal of requisite gdk-2.0 from REGISTRYD_LIBS/CFLAGS in
5903 2001-11-28 Bill Haneman <bill.haneman@sun.com>
5905 * docs/reference/cspi:
5906 Included docs for SPI_freeString in generated documentation.
5909 Renamed spi_freeString to SPI_freeString, for consistency. Added
5910 documentation for this function.
5913 Renamed spi_freeString to SPI_freeString, for consistency.
5914 Removed obsolete method declaration string_from_corba_string.
5916 * test/keysynth-demo.c:
5917 Small tweak to comments.
5920 Stopped leaking the strings returned from CSPI.
5922 2001-11-28 Bill Haneman <bill.haneman@sun.com>
5924 Merged Michael's branch (see his ChangeLog entries below).
5926 * at-bridge/bridge.c: Explicitly hold a ref to the registry while
5927 bridge is alive, release on exit.
5929 * cspi/spi-listener-impl.c (cspi_event_listener_add_callback):
5930 Fix type check macro.
5933 Added AccessibleKeystrokeListener_unref() method to reduce leakage.
5936 Added is_gnome_app static, and method cspi_is_gnome_app(),
5937 so we can call the appropriate shutdown routine at exit in SPI_exit.
5939 * cspi/spi_main.c (cspi_object_ref):
5940 Duplicate the corba object passed in, since we're keeping it around.
5942 * cspi/SPI_exit.c, cspi_cleanup:
5943 Moved the releasing of the live refs to its own function, so we
5944 can put it in g_atexit (). Call the appropriate shutdown API
5945 depending on whethe calling client is a gnome app or not
5946 (bonobo_main_quit or CORBA_ORB_shutdown).
5948 * cspi/spi_registry.c (deregisterGlobalEventListenerAll):
5949 Unref the listener when this method is called, after
5950 deregistration. Updated the API docs to note this behavior.
5952 * libspi/accessible.c (impl_get_parent, impl_get_child_at_index):
5953 Bugfixes: Ref the bonobo object when returning a parent or child
5954 reference, or an AccessibleRelation. Generally made sure
5955 BonoboObject refcount is incremented whenever we return an
5958 * libspi/accessibleeventlistener.c (spi_event_listener_class_init):
5959 Fixed typo/bug in signal declaration.
5961 * libspi/accessibleeventlistener.h:
5964 * libspi/application.c (spi_application_new):
5965 Fixed leak in initialization.
5968 Remembered to increment bonobo-object refcount when returning
5969 children (applications) from desktop object.
5970 Added (empty) finalize method.
5972 * libspi/deviceeventcontroller.c:
5973 Hold a ref to listeners inside DEControllerKeyListeners.
5974 Added dec_key_listener_free() method. Use prepend instead of
5975 append in key_listener list. Fixed some refcount madness and
5976 leaks in the listener registration/deregistration - deregistration
5977 now calls dec_key_listener_free() on listeners, and on the
5978 temporarily constructed dec_key_listener() used to perform the search/match.
5980 * libspi/hypertext.c (spi_hypertest_finalize):
5981 Fixed 'double unref' of AtkObject held by parent SpiAccessibleText
5982 class. Also fixed spi_hypertext_interface_new() and
5983 SpiHypertextClass. Fixed a couple of paren-whitespace formatting bugs.
5985 * libspi/hypertext.h:
5986 Removed pointless and duplicate AtkObject pointer from
5989 * libspi/keystrokelistener.c:
5990 Fixed incorrect type of keystroke_listener_parent_class,
5991 renamed keystroke_listener_object_finalize to
5992 spi_keystroke_listener_object_finalize.
5993 Fixed typo in signal declaration
5994 (spi_keystroke_listener_class_init).
5996 * libspi/registry.c:
5997 Added funcsions spi_listener_struct_new() and
5998 spi_listener_struct_free() to help with memory management issues.
5999 We also now use these methods instead of gnew + poking stuff into
6000 the struct, and to decrement listener counts/free the listeners
6001 when deregistering them.
6002 Fix more refcount bugs in getDesktop() and
6003 getDeviceEventController().
6006 De-ref the desktop after enumerating the applications. Explicitly
6007 decrement the refcounts on the created listeners on exit (using
6008 _unref for keystroke listeners, and via the
6009 deregisterGlobalEventListenerAll command for other event
6012 2001-11-27 Michael Meeks <michael@ximian.com>
6014 * cspi/spi-listener.h: fixup enum.
6016 2001-11-27 Michael Meeks <michael@ximian.com>
6018 * cspi/spi-listener-impl.c (cspi_event_listener_new),
6019 (cspi_keystroke_listener_new): Use the cspi variants.
6021 2001-11-26 Michael Meeks <michael@ximian.com>
6023 * test/keysynth-demo.c: fix 2 compile warnings, missing
6026 * test/simple-at.c (report_focussed_accessible),
6027 (report_focus_event, report_button_press),
6028 (check_property_change, is_command_key),
6029 (report_ordinary_key_event, report_command_key_event): upd.
6031 * util/mag_client.h: include pre-requisites.
6033 * libspi/accessibleeventlistener.c
6034 (spi_event_listener_object_finalize): free any lingering
6037 * libspi/keystrokelistener.c
6038 (keystroke_listener_object_finalize): ditto.
6040 * cspi/spi-listener-impl.[ch]: Add to implement cspi style
6041 callbacks, with cspi types.
6043 * cspi/spi_event.c (createAccessibleEventListener): chain to
6044 (AccessibleEventListener_addCallback): here.
6045 (createAccessibleKeystrokeListener): chain to
6046 (AccessibleKeystrokeListener_addCallback): here.
6048 * libspi/keystrokelistener.c
6049 (spi_keystroke_listener_class_init): add signal.
6050 (impl_key_event): emit the event.
6051 (boolean_handled_accumulator): impl.
6052 (marshal_BOOLEAN__POINTER): add, gack.
6054 * libspi/accessibleeventlistener.c
6055 (spi_event_listener_class_init): add signal.
6056 (impl_accessible_event_notify_event): emit the signal &
6057 make the loop efficient.
6058 (spi_event_listener_add_callback): prepend the callback.
6060 * libspi/accessibleeventlistener.h: add an 'event' signal,
6061 decl type on callback.
6063 * libspi/keystrokelistener.h: ditto.
6065 * cspi/spi-listener.h: make methods typesafe and
6066 make them use the new event typedefs.
6068 * test/simple-at.c (report_focussed_accessible):
6069 include mag_client.h
6070 Use *(void *)text_interface not the other thing.
6072 * configure.in: add gtk to registryd bits - since we use
6075 * util/magnifier.c: include libbonobo.h
6077 2001-11-25 Bill Haneman <bill.haneman@sun.com>
6079 * test/keysynth-demo.c:
6080 Turned this into a simple scanning keyboard, to demonstrate the
6081 use of g_timeout_add () as a means of creating timers for
6082 scanning, and the use of GtkStyle for visually indicating when
6083 virtual keyboard elements are selected.
6085 keysynth-demo now listens to any keyboard keys with zero-valued
6086 keycodes (i.e. 'unused' keys) and interprets them as
6089 Reworked the shiftlatch code so that shift-down state isn't held
6090 for long periods (it's only synthesized immediately prior to
6091 the keysynth event it's modifying). Note that shiftlatch in this
6092 demo is a convenience, not intended to take the place of AccessX
6093 which is the better choice for getting 'sticky' modifier keys.
6095 * libspi/deviceeventcontroller.c:
6096 * at-bridge/bridge.c:
6097 * cspi/spi_registry.c:
6098 Removed some debug print stuff, and put other verbosity in #ifdef
6103 Implemented some more of the magnifier IDL for the simple
6104 magnifier: namely, getZoomRegionParams.
6105 Added mag_x and mag_y members to MagnifierData struct, aid of this
6107 Added GtkWindow::realize signal handler to magnifier, to keep it
6108 from receiving keyboard focus from the WM.
6110 2001-11-23 Mark McLoughlin <mark@skynet.ie>
6112 * cspi/spi-private.h: my guess at what michael forgot
6113 before he ran off to NZ :-)
6115 2001-11-23 Michael Meeks <michael@ximian.com>
6117 * cspi/spi_event.c (AccessibleEventListener_removeCallback):
6118 comment out non existant method invoke so we link.
6120 * cspi/spi-util.c (spi_warn_ev): conform to gtk+ style,
6121 use bonobo_exception_get_text for more friendly warnings.
6123 * cspi/spi.c (Obj_Add): move into spi_main & rename
6124 spi_object_add; kill spi.c
6126 * cspi/spi_registry.c
6127 (deregisterGlobalEventListener),
6128 (deregisterGlobalEventListenerAll),
6129 (registerGlobalEventListener): fix exception leaks.
6131 * cspi/spi_main.c (spi_exception): impl. helper, so we
6132 don't leak exceptions.
6134 * cspi/spi_selection.c
6135 (AccessibleSelection_deselectSelectedChild): return the
6138 * cspi/spi_main.c (spi_ev): impl; hack - gack.
6139 (spi_registry): ditto.
6140 (SPI_init): guard against double inits.
6142 * cspi/*.c: use spi_ev (), and spi_registry () where
6143 appropriate - a temporary hack until we have something
6144 better. Use spi_object_add
6146 2001-11-22 Michael Meeks <michael@ximian.com>
6148 * cspi/Makefile.am: re organise, install the headers.
6150 * cspi/*.h: add G_BEGIN/END_DECLS
6152 2001-11-22 Bill Haneman <bill.haneman@sun.com>
6155 Added non-preemptive keylistener for key events with no modifiers
6156 and shift-only modifier.
6158 * libspi/keystrokelistener.c:
6159 Removed some verbose diagnostics printout.
6161 * cspi/spi_registry.c:
6162 Fixed a bug that caused all key listeners to be registered as
6165 * libspi/deviceeventcontroller.c:
6166 Fixed bug that caused XGrabKey (preemptive key grab) to be called
6167 for non-preemptive key masks.
6170 2001-11-22 Bill Haneman <bill.haneman@sun.com>
6172 * docs/reference/idl/at-spi-idl-docs.sgml:
6173 * docs/reference/idl/at-spi-idl-sections.txt:
6174 * docs/reference/idl/at-spi-idl-overrides.txt:
6175 Added missing files.
6177 * docs/reference/Makefile.am:
6178 removed idl from SUBDIRS until we can figure a way to get gtk-doc
6179 to scan the IDL files :-(
6184 Added .cvsignore files.
6186 2001-11-21 Bill Haneman <bill.haneman@sun.com>
6188 * libspi/deviceeventcontroller.c:
6189 * libspi/keystrokelistener.c:
6191 * cspi/spi_registry.c:
6192 Added filters for KeySets, KeyEventSeq, and event types to key
6193 event dispatching, so listeners should only receive those events
6194 that they requested :-)
6196 2001-11-21 Bill Haneman <bill.haneman@sun.com>
6201 * docs/reference:Makefile.am:
6202 * docs/reference/cspi:
6203 * docs/reference/cspi:Makefile.am:
6204 * docs/reference/cspi:tmpl:
6205 * docs/reference/cspi:tmpl:*.sgml:
6206 * docs/reference/idl:
6207 * docs/reference/idl:Makefile.am:
6208 * docs/reference/idl:at-spi-idl-sections.txt:
6209 * docs/reference/idl:at-spi-idl-docs.sgml:
6210 * docs/reference/idl:tmpl:
6211 * docs/reference/idl:tmpl:*.sgml:
6213 Restructured docs directory to allow separate 'reference' docs
6214 section, and forked idl and cspi docs. Added the sgml template
6215 files to CVS. Added the first sections/structural sgml for the
6218 2001-11-21 Laszlo Peter <laca@ireland.sun.com>
6220 * configure.in, libspi/Makefile.am: find libXtst.
6222 2001-11-21 Michael Meeks <michael@ximian.com>
6224 * test/accessx-gui.c: s/spi_value/value/ - doh.
6226 * libspi/base.[ch]: add.
6228 2001-11-18 Bill Haneman <bill.haneman@sun.com>
6230 * idl/Accessible.idl:
6231 * idl/Application.idl:
6234 Started gtk-doc cleanup on IDL.
6236 * libspi/deviceeventcontroller.c:
6237 Added and connected non-preemptive key notification from the
6238 toolkits (in addition to the pre-emptive support from XServer
6239 which we had before, but which causes 'focus flashing'). Filters
6240 are presently limited to key modifiers and global/non-global,
6241 KeySets are presently ignored, as are KeyEvent masks.
6243 Fixed naughtiness in dec_key_listener_new(), we copy the CORBA
6244 structs into the persistant structure rather than just storing
6245 pointers to things that might not persist across servant
6248 The XGrabKey call now does async keygrabs, because synchronous
6249 ones were deadlocking with GDK_event code in a very nasty way.
6251 Added boolean to internal method notify_keylisteners, to indicate
6252 whether the event came from the 'toolkit source' or the 'global
6253 (XServer) source' - this is used in the notification process to
6254 determine which listeners to send the event to.
6256 deviceeventcontroller.c is now warning-free.
6258 * libspi/registry.c:
6259 Fixed regression in application de-registration.
6260 Also fixed some really brain-dead weirdness having to do with
6261 event dispatching - event structs are now duplicated before being
6262 re-marshalled in the dispatch to listeners. This also fixes a
6263 Solaris build problem.
6266 2001-11-20 Michael Meeks <michael@ximian.com>
6269 (impl_accessibility_registry_deregister_global_event_listener):
6272 * libspi/deviceeventcontroller.c
6273 (spi_device_event_controller_check_key_event): return
6274 FALSE on no virtual method.
6276 * libspi/*..h: make includes work on a correctly pathed install.
6278 * libspi/*.h: include glib/gmacros.h, use G_BEGIN / END _DECLS.
6280 * libspi/application.h: kill unused ( and whacked out )
6281 gboolean *spi_application_set_id (AtkObject *app, long id);
6283 2001-11-20 Michael Meeks <michael@ximian.com>
6285 * libspi/*.[ch]: further convert to bonobo's type func
6286 macros, remove redundnant casts etc.
6288 * libspi/text.c s/accessibility_text/spi_text/g,
6289 re-order to de-cruft.
6291 * libspi/hypertext.c: re-order to kill a huge slew
6292 of redundant forward decls.
6294 * libspi/relation.c: ditto.
6296 * libspi/image.c: ditto.
6298 * */.cvsignore: update
6300 2001-11-20 Michael Meeks <michael@ximian.com>
6302 * libspi/deviceeventcontroller.c
6303 (_controller_register_with_devices): use g_getenv,
6304 kill stdlib.h include.
6306 * libspi/keystrokelistener.c
6307 (spi_keystroke_listener_get_type): kill
6308 (spi_keystroke_listener_class_init),
6309 (spi_keystroke_listener_init): rename to this.
6311 * libspi/text.c (impl_getAttributes): fix warning / bug.
6313 * libspi/*.[ch]: more headers, includes and over commenting.
6315 2001-11-20 Michael Meeks <michael@ximian.com>
6317 * libspi/*.[ch]: fixup headers, includes and over commenting.
6319 * libspi/image.c (impl__get_imageDescription): const
6320 correctness warning fix. remove redundant casting.
6322 * libspi/table.c (impl_getRowDescription): ditto.
6323 (impl_getColumnDescription): ditto.
6325 * libspi/libspi.h: add.
6327 2001-11-19 Michael Meeks <michael@ximian.com>
6329 * libspi/editabletext.c (impl_setAttributes): fix warnings.
6331 * libspi/component.c (accessibility_component_get_type):
6332 rename to (spi_component_get_type): and macroify.
6333 (accessibility_component_init): rename to
6334 (spi_component_init): this
6335 (accessibility_component_class_init): rename to
6336 (spi_component_class_init): this
6338 * libspi/action.c (spi_action_get_type): kill, use the macro.
6340 * libspi/deviceeventcontroller.c (_compare_listeners): re-order
6343 * libspi/application.c (spi_application_object_event_listener),
6344 (impl_accessibility_application_register_object_event_listener):
6345 warning fixes / const understanding updates.
6347 * libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
6350 2001-11-18 Bill Haneman <bill.haneman@sun.com>
6352 * libspi/spi_accessible.c: Added docs and C bindings for
6353 AccessibleStateSet. (No implementations yet). Documentation
6354 coverage for C bindings now 100%. Made docs for event listeners
6359 boolean notifyListenersSync (in DeviceEventListener listener,
6360 in DeviceEvent event);
6362 oneway void notifyListenersAsync (in DeviceEventListener listener,
6363 in DeviceEvent event);
6365 Added DeviceEventListener and DeviceEvent structs (may deprecate
6366 KeyStroke and KeystrokeListener in favor of this generic
6367 event/listener framework for devices).
6369 * libspi/deviceeventcontroller.c:
6371 Changed some key listener code to take masks, etc., and paved the
6372 way for integration of toolkit/non-preemptive key events. Changed
6373 signatures of some internal methods.
6375 * at-bridge/bridge.c:
6376 Fixed regression connecting to interface signals, apparently
6377 caused by GTK+ changes.
6379 Added an internal bridge_state_listener to deal with
6380 property-change:accessible-state signals.
6382 Changed the key_listeners GList to store structs (including masks,
6383 etc.) instead of just CORBA_Objects (required for full
6384 implementation of key listener API).
6386 Connected the bridge to all currently supported Atk signals.
6387 Events now supported:
6388 object:property-change
6389 object:property-change:accessible-name
6390 object:property-change:accessible-state
6391 object:property-change:accessible-description
6392 object:property-change:accessible-parent
6393 object:property-change:accessible-value
6394 object:property-change:accessible-role
6395 object:property-change:accessible-table-caption
6396 object:property-change:accessible-table-column-description
6397 object:property-change:accessible-table-column-header
6398 object:property-change:accessible-table-row-description
6399 object:property-change:accessible-table-row-header
6400 object:property-change:accessible-table-summary
6401 object:children-changed
6402 object:visible-data-changed
6403 object:selection-changed
6404 object:text-selection-changed
6406 object:text-caret-moved
6408 object:row-reordered
6410 object:column-inserted
6411 object:column-reordered
6412 object:column-deleted
6413 object:model-changed
6415 2001-11-16 Bill Haneman <bill.haneman@sun.com>
6417 * libspi/hyperlink.c,h:
6418 Fixed some broken stuff in hyperlink.
6420 * libspi/relation.h:
6421 * libspi/relation.c:
6422 * cspi/spi_accessible.c:
6423 Initial implementations of AccessibleRelation methods, and docs.
6425 * libspi/accessible.c:
6426 Fixed a bug that caused SEGV if an accessible
6427 object's description is NULL, and a client
6428 requests it. An empty string is now returned.
6430 * cspi/spi_editabletext.c:
6431 * cspi/spi_hypertext.c:
6433 * cspi/spi_hyperlink.c:
6437 Doc coverage now 95%.
6439 2001-11-16 Bill Haneman <bill.haneman@sun.com>
6441 One last namespacing revision:
6442 * libspi/accessibleeventlistener.[ch]:
6443 Renamed SpiAccessibleEventListener to SpiEventListener,
6444 (no need for two namespaces ;-)
6446 And lots of documentation fixes:
6448 * docs/at-spi-docs.sgml:
6449 Fixed 'underscore vs. hyphen' bug that was preventing
6450 the gtk-doc API docs from being automatically generated.
6453 * cspi/spi-listener.h
6455 * cspi/spi_accessible.c
6457 * cspi/spi_application.c
6458 * cspi/spi_component.c
6459 * cspi/spi_editabletext.c
6461 * cspi/spi_hypertext.c
6463 * cspi/spi_registry.c
6464 * cspi/spi_selection.c
6468 * docs/at-spi-docs.sgml
6469 * docs/at-spi-sections.txt
6471 Added and fixed up gtk-doc documentation in cspi.
6473 Interfaces now (fully) documented (subject to revision and enhancement):
6475 Event Listener Support
6477 AccessibleApplication
6481 AccessibleEditableText
6488 AccessibleRelationSet
6493 2001-11-14 Bill Haneman <bill.haneman@sun.com>
6495 * at-bridge/bridge.c:
6496 Initial work for toolkit-level key snooper connection by bridge.
6501 New typedefs and fixes to support new namespacing, and cleaner
6502 separation of cspi bindings from libspi bonobo implementation.
6503 Removed inconsistent and extraneous Spi* namespace prefix that
6504 had crept into cspi headers.
6505 Lots of comment fixes that sed had missed.
6507 * cspi/spi-roletypes.h:
6508 * cspi/spi-statetypes.h:
6509 Added SPI_ prefix to Role and State typedefs, and changed all-caps ROLE type
6510 to AccessibleRoleType.
6512 * libspi/accessibleeventlistener.h:
6513 Fixed minor namespacing weirdness.
6515 * libspi/deviceeventcontroller.c:
6516 Reordered some internal API for device listeners.
6517 Changed the key registry final boolean to 'is_system_global'
6518 rather than 'is_synchronous', which is more descriptive of its
6520 Added spi_device_event_controller_new().
6521 Added SpiRegistry backpointer to SpiDeviceEventControllerClass.
6523 * libspi/keystrokelistener.[ch]:
6524 Namespaced KeystrokeListener to SpiKeystrokeListener.
6525 Changed uses of keymasks to use SPI_ prefix, and did other
6528 * libspi/keymasks.h:
6529 Namespaced keymask constants with SPI_ prefix.
6531 * libspi/registry.c:
6532 Some warning fixes, and knock-on fixes from namespace changes.
6535 Added rules for accessx-gui test program.
6537 * test/accessx-gui.c:
6538 Added a simple GUI program in GTK+-2.0 for the AccessX keyboard
6539 utility. It doesn't actually use at-spi, but it's still cool and
6542 * test/keysynth-demo.c:
6546 Fixes so that these test clients work properly with the namespaced
6547 libraries. (Incompletely tested for technical reasons, fixes may follow)
6550 2001-11-13 Michael Meeks <michael@ximian.com>
6552 * libspi/application.c
6553 (impl_accessibility_application_get_version),
6554 (impl_accessibility_application_get_toolkit_name):
6556 (impl_accessibility_application_set_id),
6557 (impl_accessibility_application_get_id): remove
6558 redundant casting code.
6560 * libspi/action.c (impl_getDescription): fix warnings.
6562 * libspi/accessible.c
6563 (impl_accessibility_accessible_get_parent),
6564 (impl_accessibility_accessible_get_child_at_index),
6565 (impl_accessibility_accessible_get_state),
6566 (impl_accessibility_accessible_get_relation_set):
6567 warning fixes & include action.h
6569 2001-11-13 Michael Meeks <michael@ximian.com>
6571 * *.[ch] fix bits I screwed up:
6573 s/([^ \tb(\*\&\?\",])spi_/\1/g;
6574 s/([^ \tb(\*\&\?\",])Spi/\1/g;
6576 2001-11-13 Michael Meeks <michael@ximian.com>
6578 * *.[ch] Namespace libspi into spi_ and Spi.
6580 2001-13-11 Michael Meeks <michael@ximian.com>
6582 * Makefile.am: dist & install at-spi-1.0.pc
6584 * libspi/Makefile.am: install into at-spi-1.0
6586 * idl/Makefile.am (idldir): install into at-spi-1.0
6588 * at-spi-1.0.pc.in: add.
6590 * configure.in: build it.
6592 2001-11-12 Bill Haneman <bill.haneman@sun.com>
6594 * test/keysynth-demo.c:
6595 Use a 'realize' signal-handler to set the WM properties for
6596 the virtual keyboard, rather than making it a "POPUP" type
6597 override-redirect window (thanks to anders carlsson for that
6600 2001-11-11 Bill Haneman <bill.haneman@sun.com>
6603 * test/keysynth-demo.c:
6604 Added new test of key synthesis, which creates a simple
6605 (mouse-operated) onscreen keyboard. It inserts key events into
6606 the currently-focused window, thus it does not grab keyboard focus
6609 * cspi/spi_registry.c:
6610 Added C binding for AT-SPI generateKeyEvent.
6612 * libspi/deviceeventcontroller.c:
6613 Added call to XFilterEvent so that key listener works with XIM (we
6614 hope). Added event_synth_type to generateKeyEvent, so that we can
6615 produce KEY_PRESS, KEY_RELEASE, KEY_PRESSRELEASE (pair), or
6616 synthesize a press/release pair for KeySyms.
6618 2001-11-09 Bill Haneman <bill.haneman@sun.com>
6620 * libspi/Makefile.am:
6621 * registryd/Makefile.am:
6622 (temporary) hack to include libXtst in libspi and registryd.
6623 (Needed for keystroke synthesis, see below).
6626 Improved API for registerKeystrokeListener, in accordance with
6627 discussions with Gnopernicus team and X server research.
6629 * libspi/registry.c:
6630 * libspi/deviceeventcontroller.c:
6631 * libspi/accessible.c:
6632 * libspi/keystrokelistener.c:
6633 Changes and fixes to support keylisteners for potentially
6634 consumed key events (that is, 'passive grabs').
6635 Added implementation for generateKeyEvent() [untested].
6638 Changes to registerKeystrokeListener() API, as above.
6639 Added deregisterGlobalEventListenerAll(), and
6640 deregisterKeystrokeListener(), which are needed for clean exit of
6642 Added typedefs for KeyListenerSyncType, KeyEventMask, and KeySet,
6643 and a macro ALL_KEYS which may be used in place of a KeySet pointer.
6645 * cspi/spi_registry.c:
6646 Added implementations of function prototypes mentioned above.
6648 * registryd/registryd.c:
6649 Added the key listener event source as a g_timeout(), to allow
6650 receipt of key events that are not caught by GDK (since GDK
6651 doesn't support passive keygrabs, this was necessary).
6654 Changed to attach a keylistener to 'Alt' keys, and
6655 respond to the following keycommands: Alt-M (toggle magnifier);
6656 Alt-F (toggle speech); Alt-Q (quit).
6657 Added an exit routine to deregister the listeners, and a key
6658 listener that prints some key info to the console when a key
6659 matches the listener mask (and is thus received by the listener).
6661 * util/idl/Magnifier.idl:
6662 Changes to magnifier API to support multiple zoom regions,
6663 non-uniform scaling in x and y, markDirty, and a host of other
6664 features that would be useful to magnification.
6667 * util/mag_client.c:
6668 * util/mag_client.h:
6669 * util/mag_control.c:
6671 Source code changes to support the above IDL changes.
6674 As above, and also changes to use a (slower) generic conversion
6675 path for colormap conversions, since the fast RGB conversions have been
6676 reported to fail for 16-bit displays.
6678 2001-10-26 Michael Meeks <michael@ximian.com>
6680 * libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
6682 2001-10-26 Laszlo Peter <laca@ireland.sun.com>
6684 * at-bridge/Makefile.am: fix LDFLAGS.
6686 2001-10-09 Bill Haneman <bill.haneman@sun.com>
6688 * at-bridge/bridge.c:
6689 Re-worked listeners for toolkit events, now we have signal
6690 and property listeners. Added a private method
6691 register_atk_event_listeners(), which registers with the
6692 various atk and gtk signals we need to monitor in order to emit
6694 Added emission hook for AtkObject:property-change events, to
6695 support the 'property listeners'.
6696 Fixed some alloc()s of Accessibility_Event structs to use CORBA
6699 * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
6700 which emit warnings and exit, respectively, if CORBA errors occur
6701 during remote calls, and we now use these methods to check most of
6702 our CORBA calls in the C bindings.
6704 * cspi/spi_accessible.c:
6705 Changed AccessibleSelection_refSelectedChild() to
6706 AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
6707 now increment refcounts.
6709 * cspi/spi_component.c:
6710 Fixed some long pointer casts (dangerous!) to pass pointers to
6711 CORBA_longs of the proper type to the CORBA stubs, and copy the
6712 data into the longs that were passed into the C bindings code.
6714 * at-bridge/bridge.c:
6716 * libspi/accessible.c:
6717 Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
6718 hyperlinks, AtkHyperlink is an object type.
6720 * libspi/application.c:
6721 Added various conversions to and from "generic" event types and
6722 atk-specific types; this is really part of the 'bridge'
6723 implementation but is valid for all AtkObject-based accessibility
6726 * libspi/editabletext.c:
6727 Fixed nasty bug wherein editable text's finalize method was
6728 unref'ing tha AtkObject reference that the text parent class was
6729 about to unref _again_. There was also a nasty inheritance bug
6730 that meant that the AccessibleEditableText class was corrupt.
6732 * libspi/selection.c:
6733 Provided implementations for some selection API that was broken.
6735 * idl/Application.idl:
6736 Added registerObjectEventListener () method.
6739 Fixed a number of return values that were Bonobo_Unknowns from
6740 bonobo_object_corba_objref(), which I
6741 forgot to dup before returning. Changed instances of
6742 bonobo_object_corba_objref (bonobo_object(o)) to
6743 BONOBO_OBJREF(o), for concision and clarity.
6745 2001-10-13 Louise Miller <louise.miller@sun.com>
6747 * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
6748 idl/Event.idl, idl/Registry.idl
6749 Changed these files to include Bonobo_Unknown.idl instead
6752 2001-09-10 Marc Mulcahy <marc.mulcahy@sun.com
6754 * libspi/component.c libspi/component.h:
6755 Fixed typo. Added assertions for object checks in
6756 AccessibleComponent code.
6758 2001-10-09 Bill Haneman <bill.haneman@sun.com>
6760 * idl/Accessible.idl:
6761 Added 'isEqual (Accessible *object)'
6762 method for Accessible. (Not Yet Implemented).
6765 Changed signature of registerKeystrokeListener() to
6766 take a KeySet and KeyEventSeq so that specific keys and event
6767 types could be requested for monitoring, and added a flag
6768 is_synchronous so that either synchronous or asynchronous
6769 notification could be requested. (However this is not all
6770 implemented yet). This also meant adding two new typedefs,
6771 KeyEventSeq and KeySet.
6774 Added two new relations, RELATION_TOOLTIP_FOR and
6775 RELATION_LEAFNODE_OF.
6778 Added new state, STATE_HAS_TOOLTIP.
6780 * libspi/text.c, editabletext.c:
6781 Added new assertions to all casts of bonobo-objects from
6782 CORBA servants, to prevent Text API calls on non-text objects.
6783 Changed suspect casts of int-pointer types, so that we
6784 always send a valid CORBA_long pointer to the CORBA APIs that use
6785 in/out long parameters. We then have to copy from the CORBA_long
6786 into the regular long or int for return to the C bindings, or
6787 vice-versa when returning parameters from ATK calls to the bonobo wrappers.
6790 * libspi/deviceeventcontroller.c:
6791 Cleaned these sources up.
6793 Changed return type for getCharacterAtOffset to
6794 CORBA_unsigned_long, to allow for 32-bit characters.
6797 2001-10-08 Bill Haneman <bill.haneman@sun.com>
6801 Fixed 'make dist' so that distro compiles...
6802 * libspi/keymasks.h:
6804 * cspi/spi-listener.c:
6805 KeystrokeListenerCB now returns a boolean.
6807 Added KeyEventType struct, and KeyStroke.
6808 Also added createKeystrokeListener(),
6809 KeystrokeListener_addCallback(),
6810 KeystrokeListener_removeCallback(), and added a keymask to
6811 registerKeystrokeListener().
6812 * cspi/spi_accessible.c:
6813 Changed numerous return types for interfaces from
6814 AccessibleComponent to Accessible<InterfaceName>; this was
6815 probably a cut-and-paste error.
6817 Implementations of new KeystrokeListener api (from spi.h,
6820 Changes to key modifier mapping.
6821 Created ControllerEventMask struct.
6822 Made DeviceEventController derive from Bonobo::Unknown.
6824 Removed TEXT_BOUNDARY_CURSOR_POS boundary type.
6825 * libspi/deviceeventcontroller.c:
6826 Added a number of new internal (private) methods.
6827 * libspi/editabletext.c:
6828 * libspi/editabletext.h:
6829 Fixed a number of bugs related to the fact that
6830 editabletext inherits from text. Fixed the EditableText struct,
6831 the init() call, and use correct casts when calling Text methods
6832 from an EditableText object. Removed (duplicate) atko from the
6833 EditableText structure, we use the one in the parent Text
6834 structure via the casts mentioned above.
6835 * libspi/keystrokelistener.[ch]:
6836 * libspi/registry.c:
6837 Changes in support of keyboard handling (above).
6839 Keyboard handling, though partly functional, is still not
6840 recommended for at-spi client use as there is considerable
6841 work yet to be done.
6844 Changed some places where pointers to various int types
6845 are cast to be pointers to CORBA_long types and vice-versa:
6846 pointer casting is not safe so we pass pointers of the correct
6847 types and then cast the result before putting it into the target
6850 * libspi/text.h: minor typos corrected.
6852 We now speak not only the name of a Text element, but the
6853 first sentence of its content, when it receives focus.
6854 I also changed the text compression to 75% from 50%.
6855 * util/Accessibility_Util.server.in:
6856 Changed the default magnifier type to be a 3x vertical
6857 splitscreen magnifier (was previously a 2x horizontal one).
6859 2001-10-03 Bill Haneman <bill.haneman@sun.com>
6861 * libspi/keystrokelistener.h:
6862 * libspi/keystrokelistener.c:
6863 Initial functional implementations of KeystrokeListener.
6866 2001-10-05 Marc Mulcahy <marc.mulcahy@sun.com>
6868 Fixed string handling for NULL strings in libspi.
6869 Added spi_freeString to free strings returned by C bindings.
6871 2001-09-30 Bill Haneman <bill.haneman@sun.com>
6873 * libspi/keystrokelistener.h:
6874 * libspi/keystrokelistener.c:
6875 Began (no-op) implementations of KeystrokeListener
6877 * libspi/deviceeventcontroller.c:
6878 * libspi/deviceeventcontroller.h:
6879 Began creating implementations of DeviceEventController,
6880 to handle keystroke and mouse event listening and
6882 * libspi/accessible.c:
6883 Stubbed-in the implementations for
6884 Accessibility_Accessible_getState and
6885 Accessibility_Accessible_getRelationSet.
6886 * libspi/registry.c:
6887 Improved de-registration process and fixed some bugs,
6888 deregistration now works correctly.
6890 Added initialization of applications list (to NULL).
6892 Reduced speech compression from 0.5 to 0.7, for demo.
6893 Changed call to gdk_window_set_decorations()
6894 to gtk_window_set_decorated().
6895 * at-bridge/bridge.c:
6896 Bridge now deregisters when app exits, via
6897 registration of a cleanup function
6898 with the g_atexit() call.
6899 Required making 'app' static, renamed 'this_app'.
6900 Fixed broken use of bonobo_init, passing argv wrongly.
6902 2001-09-27 Bill Haneman <bill.haneman@sun.com>
6906 Created a new directory for
6907 accessibility-related utilities, primarily for
6908 testing and demo purposes, but with possible
6915 Onscreen magnifier utility that
6916 is implemented as a bonobo service.
6918 * util/mag_client.c:
6919 * util/mag_client.h:
6920 Client-side support (simple C bindings)
6921 for Magnification service
6923 * util/mag_control.c:
6924 Client program example for
6925 Magnification service
6927 * util/Accessibility_Magnifier.server.in:
6928 Bonobo-activation file for the
6929 Magnification service.
6932 * util/idl/Magnifier.idl:
6933 IDL defining the bonobo Magnification
6937 Modifications to use the bonobo-activated magnifier
6938 above, in place of trying to connect to an existing
6939 magnifier that uses socket-listening IPC.
6941 If env variable MAGNIFIER is set, a magnifier service
6942 will be started if one does not exist.
6944 2001-09-25 Bill Haneman <bill.haneman@sun.com>
6946 * at-bridge/bridge.c:
6947 applied patch from Marc to build and run
6948 against new glib and gtk+ (seemed like a change
6949 to bonobo_init signature was made ?)
6951 made festival-server support turned off by default.
6952 Added support for a simple magnifier (off by default)
6953 which will be added to a 'util' directory later.
6954 * at-bridge/Makefile.am:
6955 Changed "application.h" header from a 'source'
6956 to a 'dependency' of libat-bridge.
6958 2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
6967 Added interface implementation c files to list of
6968 includes so they are included in libcspi.
6971 Changed prototype of AccessibleAction_doAction to return a
6973 Changed prototype of AccessibleTable_getCaption to
6974 return an Accessible.
6975 Changed prototype of AccessibleTable_getSelectedRows
6976 and AccessibleTable_getSelectedColumns to
6977 return a long (returns the number of selected rows
6978 or columns respectively).
6979 Changed name of AccessibleText_refRunAttributes to
6980 AccessibleText_getAttributes.
6981 Changed prototype of AccessibleText_getCharacterExtents to
6982 return a void rather than a boolean.
6983 Added support for a AccessibleCoordType parameter
6984 specifying what type of coordinates are desired.
6985 Added an AccessibleCordType parameter to
6986 AccessibleText_getPointAtOffset.
6988 * cspi/spi_accessible.c:
6989 Added code to return the outstanding interfaces from
6990 Accessible_queryInterface.
6992 * cspi/spi_action.c:
6994 Corrected call to getNActions to call the c binding
6997 * cspi/spi_editabletext.c:
6999 Changed name from setRunAttributes to setAttributes.
7001 * cspi/spi_hyperlink.c:
7003 Changed call to getNAnchors to correctly call the c
7004 binding for an attribute.
7006 * cspi/spi_hypertext.c:
7008 Changed getImageDescription to correctly call the
7009 binding for an attribute.
7011 * cspi/spi_selection.c:
7012 Changed getNSelectedChildren to correctly call the c
7013 binding for the attribute.
7014 Changed refSelectedChild to getSelectedChild.
7018 Changed getCaption to return an Accessible.
7019 Fixed calls which retrieve attributes.
7020 Changed refAt to getAccessibleAt.
7021 Changed getNSelectedRows and getNSelectedColumns to
7025 Changed getCharacterExtents and getPointAtOffset to accept an
7026 AccessibleCoordType.
7028 Changed calls which retrieve attributes.
7029 Changed refRunAttributes to getAttributes.
7034 * idl/Hyperlink.idl:
7035 Changed n_anchors attribute to nAnchors to keep naming
7036 convention consistent.
7039 Made Table inherit from Bonobo::Unknown.
7040 Added nSelectedColumns and nSelectedRows attributes.
7043 Made Value inherit from Bonobo::Unknown.
7045 * libspi/hyperlink.c:
7046 Change for nAnchors attributte name change.
7048 2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
7056 Added interface implementation c files to list of
7057 includes so they are included in libcspi.
7060 Changed prototype of AccessibleAction_doAction to return a
7062 Changed prototype of AccessibleTable_getCaption to
7063 return an Accessible.
7064 Changed prototype of AccessibleTable_getSelectedRows
7065 and AccessibleTable_getSelectedColumns to
7066 return a long (returns the number of selected rows
7067 or columns respectively).
7068 Changed name of AccessibleText_refRunAttributes to
7069 AccessibleText_getAttributes.
7070 Changed prototype of AccessibleText_getCharacterExtents to
7071 return a void rather than a boolean.
7072 Added support for a AccessibleCoordType parameter
7073 specifying what type of coordinates are desired.
7074 Added an AccessibleCordType parameter to
7075 AccessibleText_getPointAtOffset.
7077 * cspi/spi_accessible.c:
7078 Added code to return the outstanding interfaces from
7079 Accessible_queryInterface.
7081 * cspi/spi_action.c:
7083 Corrected call to getNActions to call the c binding
7086 * cspi/spi_editabletext.c:
7088 Changed name from setRunAttributes to setAttributes.
7090 * cspi/spi_hyperlink.c:
7092 Changed call to getNAnchors to correctly call the c
7093 binding for an attribute.
7095 * cspi/spi_hypertext.c:
7097 Changed getImageDescription to correctly call the
7098 binding for an attribute.
7100 * cspi/spi_selection.c:
7101 Changed getNSelectedChildren to correctly call the c
7102 binding for the attribute.
7103 Changed refSelectedChild to getSelectedChild.
7107 Changed getCaption to return an Accessible.
7108 Fixed calls which retrieve attributes.
7109 Changed refAt to getAccessibleAt.
7110 Changed getNSelectedRows and getNSelectedColumns to
7114 Changed getCharacterExtents and getPointAtOffset to accept an
7115 AccessibleCoordType.
7117 Changed calls which retrieve attributes.
7118 Changed refRunAttributes to getAttributes.
7123 * idl/Hyperlink.idl:
7124 Changed n_anchors attribute to nAnchors to keep naming
7125 convention consistent.
7128 Made Table inherit from Bonobo::Unknown.
7129 Added nSelectedColumns and nSelectedRows attributes.
7132 Made Value inherit from Bonobo::Unknown.
7134 * libspi/hyperlink.c:
7135 Change for nAnchors attributte name change.
7138 2001-09-05 Marc Mulcahy <marc.mulcahy@sun.com>
7140 implementations-- made server implementations own AtkObject pointers
7141 rather than their respective AtkInterrface pointers to fix
7142 refcounting. AtkHyperlink is still broken.
7144 2001-09-04 Bill Haneman <bill.haneman@sun.com>
7145 * cspi/spi_accessible.c:
7146 Added method Accessible_Role_getName(),
7147 and requisite string array (role_names).
7148 Added conversion string_from_corba_strin() call
7149 to Accessible_getName and _getDescription.
7150 * libspi/accessible.c:
7151 Added implementation for Accessible_getRole()
7153 Added festival support, used if environment variable
7156 2001-09-04 Bill Haneman <bill.haneman@sun.com>
7158 * at-bridge/bridge.c:
7159 Now allocate Accessibility_Event using
7160 Accessibility_Event__alloc() instead of g_new0().
7161 * libspi/accessibleeventlistener.c:
7162 Initialize AccessibleEventListener->callbacks to NULL.
7163 Fixed accessible__event_listener_init() param, changed to
7164 "AccessibleEventListener *" type.
7165 Changed a bonobo_object_release_unref() call to
7166 Accessibility_Accessible_unref().
7167 * libspi/listener.c:
7168 Changed Bonobo_Unknown_unref to (equivalent)
7169 Accessibility_Accessible_unref.
7170 * libspi/registry.c:
7171 Changed bonobo_object_release_unref to
7172 Accessibility_Accessible_unref.
7174 2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
7177 spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
7178 spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
7179 spi-util.c spi-util.h
7180 Implementations for C bindings to remaining accessibility
7183 2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
7186 changed return value of Action from void to boolean to
7187 bring in line with ATK.
7190 Changed getText funcions to return "out" start and end offsets.
7191 Changed getAttributes to take and offset and return the start
7192 and end offset of the attribute run.
7193 Changed getOffsetAtPoint and getCharacterExtents to take an
7194 enum describing whether coordinates are window or screen.
7197 libspi/action.c libspi/action.h libspi/editabletext.c
7198 libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
7199 libspi/hypertext.c libspi/hypertext.h libspi/image.c
7200 libspi/image.h libspi/selection.c libspi/selection.h
7201 libspi/table.c libspi/table.h libspi/text.c libspi/text.h
7202 libspi/value.c libspi/value.h
7203 Added server implementations for outstanding ATK interfaces
7204 not yet implemented.
7206 2001-09-04 Bill Haneman <bill.haneman@sun.com>
7209 Added (missing) getName() method.
7210 Made nActions an attribute.
7211 * idl/EditableText.idl:
7212 Changed order of params in setAttributes.
7213 * idl/Hyperlink.idl:
7214 Removed getAnchor, added getURI.
7216 Changed attributes to methods, for efficiency
7217 (so that getting extents can be done in one call)
7218 * idl/Selection.idl:
7219 Changed nSelectedChildren to attribute, and re-indented.
7220 * idl/Table.idl: changed nrows, ncolumns, caption, summary
7222 * idl/Text.idl: reformatted to match our coding style.
7223 (temporarily?) removed getRowColumnAtOffset().
7224 Changed text selection API to support multi-select and
7225 non-contiguous selections, as in ATK.
7226 * idl/Value.idl: changed some methods to attributes.
7228 2001-08-24 Mark McLoughlin <mark@skynet.ie>
7230 * libspi/listener.c(impl_notify_event):
7231 BonoboUnkown_unref the source instead
7232 of bonobo_object_release_unref - the ORB
7233 handles the releasing.
7235 * configure.in: require ORBit-2.3.94 for
7238 2001-08-21 Bill Haneman <bill.haneman@sun.com>
7240 Tagged CVS repository 'EA_1_0'.
7241 * README.EARLY_ACCESS:
7242 Alphabetized acknowledgements list, and
7244 Listed some known dependencies of at-spi.
7246 2001-08-20 Bill Haneman <bill.haneman@sun.com>
7248 * docs/at-spi-docs.sgml:
7249 * docs/at-spi-sections.txt:
7250 * docs/at-spi-overrides.txt: (Added zero-length file)
7251 Documentation improvements - gtk-doc should build
7252 docs for all implemented C bindings now.
7255 * cspi/spi.c: (New file)
7256 * cspi/spi_event.c: (New file)
7257 * cspi/spi_registry.c: (New file)
7258 * cspi/spi_accessible.c: (New file)
7259 * cspi/spi_application.c: (New file)
7260 * cspi/spi_component.c: (New file)
7261 Split spi_main.c into six parts, and included them from
7262 "spi.c". This is a bit of a hack, probably temporary,
7263 but required by gtk-doc, apparently.
7265 2001-08-20 Bill Haneman <bill.haneman@sun.com>
7268 * docs/at-spi-docs.sgml:
7269 * docs/at-spi-sections.txt:
7271 Initial checkins/modifications for gtk-doc generation.
7274 Added (missing) interface query methods to Accessible's C binding.
7276 Added GenericInterface type definition.
7278 Added query for AccessibleComponent interface to focus event handler.
7279 Added printout of bounding box for focussed component.
7280 * libspi/component.c:
7281 Added partial implementation for AccessibleComponent to C binding.
7282 * idl/Application.idl:
7283 * libspi/registry.c:
7284 * libspi/listener.c:
7285 * libspi/application.c:
7286 * libspi/application.h:
7287 Changed "ID" attribute type from string to long.
7289 2001-08-19 Bill Haneman <bill.haneman@sun.com>
7293 Made method naming consistent: methods taking object args
7294 start with uppercase, other methods (except those using
7295 acronyms) start with lowercase. Underscores delimit between
7296 object names and method names:
7297 SPI_init() - uppercase since it starts with an acronym.
7298 getDesktopCount () - lowercase start since no object param0.
7299 Accessible_getName() - uppercase object type name, studlyCaps method
7303 Added gtk-doc documentation for all currently implemented
7304 methods in the C bindings API.
7306 2001-08-18 Bill Haneman <bill.haneman@sun.com>
7308 * Makefile.am : changed build order to build test last.
7311 Changed "createEventListener" to "CreateEventListener".
7312 * libspi/accessibleeventlistener.c :
7313 Bugfix for addition of callbacks.
7314 * test/Makefile.am :
7315 * test/simple-at.c :
7316 Added new test that uses the C bindings API.
7318 * libspi/listener.c :
7319 * libspi/registry.c :
7320 * libspi/accessibleeventlistener.c :
7321 * at-bridge/bridge.c :
7322 Renamed member "target" of Accessibility_Event to "source",
7323 which is more descriptive.
7326 2001-08-18 Bill Haneman <bill.haneman@sun.com>
7330 * cspi/Makefile.am :
7331 Added makefile support for at-spi/cspi directory.
7334 * cspi/spi-listener.h : (NEW FILE)
7335 Added support for/use of spi-listener.h.
7337 C bindings now build successfully, with no warnings.
7338 * libspi/accessibleeventlistener.h : (NEW FILE)
7339 * libspi/accessibleeventlistener.c : (NEW FILE)
7340 * libspi/Makefile.am :
7341 Added new object type "AccessibleEventListener"
7342 which inherits from Listener, and allows attachment
7343 of in-process callbacks (so that a client with a listening
7344 object instance can add functionality to the local
7345 implementation, dynamically).
7347 2001-08-18 Bill Haneman <bill.haneman@sun.com>
7349 * libspi/accessible.c:
7350 Add implementation for get_index_in_parent().
7352 Added #include of "spi-roletypes.h", and
7353 added enumerated type AccessibleCoordType.
7354 Added definition for KeystrokeListener (function type).
7357 * cspi/spi-statetypes.h :
7358 * cspi/spi-roletypes.h :
7360 Added these headers, used by spi.h.
7362 Added code (NOTE: not yet built by make).
7364 2001-08-18 Mark McLoughlin <mark@skynet.ie>
7366 * libspi/Makefile.am: generate imodule
7367 at the same time as other idl compiler
7370 2001-08-17 Bill Haneman <bill.haneman@sun.com>
7371 * libspi/registry.c :
7372 * libspi/application.c :
7373 * idl/Application.idl :
7374 Made registration with toolkit an application method,
7375 which is required since each app has its own toolkit static
7376 environment. Thus the bridge must register for
7377 notification of toolkit events from each application in turn.
7378 Toolkit notifications are now successfully registered for, and
7379 sent to the listening at client.
7381 Changed toolkit event string to use hyphens rather than underscores.
7382 * libspi/listener.c :
7383 listner now gives more info in debug mode - it reports the
7384 name of the event received, as well as the name of the source.
7387 2001-08-16 Bill Haneman <bill.haneman@sun.com>
7389 * libspi/registry.c :
7390 added more implementation for toolkit events.
7391 Fixed bug such that toolkit event registrations
7392 (via atk) use the whole event name string, not
7394 Removed a useless call to an ORBit_ method.
7395 * at-bridge/bridge.c :
7396 Removed unused local sbuf[] variable.
7398 We now register for Gtk:GtkWidget:button_press_event
7399 events as well as "focus:" events.
7401 Add some more API from Registry.idl that was missing,
7402 for keystroke listening, keystroke and mouse event
7403 synthesis, and enumeration of accessible desktops.
7405 2001-08-16 Michael Meeks <michael@ximian.com>
7407 * configure.in: use AM_GLIB_GNU_GETTEXT.
7409 * Makefile.am (SUBDIRS): kill intl.
7411 2001-08-15 Michael Meeks <michael@ximian.com>
7413 * registryd/Makefile.am: s/oaf/server/ relocate info file.
7415 * configure.in: upd.
7417 * configure.in: depend on a recent bonobo-activation that
7418 will find our server files ...
7420 2001-08-16 Bill Haneman <bill.haneman@sun.com>
7422 * libspi/accessible.c : accessible_new() :
7423 Now we add the Component interface via bonobo_object_add_interface,
7424 if the contained AtkObject implements AtkComponent.
7425 * libspi/accessible.h : now include "component.h"
7426 * libspi/component.h :
7427 * libspi/component.c : added files - implementation of
7428 bonobo wrapper object for Accessibility/Component
7429 * libspi/listener.c :
7430 Added test code to check for Accessibility/Component:1.0
7431 interface and report whether it is implemented by the
7433 * libspi/registry.c :
7434 Now we check for not only the hash of the whole event
7435 string before relaying the event, we also check the
7436 "minor" event string (without the detail string).
7437 This allows event listeners to be registered against
7438 all events of a certain major+minor type, or just
7439 against a specific major+minor+detail type.
7440 * libspi/accessible.c :
7441 Added implementations for Accessible:get_parent(),
7442 Accessible:getChildCount(), and Accessible:getChildAtIndex().
7443 * libspi/registry.c :
7444 * libspi/listener.c :
7445 Replaced calls to Accessibility_Accessible_ref() and
7446 Accessibility_Accessible_unref() with
7447 calls to bonobo_object_dup_ref() and
7448 bonobo_object_release_unref(), so that the CORBA object
7449 is dup-ed and released when relayed, as well as the bonobo object.
7451 2001-08-15 Mark McLoughlin <mark@skynet.ie>
7453 * libspi/Makefile.am,
7454 registryd/Makefile.am,
7455 at-bridge/Makefile.am.
7456 test/Makefile.am, configure.in:
7457 reverse previous changes.
7459 * /idl/Image.idl: fix typo.
7461 * test/Makefile.am: put DEBUG_FLAGS
7464 2001-08-15 Mark McLoughlin <mark@skynet.ie>
7466 * test/app.c: use argv[0] instead of
7469 2001-08-15 Mark McLoughlin <mark@skynet.ie>
7471 * libspi/Makefile.am,
7472 registryd/Makefile.am,
7473 at-bridge/Makefile.am.
7474 test/Makefile.am, configure.in:
7475 cleanup, replace individual LIBS/CFLAGS with
7476 AT_COMMON_{LIBS|CFLAGS}.
7480 2001-08-15 Mark McLoughlin <mark@skynet.ie>
7482 * configure.in, libspi/Makefile.am:
7483 Change IDL path checking for bonobo-activation
7486 2001-08-15 Bill Haneman <bill.haneman@sun.com>
7488 * registryd/registry.c : separated event listeners to use
7489 3 separate lists (focus, window, toolkit). Began testing
7490 event names against hashes before relaying events.
7491 * test/at.c : now register for events of type "focus:"
7492 * test/app.c : now generate events of type "focus:"
7493 * at-bridge/bridge.c : register with ATK for focus events,
7494 and we now relay those focus events to any "focus:" listeners.
7495 This now works with the bridge as a GTK_MODULE when running test/at.
7496 * libspi/registry.c :
7497 * libspi/listener.c :
7498 now we ref event sources before propagating, and unref on receipt.
7499 * libspi/registry.c :
7500 some changes to internal structs, to support event typestring hashes.
7501 * text/app.c : changed the way the appname is generated.
7502 * cspi : added directory that will hold the C bindings library for
7503 non-CORBA/bonobo-savvy clients.
7504 * cspi/spi.h : header file that contains the function prototypes for the C binding.
7505 * idl/Component.idl : added in parameter to indicate coord system for
7506 geometry-related calls.
7507 * idl/Hyperlink.idl : added readonly n_links attribute
7508 * idl/Image.idl : changed methods to attributes.
7510 2001-08-15 Mark McLoughlin <mark@skynet.ie>
7512 * at-bridge/Makefile.am: link against
7513 ../libspi/libspi.la instead of -lspi.
7515 * at-spi/test/app.c: include
7516 bonobo-activation.h. Use a default appname
7517 if one is not provided.
7519 2001-08-14 Bill Haneman <bill.haneman@sun.com>
7521 * idl/Registry.idl : temporarily changed register_Application
7522 to oneway, to work around issue with initial registration
7524 * idl/Application.idl : changed attribute "id" from readonly
7525 to read-write, since it needs to be assigned by Registry.
7526 * registryd/registryd.c : added call to set application id
7528 * registryd/registry.c : changed de-registration procedure to
7529 use CORBA_Object_hash() to find matching object ref in application
7530 lists and listener lists.
7531 * registryd/registry.c : defined EventTypeStruct and EventTypeMajor,
7532 began distinguishing between event types (work in progress).
7534 2001-08-13 Bill Haneman <bill.haneman@sun.com>
7537 * libspi/application.c:
7538 Added implementations for get/set id, get_toolkitName,
7540 * registryd/registryd.c :
7544 Converted from use of OAF to bonobo-activation.
7545 * libspi/desktop.h :
7546 * libspi/desktop.c :
7548 Removed references to atksimpleobject, since base atkobject
7549 implementation now provides functionality we need.
7550 * libspi/atksimpleobject.c :
7551 * libspi/atksimpleobject.h :
7556 * at-bridge/Makefile.am
7557 * at-bridge/bridge.c
7560 Added directory "bridge" and contents, and added dependencies
7561 in Makefile.am/configure.in.
7562 Initial checkin of "at-bridge".
7563 This code is a GTK_MODULE which automatically registers
7564 GTK+ apps with the accessibility registry, using an object
7565 reference to the root ATK object.
7567 2001-08-10 Mark McLoughlin <mark@skynet.ie>
7569 * po/Makefile.in.in: Remove. Again. If this
7570 doesn't get autogenerated - you need to update
7573 2001-08-07 Mark McLoughlin <mark@skynet.ie>
7575 * po/Makefile.in.in: Add. Again.
7577 2001-07-31 Bill Haneman <bill.haneman@sun.com>
7579 * libspi/accessible.c : added support for 'description' property.
7580 * libspi/accessible.c
7582 * libspi/registry.c : changed to use bonobo_object instead of bonobo_x_object
7583 (since the two are now equivalent in libbonobo)
7591 * idl/Value.idl : changed these 'secondary' interfaces to inherit from
7592 Bonobo::Unknown as does Accessibility::Accessible.
7593 * idl/StreamableContent.idl : as above, and replaced internal InputStream
7594 interface with Bonobo::Stream, since it was redundant with it.
7595 (The Stream returned by a StreamableContext object is expected to
7596 implement only a subset of Bonobo::Stream)
7598 2001-07-28 Anders Carlsson <andersca@gnome.org>
7600 * libspi/accessible.c (accessible_object_finalize): Change
7601 g_free to g_object_unref since the AtkObject is a GObject.
7603 2001-07-30 Bill Haneman <bill.haneman@sun.com>
7605 * idl/Accessibility.idl: add new IDL files
7608 * idl/Action.idl: Definitions of actionable UI object
7609 * idl/Component.idl: Definitions of UI component geometry, etc.
7610 * idl/Hyperlink.idl: Defs of hyperlink behavior
7611 * idl/Image.idl: Def of accessible image
7612 * idl/Selection.idl: Definition of UI object with selectable children
7613 * idl/StreamableContent.idl: Definition of UI object with streamable backing data
7614 * idl/Table.idl: Definitions for access to table ('spreadsheet') elements
7615 * idl/Text.idl: Interface defs for UI elements with complex textual content
7616 * idl/Value.idl: Definition of UI element that is a value controller or display
7618 2001-07-27 Michael Meeks <michael@ximian.com>
7620 * po/Makefile.in.in: remove autogenerated file from CVS.
7622 * libspi/Makefile.am: Radicaly re-vamp to simplify & add ORBit2
7625 * idl/Registry.idl: include guard.
7627 * idl/Accessibility.idl: Add, and include all the other IDL
7630 * idl/*.idl: remove mass of pragmas etc.
7632 2001-07-26 Michael Meeks <michael@ximian.com>
7634 * registryd/Makefile.am (registryd_SOURCES): remove
7637 2001-07-27 Mark McLoughlin <mark@skynet.ie>
7639 * libspi/.cvsignore, registryd/.cvsignore,
7640 test/.cvsignore: updated.
7642 * po/Makefile.in.in: gettext update.
7644 2001-07-25 Bill Haneman <bill.haneman@sun.com>
7646 * initial CVS checkin
7648 2001-06-29 Michael Meeks <michael@ximian.com>
7650 * configure.in: add AM_CONFIG_HEADER to gen config.h