1 2001-11-23 Michael Meeks <michael@ximian.com>
3 * cspi/spi_event.c (AccessibleEventListener_removeCallback):
4 comment out non existant method invoke so we link.
6 * cspi/spi-util.c (spi_warn_ev): conform to gtk+ style,
7 use bonobo_exception_get_text for more friendly warnings.
9 * cspi/spi.c (Obj_Add): move into spi_main & rename
10 spi_object_add; kill spi.c
13 (deregisterGlobalEventListener),
14 (deregisterGlobalEventListenerAll),
15 (registerGlobalEventListener): fix exception leaks.
17 * cspi/spi_main.c (spi_exception): impl. helper, so we
18 don't leak exceptions.
20 * cspi/spi_selection.c
21 (AccessibleSelection_deselectSelectedChild): return the
24 * cspi/spi_main.c (spi_ev): impl; hack - gack.
25 (spi_registry): ditto.
26 (SPI_init): guard against double inits.
28 * cspi/*.c: use spi_ev (), and spi_registry () where
29 appropriate - a temporary hack until we have something
30 better. Use spi_object_add
32 2001-11-22 Michael Meeks <michael@ximian.com>
34 * cspi/Makefile.am: re organise, install the headers.
36 * cspi/*.h: add G_BEGIN/END_DECLS
38 2001-22-11 Bill Haneman <bill.haneman@sun.com>
41 Added non-preemptive keylistener for key events with no modifiers
42 and shift-only modifier.
44 * libspi/keystrokelistener.c:
45 Removed some verbose diagnostics printout.
47 * cspi/spi_registry.c:
48 Fixed a bug that caused all key listeners to be registered as
51 * libspi/deviceeventcontroller.c:
52 Fixed bug that caused XGrabKey (preemptive key grab) to be called
53 for non-preemptive key masks.
56 2001-22-11 Bill Haneman <bill.haneman@sun.com>
58 * docs/reference/idl/at-spi-idl-docs.sgml:
59 * docs/reference/idl/at-spi-idl-sections.txt:
60 * docs/reference/idl/at-spi-idl-overrides.txt:
63 * docs/reference/Makefile.am:
64 removed idl from SUBDIRS until we can figure a way to get gtk-doc
65 to scan the IDL files :-(
70 Added .cvsignore files.
72 2001-21-11 Bill Haneman <bill.haneman@sun.com>
74 * libspi/deviceeventcontroller.c:
75 * libspi/keystrokelistener.c:
77 * cspi/spi_registry.c:
78 Added filters for KeySets, KeyEventSeq, and event types to key
79 event dispatching, so listeners should only receive those events
80 that they requested :-)
82 2001-21-11 Bill Haneman <bill.haneman@sun.com>
87 * docs/reference:Makefile.am:
88 * docs/reference/cspi:
89 * docs/reference/cspi:Makefile.am:
90 * docs/reference/cspi:tmpl:
91 * docs/reference/cspi:tmpl:*.sgml:
93 * docs/reference/idl:Makefile.am:
94 * docs/reference/idl:at-spi-idl-sections.txt:
95 * docs/reference/idl:at-spi-idl-docs.sgml:
96 * docs/reference/idl:tmpl:
97 * docs/reference/idl:tmpl:*.sgml:
99 Restructured docs directory to allow separate 'reference' docs
100 section, and forked idl and cspi docs. Added the sgml template
101 files to CVS. Added the first sections/structural sgml for the
104 2001-11-21 Laszlo Peter <laca@ireland.sun.com>
106 * configure.in, libspi/Makefile.am: find libXtst.
108 2001-11-21 Michael Meeks <michael@ximian.com>
110 * test/accessx-gui.c: s/spi_value/value/ - doh.
112 * libspi/base.[ch]: add.
114 2001-18-11 Bill Haneman <bill.haneman@sun.com>
116 * idl/Accessible.idl:
117 * idl/Application.idl:
120 Started gtk-doc cleanup on IDL.
122 * libspi/deviceeventcontroller.c:
123 Added and connected non-preemptive key notification from the
124 toolkits (in addition to the pre-emptive support from XServer
125 which we had before, but which causes 'focus flashing'). Filters
126 are presently limited to key modifiers and global/non-global,
127 KeySets are presently ignored, as are KeyEvent masks.
129 Fixed naughtiness in dec_key_listener_new(), we copy the CORBA
130 structs into the persistant structure rather than just storing
131 pointers to things that might not persist across servant
134 The XGrabKey call now does async keygrabs, because synchronous
135 ones were deadlocking with GDK_event code in a very nasty way.
137 Added boolean to internal method notify_keylisteners, to indicate
138 whether the event came from the 'toolkit source' or the 'global
139 (XServer) source' - this is used in the notification process to
140 determine which listeners to send the event to.
142 deviceeventcontroller.c is now warning-free.
145 Fixed regression in application de-registration.
146 Also fixed some really brain-dead weirdness having to do with
147 event dispatching - event structs are now duplicated before being
148 re-marshalled in the dispatch to listeners. This also fixes a
149 Solaris build problem.
152 2001-20-11 Michael Meeks <michael@ximian.com>
155 (impl_accessibility_registry_deregister_global_event_listener):
158 * libspi/deviceeventcontroller.c
159 (spi_device_event_controller_check_key_event): return
160 FALSE on no virtual method.
162 * libspi/*..h: make includes work on a correctly pathed install.
164 * libspi/*.h: include glib/gmacros.h, use G_BEGIN / END _DECLS.
166 * libspi/application.h: kill unused ( and whacked out )
167 gboolean *spi_application_set_id (AtkObject *app, long id);
169 2001-20-11 Michael Meeks <michael@ximian.com>
171 * libspi/*.[ch]: further convert to bonobo's type func
172 macros, remove redundnant casts etc.
174 * libspi/text.c s/accessibility_text/spi_text/g,
175 re-order to de-cruft.
177 * libspi/hypertext.c: re-order to kill a huge slew
178 of redundant forward decls.
180 * libspi/relation.c: ditto.
182 * libspi/image.c: ditto.
184 * */.cvsignore: update
186 2001-20-11 Michael Meeks <michael@ximian.com>
188 * libspi/deviceeventcontroller.c
189 (_controller_register_with_devices): use g_getenv,
190 kill stdlib.h include.
192 * libspi/keystrokelistener.c
193 (spi_keystroke_listener_get_type): kill
194 (spi_keystroke_listener_class_init),
195 (spi_keystroke_listener_init): rename to this.
197 * libspi/text.c (impl_getAttributes): fix warning / bug.
199 * libspi/*.[ch]: more headers, includes and over commenting.
201 2001-20-11 Michael Meeks <michael@ximian.com>
203 * libspi/*.[ch]: fixup headers, includes and over commenting.
205 * libspi/image.c (impl__get_imageDescription): const
206 correctness warning fix. remove redundant casting.
208 * libspi/table.c (impl_getRowDescription): ditto.
209 (impl_getColumnDescription): ditto.
211 * libspi/libspi.h: add.
213 2001-19-11 Michael Meeks <michael@ximian.com>
215 * libspi/editabletext.c (impl_setAttributes): fix warnings.
217 * libspi/component.c (accessibility_component_get_type):
218 rename to (spi_component_get_type): and macroify.
219 (accessibility_component_init): rename to
220 (spi_component_init): this
221 (accessibility_component_class_init): rename to
222 (spi_component_class_init): this
224 * libspi/action.c (spi_action_get_type): kill, use the macro.
226 * libspi/deviceeventcontroller.c (_compare_listeners): re-order
229 * libspi/application.c (spi_application_object_event_listener),
230 (impl_accessibility_application_register_object_event_listener):
231 warning fixes / const understanding updates.
233 * libspi/accessible.c (impl_accessibility_accessible_get_relation_set):
236 2001-18-11 Bill Haneman <bill.haneman@sun.com>
238 * libspi/spi_accessible.c: Added docs and C bindings for
239 AccessibleStateSet. (No implementations yet). Documentation
240 coverage for C bindings now 100%. Made docs for event listeners
245 boolean notifyListenersSync (in DeviceEventListener listener,
246 in DeviceEvent event);
248 oneway void notifyListenersAsync (in DeviceEventListener listener,
249 in DeviceEvent event);
251 Added DeviceEventListener and DeviceEvent structs (may deprecate
252 KeyStroke and KeystrokeListener in favor of this generic
253 event/listener framework for devices).
255 * libspi/deviceeventcontroller.c:
257 Changed some key listener code to take masks, etc., and paved the
258 way for integration of toolkit/non-preemptive key events. Changed
259 signatures of some internal methods.
261 * at-bridge/bridge.c:
262 Fixed regression connecting to interface signals, apparently
263 caused by GTK+ changes.
265 Added an internal bridge_state_listener to deal with
266 property-change:accessible-state signals.
268 Changed the key_listeners GList to store structs (including masks,
269 etc.) instead of just CORBA_Objects (required for full
270 implementation of key listener API).
272 Connected the bridge to all currently supported Atk signals.
273 Events now supported:
274 object:property-change
275 object:property-change:accessible-name
276 object:property-change:accessible-state
277 object:property-change:accessible-description
278 object:property-change:accessible-parent
279 object:property-change:accessible-value
280 object:property-change:accessible-role
281 object:property-change:accessible-table-caption
282 object:property-change:accessible-table-column-description
283 object:property-change:accessible-table-column-header
284 object:property-change:accessible-table-row-description
285 object:property-change:accessible-table-row-header
286 object:property-change:accessible-table-summary
287 object:children-changed
288 object:visible-data-changed
289 object:selection-changed
290 object:text-selection-changed
292 object:text-caret-moved
296 object:column-inserted
297 object:column-reordered
298 object:column-deleted
301 2001-16-11 Bill Haneman <bill.haneman@sun.com>
303 * libspi/hyperlink.c,h:
304 Fixed some broken stuff in hyperlink.
308 * cspi/spi_accessible.c:
309 Initial implementations of AccessibleRelation methods, and docs.
311 * libspi/accessible.c:
312 Fixed a bug that caused SEGV if an accessible
313 object's description is NULL, and a client
314 requests it. An empty string is now returned.
316 * cspi/spi_editabletext.c:
317 * cspi/spi_hypertext.c:
319 * cspi/spi_hyperlink.c:
323 Doc coverage now 95%.
325 2001-16-11 Bill Haneman <bill.haneman@sun.com>
327 One last namespacing revision:
328 * libspi/accessibleeventlistener.[ch]:
329 Renamed SpiAccessibleEventListener to SpiEventListener,
330 (no need for two namespaces ;-)
332 And lots of documentation fixes:
334 * docs/at-spi-docs.sgml:
335 Fixed 'underscore vs. hyphen' bug that was preventing
336 the gtk-doc API docs from being automatically generated.
339 * cspi/spi-listener.h
341 * cspi/spi_accessible.c
343 * cspi/spi_application.c
344 * cspi/spi_component.c
345 * cspi/spi_editabletext.c
347 * cspi/spi_hypertext.c
349 * cspi/spi_registry.c
350 * cspi/spi_selection.c
354 * docs/at-spi-docs.sgml
355 * docs/at-spi-sections.txt
357 Added and fixed up gtk-doc documentation in cspi.
359 Interfaces now (fully) documented (subject to revision and enhancement):
361 Event Listener Support
363 AccessibleApplication
367 AccessibleEditableText
374 AccessibleRelationSet
379 2001-14-11 Bill Haneman <bill.haneman@sun.com>
381 * at-bridge/bridge.c:
382 Initial work for toolkit-level key snooper connection by bridge.
387 New typedefs and fixes to support new namespacing, and cleaner
388 separation of cspi bindings from libspi bonobo implementation.
389 Removed inconsistent and extraneous Spi* namespace prefix that
390 had crept into cspi headers.
391 Lots of comment fixes that sed had missed.
393 * cspi/spi-roletypes.h:
394 * cspi/spi-statetypes.h:
395 Added SPI_ prefix to Role and State typedefs, and changed all-caps ROLE type
396 to AccessibleRoleType.
398 * libspi/accessibleeventlistener.h:
399 Fixed minor namespacing weirdness.
401 * libspi/deviceeventcontroller.c:
402 Reordered some internal API for device listeners.
403 Changed the key registry final boolean to 'is_system_global'
404 rather than 'is_synchronous', which is more descriptive of its
406 Added spi_device_event_controller_new().
407 Added SpiRegistry backpointer to SpiDeviceEventControllerClass.
409 * libspi/keystrokelistener.[ch]:
410 Namespaced KeystrokeListener to SpiKeystrokeListener.
411 Changed uses of keymasks to use SPI_ prefix, and did other
415 Namespaced keymask constants with SPI_ prefix.
418 Some warning fixes, and knock-on fixes from namespace changes.
421 Added rules for accessx-gui test program.
423 * test/accessx-gui.c:
424 Added a simple GUI program in GTK+-2.0 for the AccessX keyboard
425 utility. It doesn't actually use at-spi, but it's still cool and
428 * test/keysynth-demo.c:
432 Fixes so that these test clients work properly with the namespaced
433 libraries. (Incompletely tested for technical reasons, fixes may follow)
436 2001-13-11 Michael Meeks <michael@ximian.com>
438 * libspi/application.c
439 (impl_accessibility_application_get_version),
440 (impl_accessibility_application_get_toolkit_name):
442 (impl_accessibility_application_set_id),
443 (impl_accessibility_application_get_id): remove
444 redundant casting code.
446 * libspi/action.c (impl_getDescription): fix warnings.
448 * libspi/accessible.c
449 (impl_accessibility_accessible_get_parent),
450 (impl_accessibility_accessible_get_child_at_index),
451 (impl_accessibility_accessible_get_state),
452 (impl_accessibility_accessible_get_relation_set):
453 warning fixes & include action.h
455 2001-13-11 Michael Meeks <michael@ximian.com>
457 * *.[ch] fix bits I screwed up:
459 s/([^ \tb(\*\&\?\",])spi_/\1/g;
460 s/([^ \tb(\*\&\?\",])Spi/\1/g;
462 2001-13-11 Michael Meeks <michael@ximian.com>
464 * *.[ch] Namespace libspi into spi_ and Spi.
466 2001-13-11 Michael Meeks <michael@ximian.com>
468 * Makefile.am: dist & install at-spi-1.0.pc
470 * libspi/Makefile.am: install into at-spi-1.0
472 * idl/Makefile.am (idldir): install into at-spi-1.0
474 * at-spi-1.0.pc.in: add.
476 * configure.in: build it.
478 2001-12-11 Bill Haneman <bill.haneman@sun.com>
480 * test/keysynth-demo.c:
481 Use a 'realize' signal-handler to set the WM properties for
482 the virtual keyboard, rather than making it a "POPUP" type
483 override-redirect window (thanks to anders carlsson for that
486 2001-11-11 Bill Haneman <bill.haneman@sun.com>
489 * test/keysynth-demo.c:
490 Added new test of key synthesis, which creates a simple
491 (mouse-operated) onscreen keyboard. It inserts key events into
492 the currently-focused window, thus it does not grab keyboard focus
495 * cspi/spi_registry.c:
496 Added C binding for AT-SPI generateKeyEvent.
498 * libspi/deviceeventcontroller.c:
499 Added call to XFilterEvent so that key listener works with XIM (we
500 hope). Added event_synth_type to generateKeyEvent, so that we can
501 produce KEY_PRESS, KEY_RELEASE, KEY_PRESSRELEASE (pair), or
502 synthesize a press/release pair for KeySyms.
504 2001-11-09 Bill Haneman <bill.haneman@sun.com>
506 * libspi/Makefile.am:
507 * registryd/Makefile.am:
508 (temporary) hack to include libXtst in libspi and registryd.
509 (Needed for keystroke synthesis, see below).
512 Improved API for registerKeystrokeListener, in accordance with
513 discussions with Gnopernicus team and X server research.
516 * libspi/deviceeventcontroller.c:
517 * libspi/accessible.c:
518 * libspi/keystrokelistener.c:
519 Changes and fixes to support keylisteners for potentially
520 consumed key events (that is, 'passive grabs').
521 Added implementation for generateKeyEvent() [untested].
524 Changes to registerKeystrokeListener() API, as above.
525 Added deregisterGlobalEventListenerAll(), and
526 deregisterKeystrokeListener(), which are needed for clean exit of
528 Added typedefs for KeyListenerSyncType, KeyEventMask, and KeySet,
529 and a macro ALL_KEYS which may be used in place of a KeySet pointer.
531 * cspi/spi_registry.c:
532 Added implementations of function prototypes mentioned above.
534 * registryd/registryd.c:
535 Added the key listener event source as a g_timeout(), to allow
536 receipt of key events that are not caught by GDK (since GDK
537 doesn't support passive keygrabs, this was necessary).
540 Changed to attach a keylistener to 'Alt' keys, and
541 respond to the following keycommands: Alt-M (toggle magnifier);
542 Alt-F (toggle speech); Alt-Q (quit).
543 Added an exit routine to deregister the listeners, and a key
544 listener that prints some key info to the console when a key
545 matches the listener mask (and is thus received by the listener).
547 * util/idl/Magnifier.idl:
548 Changes to magnifier API to support multiple zoom regions,
549 non-uniform scaling in x and y, markDirty, and a host of other
550 features that would be useful to magnification.
555 * util/mag_control.c:
557 Source code changes to support the above IDL changes.
560 As above, and also changes to use a (slower) generic conversion
561 path for colormap conversions, since the fast RGB conversions have been
562 reported to fail for 16-bit displays.
564 2001-10-26 Michael Meeks <michael@ximian.com>
566 * libspi/Makefile.am (orbittypelibdir): install in orbit-2.0
568 <2001-10-26 Laszlo Peter <laca@ireland.sun.com>
570 * at-bridge/Makefile.am: fix LDFLAGS.
572 <2001-10-09 Bill Haneman <bill.haneman@sun.com>
574 * at-bridge/bridge.c:
575 Re-worked listeners for toolkit events, now we have signal
576 and property listeners. Added a private method
577 register_atk_event_listeners(), which registers with the
578 various atk and gtk signals we need to monitor in order to emit
580 Added emission hook for AtkObject:property-change events, to
581 support the 'property listeners'.
582 Fixed some alloc()s of Accessibility_Event structs to use CORBA
585 * cspi/spi-util.c: added methods spi_warn_ev and spi_check_ev,
586 which emit warnings and exit, respectively, if CORBA errors occur
587 during remote calls, and we now use these methods to check most of
588 our CORBA calls in the C bindings.
590 * cspi/spi_accessible.c:
591 Changed AccessibleSelection_refSelectedChild() to
592 AccessibleSelection_getSelectedChild(), since all our cspi 'gets'
593 now increment refcounts.
595 * cspi/spi_component.c:
596 Fixed some long pointer casts (dangerous!) to pass pointers to
597 CORBA_longs of the proper type to the CORBA stubs, and copy the
598 data into the longs that were passed into the C bindings code.
600 * at-bridge/bridge.c:
602 * libspi/accessible.c:
603 Removed ATK_IS_HYPERLINK() query, since AtkObjects are never
604 hyperlinks, AtkHyperlink is an object type.
606 * libspi/application.c:
607 Added various conversions to and from "generic" event types and
608 atk-specific types; this is really part of the 'bridge'
609 implementation but is valid for all AtkObject-based accessibility
612 * libspi/editabletext.c:
613 Fixed nasty bug wherein editable text's finalize method was
614 unref'ing tha AtkObject reference that the text parent class was
615 about to unref _again_. There was also a nasty inheritance bug
616 that meant that the AccessibleEditableText class was corrupt.
618 * libspi/selection.c:
619 Provided implementations for some selection API that was broken.
621 * idl/Application.idl:
622 Added registerObjectEventListener () method.
625 Fixed a number of return values that were Bonobo_Unknowns from
626 bonobo_object_corba_objref(), which I
627 forgot to dup before returning. Changed instances of
628 bonobo_object_corba_objref (bonobo_object(o)) to
629 BONOBO_OBJREF(o), for concision and clarity.
631 <2001-10-13 Louise Miller <louise.miller@sun.com>
633 * idl/Accessible.idl, idl/Application.idl, idl/Desktop.idl,
634 idl/Event.idl, idl/Registry.idl
635 Changed these files to include Bonobo_Unknown.idl instead
638 <2001-09-10 Marc Mulcahy <marc.mulcahy@sun.com
640 * libspi/component.c libspi/component.h:
641 Fixed typo. Added assertions for object checks in
642 AccessibleComponent code.
644 <2001-10-09 Bill Haneman <bill.haneman@sun.com>
646 * idl/Accessible.idl:
647 Added 'isEqual (Accessible *object)'
648 method for Accessible. (Not Yet Implemented).
651 Changed signature of registerKeystrokeListener() to
652 take a KeySet and KeyEventSeq so that specific keys and event
653 types could be requested for monitoring, and added a flag
654 is_synchronous so that either synchronous or asynchronous
655 notification could be requested. (However this is not all
656 implemented yet). This also meant adding two new typedefs,
657 KeyEventSeq and KeySet.
660 Added two new relations, RELATION_TOOLTIP_FOR and
661 RELATION_LEAFNODE_OF.
664 Added new state, STATE_HAS_TOOLTIP.
666 * libspi/text.c, editabletext.c:
667 Added new assertions to all casts of bonobo-objects from
668 CORBA servants, to prevent Text API calls on non-text objects.
669 Changed suspect casts of int-pointer types, so that we
670 always send a valid CORBA_long pointer to the CORBA APIs that use
671 in/out long parameters. We then have to copy from the CORBA_long
672 into the regular long or int for return to the C bindings, or
673 vice-versa when returning parameters from ATK calls to the bonobo wrappers.
676 * libspi/deviceeventcontroller.c:
677 Cleaned these sources up.
679 Changed return type for getCharacterAtOffset to
680 CORBA_unsigned_long, to allow for 32-bit characters.
683 <2001-10-08 Bill Haneman <bill.haneman@sun.com>
687 Fixed 'make dist' so that distro compiles...
690 * cspi/spi-listener.c:
691 KeystrokeListenerCB now returns a boolean.
693 Added KeyEventType struct, and KeyStroke.
694 Also added createKeystrokeListener(),
695 KeystrokeListener_addCallback(),
696 KeystrokeListener_removeCallback(), and added a keymask to
697 registerKeystrokeListener().
698 * cspi/spi_accessible.c:
699 Changed numerous return types for interfaces from
700 AccessibleComponent to Accessible<InterfaceName>; this was
701 probably a cut-and-paste error.
703 Implementations of new KeystrokeListener api (from spi.h,
706 Changes to key modifier mapping.
707 Created ControllerEventMask struct.
708 Made DeviceEventController derive from Bonobo::Unknown.
710 Removed TEXT_BOUNDARY_CURSOR_POS boundary type.
711 * libspi/deviceeventcontroller.c:
712 Added a number of new internal (private) methods.
713 * libspi/editabletext.c:
714 * libspi/editabletext.h:
715 Fixed a number of bugs related to the fact that
716 editabletext inherits from text. Fixed the EditableText struct,
717 the init() call, and use correct casts when calling Text methods
718 from an EditableText object. Removed (duplicate) atko from the
719 EditableText structure, we use the one in the parent Text
720 structure via the casts mentioned above.
721 * libspi/keystrokelistener.[ch]:
723 Changes in support of keyboard handling (above).
725 Keyboard handling, though partly functional, is still not
726 recommended for at-spi client use as there is considerable
730 Changed some places where pointers to various int types
731 are cast to be pointers to CORBA_long types and vice-versa:
732 pointer casting is not safe so we pass pointers of the correct
733 types and then cast the result before putting it into the target
736 * libspi/text.h: minor typos corrected.
738 We now speak not only the name of a Text element, but the
739 first sentence of its content, when it receives focus.
740 I also changed the text compression to 75% from 50%.
741 * util/Accessibility_Util.server.in:
742 Changed the default magnifier type to be a 3x vertical
743 splitscreen magnifier (was previously a 2x horizontal one).
745 <2001-10-03 Bill Haneman <bill.haneman@sun.com>
747 * libspi/keystrokelistener.h:
748 * libspi/keystrokelistener.c:
749 Initial functional implementations of KeystrokeListener.
752 <2001-10-05 Marc Mulcahy <marc.mulcahy@sun.com>
754 Fixed string handling for NULL strings in libspi.
755 Added spi_freeString to free strings returned by C bindings.
757 <2001-09-30 Bill Haneman <bill.haneman@sun.com>
759 * libspi/keystrokelistener.h:
760 * libspi/keystrokelistener.c:
761 Began (no-op) implementations of KeystrokeListener
763 * libspi/deviceeventcontroller.c:
764 * libspi/deviceeventcontroller.h:
765 Began creating implementations of DeviceEventController,
766 to handle keystroke and mouse event listening and
768 * libspi/accessible.c:
769 Stubbed-in the implementations for
770 Accessibility_Accessible_getState and
771 Accessibility_Accessible_getRelationSet.
773 Improved de-registration process and fixed some bugs,
774 deregistration now works correctly.
776 Added initialization of applications list (to NULL).
778 Reduced speech compression from 0.5 to 0.7, for demo.
779 Changed call to gdk_window_set_decorations()
780 to gtk_window_set_decorated().
781 * at-bridge/bridge.c:
782 Bridge now deregisters when app exits, via
783 registration of a cleanup function
784 with the g_atexit() call.
785 Required making 'app' static, renamed 'this_app'.
786 Fixed broken use of bonobo_init, passing argv wrongly.
788 <2001-09-27 Bill Haneman <bill.haneman@sun.com>
792 Created a new directory for
793 accessibility-related utilities, primarily for
794 testing and demo purposes, but with possible
801 Onscreen magnifier utility that
802 is implemented as a bonobo service.
806 Client-side support (simple C bindings)
807 for Magnification service
809 * util/mag_control.c:
810 Client program example for
811 Magnification service
813 * util/Accessibility_Magnifier.server.in:
814 Bonobo-activation file for the
815 Magnification service.
818 * util/idl/Magnifier.idl:
819 IDL defining the bonobo Magnification
823 Modifications to use the bonobo-activated magnifier
824 above, in place of trying to connect to an existing
825 magnifier that uses socket-listening IPC.
827 If env variable MAGNIFIER is set, a magnifier service
828 will be started if one does not exist.
830 <2001-09-25 Bill Haneman <bill.haneman@sun.com>
831 * at-bridge/bridge.c:
832 applied patch from Marc to build and run
833 against new glib and gtk+ (seemed like a change
834 to bonobo_init signature was made ?)
836 made festival-server support turned off by default.
837 Added support for a simple magnifier (off by default)
838 which will be added to a 'util' directory later.
839 * at-bridge/Makefile.am:
840 Changed "application.h" header from a 'source'
841 to a 'dependency' of libat-bridge.
843 <2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
851 Added interface implementation c files to list of
852 includes so they are included in libcspi.
855 Changed prototype of AccessibleAction_doAction to return a
857 Changed prototype of AccessibleTable_getCaption to
858 return an Accessible.
859 Changed prototype of AccessibleTable_getSelectedRows
860 and AccessibleTable_getSelectedColumns to
861 return a long (returns the number of selected rows
862 or columns respectively).
863 Changed name of AccessibleText_refRunAttributes to
864 AccessibleText_getAttributes.
865 Changed prototype of AccessibleText_getCharacterExtents to
866 return a void rather than a boolean.
867 Added support for a AccessibleCoordType parameter
868 specifying what type of coordinates are desired.
869 Added an AccessibleCordType parameter to
870 AccessibleText_getPointAtOffset.
872 * cspi/spi_accessible.c:
873 Added code to return the outstanding interfaces from
874 Accessible_queryInterface.
878 Corrected call to getNActions to call the c binding
881 * cspi/spi_editabletext.c:
883 Changed name from setRunAttributes to setAttributes.
885 * cspi/spi_hyperlink.c:
887 Changed call to getNAnchors to correctly call the c
888 binding for an attribute.
890 * cspi/spi_hypertext.c:
892 Changed getImageDescription to correctly call the
893 binding for an attribute.
895 * cspi/spi_selection.c:
896 Changed getNSelectedChildren to correctly call the c
897 binding for the attribute.
898 Changed refSelectedChild to getSelectedChild.
902 Changed getCaption to return an Accessible.
903 Fixed calls which retrieve attributes.
904 Changed refAt to getAccessibleAt.
905 Changed getNSelectedRows and getNSelectedColumns to
909 Changed getCharacterExtents and getPointAtOffset to accept an
912 Changed calls which retrieve attributes.
913 Changed refRunAttributes to getAttributes.
919 Changed n_anchors attribute to nAnchors to keep naming
920 convention consistent.
923 Made Table inherit from Bonobo::Unknown.
924 Added nSelectedColumns and nSelectedRows attributes.
927 Made Value inherit from Bonobo::Unknown.
929 * libspi/hyperlink.c:
930 Change for nAnchors attributte name change.
932 <2001-09-12 Marc Mulcahy <marc.mulcahy@sun.com>
940 Added interface implementation c files to list of
941 includes so they are included in libcspi.
944 Changed prototype of AccessibleAction_doAction to return a
946 Changed prototype of AccessibleTable_getCaption to
947 return an Accessible.
948 Changed prototype of AccessibleTable_getSelectedRows
949 and AccessibleTable_getSelectedColumns to
950 return a long (returns the number of selected rows
951 or columns respectively).
952 Changed name of AccessibleText_refRunAttributes to
953 AccessibleText_getAttributes.
954 Changed prototype of AccessibleText_getCharacterExtents to
955 return a void rather than a boolean.
956 Added support for a AccessibleCoordType parameter
957 specifying what type of coordinates are desired.
958 Added an AccessibleCordType parameter to
959 AccessibleText_getPointAtOffset.
961 * cspi/spi_accessible.c:
962 Added code to return the outstanding interfaces from
963 Accessible_queryInterface.
967 Corrected call to getNActions to call the c binding
970 * cspi/spi_editabletext.c:
972 Changed name from setRunAttributes to setAttributes.
974 * cspi/spi_hyperlink.c:
976 Changed call to getNAnchors to correctly call the c
977 binding for an attribute.
979 * cspi/spi_hypertext.c:
981 Changed getImageDescription to correctly call the
982 binding for an attribute.
984 * cspi/spi_selection.c:
985 Changed getNSelectedChildren to correctly call the c
986 binding for the attribute.
987 Changed refSelectedChild to getSelectedChild.
991 Changed getCaption to return an Accessible.
992 Fixed calls which retrieve attributes.
993 Changed refAt to getAccessibleAt.
994 Changed getNSelectedRows and getNSelectedColumns to
998 Changed getCharacterExtents and getPointAtOffset to accept an
1001 Changed calls which retrieve attributes.
1002 Changed refRunAttributes to getAttributes.
1007 * idl/Hyperlink.idl:
1008 Changed n_anchors attribute to nAnchors to keep naming
1009 convention consistent.
1012 Made Table inherit from Bonobo::Unknown.
1013 Added nSelectedColumns and nSelectedRows attributes.
1016 Made Value inherit from Bonobo::Unknown.
1018 * libspi/hyperlink.c:
1019 Change for nAnchors attributte name change.
1022 <2001-09-05 Marc Mulcahy <marc.mulcahy@sun.com>
1024 implementations-- made server implementations own AtkObject pointers
1025 rather than their respective AtkInterrface pointers to fix
1026 refcounting. AtkHyperlink is still broken.
1028 <2001-09-04 Bill Haneman <bill.haneman@sun.com>
1029 * cspi/spi_accessible.c:
1030 Added method Accessible_Role_getName(),
1031 and requisite string array (role_names).
1032 Added conversion string_from_corba_strin() call
1033 to Accessible_getName and _getDescription.
1034 * libspi/accessible.c:
1035 Added implementation for Accessible_getRole()
1037 Added festival support, used if environment variable
1040 2001-09-04 Bill Haneman <bill.haneman@sun.com>
1042 * at-bridge/bridge.c:
1043 Now allocate Accessibility_Event using
1044 Accessibility_Event__alloc() instead of g_new0().
1045 * libspi/accessibleeventlistener.c:
1046 Initialize AccessibleEventListener->callbacks to NULL.
1047 Fixed accessible__event_listener_init() param, changed to
1048 "AccessibleEventListener *" type.
1049 Changed a bonobo_object_release_unref() call to
1050 Accessibility_Accessible_unref().
1051 * libspi/listener.c:
1052 Changed Bonobo_Unknown_unref to (equivalent)
1053 Accessibility_Accessible_unref.
1054 * libspi/registry.c:
1055 Changed bonobo_object_release_unref to
1056 Accessibility_Accessible_unref.
1058 <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
1061 spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
1062 spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
1063 spi-util.c spi-util.h
1064 Implementations for C bindings to remaining accessibility
1067 <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
1070 changed return value of Action from void to boolean to
1071 bring in line with ATK.
1074 Changed getText funcions to return "out" start and end offsets.
1075 Changed getAttributes to take and offset and return the start
1076 and end offset of the attribute run.
1077 Changed getOffsetAtPoint and getCharacterExtents to take an
1078 enum describing whether coordinates are window or screen.
1081 libspi/action.c libspi/action.h libspi/editabletext.c
1082 libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
1083 libspi/hypertext.c libspi/hypertext.h libspi/image.c
1084 libspi/image.h libspi/selection.c libspi/selection.h
1085 libspi/table.c libspi/table.h libspi/text.c libspi/text.h
1086 libspi/value.c libspi/value.h
1087 Added server implementations for outstanding ATK interfaces
1088 not yet implemented.
1090 2001-09-04 Bill Haneman <bill.haneman@sun.com>
1093 Added (missing) getName() method.
1094 Made nActions an attribute.
1095 * idl/EditableText.idl:
1096 Changed order of params in setAttributes.
1097 * idl/Hyperlink.idl:
1098 Removed getAnchor, added getURI.
1100 Changed attributes to methods, for efficiency
1101 (so that getting extents can be done in one call)
1102 * idl/Selection.idl:
1103 Changed nSelectedChildren to attribute, and re-indented.
1104 * idl/Table.idl: changed nrows, ncolumns, caption, summary
1106 * idl/Text.idl: reformatted to match our coding style.
1107 (temporarily?) removed getRowColumnAtOffset().
1108 Changed text selection API to support multi-select and
1109 non-contiguous selections, as in ATK.
1110 * idl/Value.idl: changed some methods to attributes.
1112 2001-08-24 Mark McLoughlin <mark@skynet.ie>
1114 * libspi/listener.c(impl_notify_event):
1115 BonoboUnkown_unref the source instead
1116 of bonobo_object_release_unref - the ORB
1117 handles the releasing.
1119 * configure.in: require ORBit-2.3.94 for
1122 2001-08-21 Bill Haneman <bill.haneman@sun.com>
1124 Tagged CVS repository 'EA_1_0'.
1125 * README.EARLY_ACCESS:
1126 Alphabetized acknowledgements list, and
1128 Listed some known dependencies of at-spi.
1130 2001-08-20 Bill Haneman <bill.haneman@sun.com>
1132 * docs/at-spi-docs.sgml:
1133 * docs/at-spi-sections.txt:
1134 * docs/at-spi-overrides.txt: (Added zero-length file)
1135 Documentation improvements - gtk-doc should build
1136 docs for all implemented C bindings now.
1139 * cspi/spi.c: (New file)
1140 * cspi/spi_event.c: (New file)
1141 * cspi/spi_registry.c: (New file)
1142 * cspi/spi_accessible.c: (New file)
1143 * cspi/spi_application.c: (New file)
1144 * cspi/spi_component.c: (New file)
1145 Split spi_main.c into six parts, and included them from
1146 "spi.c". This is a bit of a hack, probably temporary,
1147 but required by gtk-doc, apparently.
1149 2001-08-20 Bill Haneman <bill.haneman@sun.com>
1152 * docs/at-spi-docs.sgml:
1153 * docs/at-spi-sections.txt:
1155 Initial checkins/modifications for gtk-doc generation.
1158 Added (missing) interface query methods to Accessible's C binding.
1160 Added GenericInterface type definition.
1162 Added query for AccessibleComponent interface to focus event handler.
1163 Added printout of bounding box for focussed component.
1164 * libspi/component.c:
1165 Added partial implementation for AccessibleComponent to C binding.
1166 * idl/Application.idl:
1167 * libspi/registry.c:
1168 * libspi/listener.c:
1169 * libspi/application.c:
1170 * libspi/application.h:
1171 Changed "ID" attribute type from string to long.
1173 2001-08-19 Bill Haneman <bill.haneman@sun.com>
1177 Made method naming consistent: methods taking object args
1178 start with uppercase, other methods (except those using
1179 acronyms) start with lowercase. Underscores delimit between
1180 object names and method names:
1181 SPI_init() - uppercase since it starts with an acronym.
1182 getDesktopCount () - lowercase start since no object param0.
1183 Accessible_getName() - uppercase object type name, studlyCaps method
1187 Added gtk-doc documentation for all currently implemented
1188 methods in the C bindings API.
1190 2001-08-18 Bill Haneman <bill.haneman@sun.com>
1192 * Makefile.am : changed build order to build test last.
1195 Changed "createEventListener" to "CreateEventListener".
1196 * libspi/accessibleeventlistener.c :
1197 Bugfix for addition of callbacks.
1198 * test/Makefile.am :
1199 * test/simple-at.c :
1200 Added new test that uses the C bindings API.
1202 * libspi/listener.c :
1203 * libspi/registry.c :
1204 * libspi/accessibleeventlistener.c :
1205 * at-bridge/bridge.c :
1206 Renamed member "target" of Accessibility_Event to "source",
1207 which is more descriptive.
1210 2001-08-18 Bill Haneman <bill.haneman@sun.com>
1214 * cspi/Makefile.am :
1215 Added makefile support for at-spi/cspi directory.
1218 * cspi/spi-listener.h : (NEW FILE)
1219 Added support for/use of spi-listener.h.
1221 C bindings now build successfully, with no warnings.
1222 * libspi/accessibleeventlistener.h : (NEW FILE)
1223 * libspi/accessibleeventlistener.c : (NEW FILE)
1224 * libspi/Makefile.am :
1225 Added new object type "AccessibleEventListener"
1226 which inherits from Listener, and allows attachment
1227 of in-process callbacks (so that a client with a listening
1228 object instance can add functionality to the local
1229 implementation, dynamically).
1231 2001-08-18 Bill Haneman <bill.haneman@sun.com>
1233 * libspi/accessible.c:
1234 Add implementation for get_index_in_parent().
1236 Added #include of "spi-roletypes.h", and
1237 added enumerated type AccessibleCoordType.
1238 Added definition for KeystrokeListener (function type).
1241 * cspi/spi-statetypes.h :
1242 * cspi/spi-roletypes.h :
1244 Added these headers, used by spi.h.
1246 Added code (NOTE: not yet built by make).
1248 2001-08-18 Mark McLoughlin <mark@skynet.ie>
1250 * libspi/Makefile.am: generate imodule
1251 at the same time as other idl compiler
1254 2001-08-17 Bill Haneman <bill.haneman@sun.com>
1255 * libspi/registry.c :
1256 * libspi/application.c :
1257 * idl/Application.idl :
1258 Made registration with toolkit an application method,
1259 which is required since each app has its own toolkit static
1260 environment. Thus the bridge must register for
1261 notification of toolkit events from each application in turn.
1262 Toolkit notifications are now successfully registered for, and
1263 sent to the listening at client.
1265 Changed toolkit event string to use hyphens rather than underscores.
1266 * libspi/listener.c :
1267 listner now gives more info in debug mode - it reports the
1268 name of the event received, as well as the name of the source.
1271 2001-08-16 Bill Haneman <bill.haneman@sun.com>
1273 * libspi/registry.c :
1274 added more implementation for toolkit events.
1275 Fixed bug such that toolkit event registrations
1276 (via atk) use the whole event name string, not
1278 Removed a useless call to an ORBit_ method.
1279 * at-bridge/bridge.c :
1280 Removed unused local sbuf[] variable.
1282 We now register for Gtk:GtkWidget:button_press_event
1283 events as well as "focus:" events.
1285 Add some more API from Registry.idl that was missing,
1286 for keystroke listening, keystroke and mouse event
1287 synthesis, and enumeration of accessible desktops.
1289 2001-08-16 Michael Meeks <michael@ximian.com>
1291 * configure.in: use AM_GLIB_GNU_GETTEXT.
1293 * Makefile.am (SUBDIRS): kill intl.
1295 2001-08-15 Michael Meeks <michael@ximian.com>
1297 * registryd/Makefile.am: s/oaf/server/ relocate info file.
1299 * configure.in: upd.
1301 * configure.in: depend on a recent bonobo-activation that
1302 will find our server files ...
1304 2001-08-16 Bill Haneman <bill.haneman@sun.com>
1306 * libspi/accessible.c : accessible_new() :
1307 Now we add the Component interface via bonobo_object_add_interface,
1308 if the contained AtkObject implements AtkComponent.
1309 * libspi/accessible.h : now include "component.h"
1310 * libspi/component.h :
1311 * libspi/component.c : added files - implementation of
1312 bonobo wrapper object for Accessibility/Component
1313 * libspi/listener.c :
1314 Added test code to check for Accessibility/Component:1.0
1315 interface and report whether it is implemented by the
1317 * libspi/registry.c :
1318 Now we check for not only the hash of the whole event
1319 string before relaying the event, we also check the
1320 "minor" event string (without the detail string).
1321 This allows event listeners to be registered against
1322 all events of a certain major+minor type, or just
1323 against a specific major+minor+detail type.
1324 * libspi/accessible.c :
1325 Added implementations for Accessible:get_parent(),
1326 Accessible:getChildCount(), and Accessible:getChildAtIndex().
1327 * libspi/registry.c :
1328 * libspi/listener.c :
1329 Replaced calls to Accessibility_Accessible_ref() and
1330 Accessibility_Accessible_unref() with
1331 calls to bonobo_object_dup_ref() and
1332 bonobo_object_release_unref(), so that the CORBA object
1333 is dup-ed and released when relayed, as well as the bonobo object.
1335 2001-08-15 Mark McLoughlin <mark@skynet.ie>
1337 * libspi/Makefile.am,
1338 registryd/Makefile.am,
1339 at-bridge/Makefile.am.
1340 test/Makefile.am, configure.in:
1341 reverse previous changes.
1343 * /idl/Image.idl: fix typo.
1345 * test/Makefile.am: put DEBUG_FLAGS
1348 2001-08-15 Mark McLoughlin <mark@skynet.ie>
1350 * test/app.c: use argv[0] instead of
1353 2001-08-15 Mark McLoughlin <mark@skynet.ie>
1355 * libspi/Makefile.am,
1356 registryd/Makefile.am,
1357 at-bridge/Makefile.am.
1358 test/Makefile.am, configure.in:
1359 cleanup, replace individual LIBS/CFLAGS with
1360 AT_COMMON_{LIBS|CFLAGS}.
1364 2001-08-15 Mark McLoughlin <mark@skynet.ie>
1366 * configure.in, libspi/Makefile.am:
1367 Change IDL path checking for bonobo-activation
1370 2001-08-15 Bill Haneman <bill.haneman@sun.com>
1372 * registryd/registry.c : separated event listeners to use
1373 3 separate lists (focus, window, toolkit). Began testing
1374 event names against hashes before relaying events.
1375 * test/at.c : now register for events of type "focus:"
1376 * test/app.c : now generate events of type "focus:"
1377 * at-bridge/bridge.c : register with ATK for focus events,
1378 and we now relay those focus events to any "focus:" listeners.
1379 This now works with the bridge as a GTK_MODULE when running test/at.
1380 * libspi/registry.c :
1381 * libspi/listener.c :
1382 now we ref event sources before propagating, and unref on receipt.
1383 * libspi/registry.c :
1384 some changes to internal structs, to support event typestring hashes.
1385 * text/app.c : changed the way the appname is generated.
1386 * cspi : added directory that will hold the C bindings library for
1387 non-CORBA/bonobo-savvy clients.
1388 * cspi/spi.h : header file that contains the function prototypes for the C binding.
1389 * idl/Component.idl : added in parameter to indicate coord system for
1390 geometry-related calls.
1391 * idl/Hyperlink.idl : added readonly n_links attribute
1392 * idl/Image.idl : changed methods to attributes.
1394 2001-08-15 Mark McLoughlin <mark@skynet.ie>
1396 * at-bridge/Makefile.am: link against
1397 ../libspi/libspi.la instead of -lspi.
1399 * at-spi/test/app.c: include
1400 bonobo-activation.h. Use a default appname
1401 if one is not provided.
1403 2001-08-14 Bill Haneman <bill.haneman@sun.com>
1405 * idl/Registry.idl : temporarily changed register_Application
1406 to oneway, to work around issue with initial registration
1408 * idl/Application.idl : changed attribute "id" from readonly
1409 to read-write, since it needs to be assigned by Registry.
1410 * registryd/registryd.c : added call to set application id
1412 * registryd/registry.c : changed de-registration procedure to
1413 use CORBA_Object_hash() to find matching object ref in application
1414 lists and listener lists.
1415 * registryd/registry.c : defined EventTypeStruct and EventTypeMajor,
1416 began distinguishing between event types (work in progress).
1418 2001-08-13 Bill Haneman <bill.haneman@sun.com>
1421 * libspi/application.c:
1422 Added implementations for get/set id, get_toolkitName,
1424 * registryd/registryd.c :
1428 Converted from use of OAF to bonobo-activation.
1429 * libspi/desktop.h :
1430 * libspi/desktop.c :
1432 Removed references to atksimpleobject, since base atkobject
1433 implementation now provides functionality we need.
1434 * libspi/atksimpleobject.c :
1435 * libspi/atksimpleobject.h :
1440 * at-bridge/Makefile.am
1441 * at-bridge/bridge.c
1444 Added directory "bridge" and contents, and added dependencies
1445 in Makefile.am/configure.in.
1446 Initial checkin of "at-bridge".
1447 This code is a GTK_MODULE which automatically registers
1448 GTK+ apps with the accessibility registry, using an object
1449 reference to the root ATK object.
1451 2001-08-10 Mark McLoughlin <mark@skynet.ie>
1453 * po/Makefile.in.in: Remove. Again. If this
1454 doesn't get autogenerated - you need to update
1457 2001-08-07 Mark McLoughlin <mark@skynet.ie>
1459 * po/Makefile.in.in: Add. Again.
1461 2001-07-31 Bill Haneman <bill.haneman@sun.com>
1463 * libspi/accessible.c : added support for 'description' property.
1464 * libspi/accessible.c
1466 * libspi/registry.c : changed to use bonobo_object instead of bonobo_x_object
1467 (since the two are now equivalent in libbonobo)
1475 * idl/Value.idl : changed these 'secondary' interfaces to inherit from
1476 Bonobo::Unknown as does Accessibility::Accessible.
1477 * idl/StreamableContent.idl : as above, and replaced internal InputStream
1478 interface with Bonobo::Stream, since it was redundant with it.
1479 (The Stream returned by a StreamableContext object is expected to
1480 implement only a subset of Bonobo::Stream)
1482 2001-07-28 Anders Carlsson <andersca@gnome.org>
1484 * libspi/accessible.c (accessible_object_finalize): Change
1485 g_free to g_object_unref since the AtkObject is a GObject.
1487 2001-07-30 Bill Haneman <bill.haneman@sun.com>
1489 * idl/Accessibility.idl: add new IDL files
1492 * idl/Action.idl: Definitions of actionable UI object
1493 * idl/Component.idl: Definitions of UI component geometry, etc.
1494 * idl/Hyperlink.idl: Defs of hyperlink behavior
1495 * idl/Image.idl: Def of accessible image
1496 * idl/Selection.idl: Definition of UI object with selectable children
1497 * idl/StreamableContent.idl: Definition of UI object with streamable backing data
1498 * idl/Table.idl: Definitions for access to table ('spreadsheet') elements
1499 * idl/Text.idl: Interface defs for UI elements with complex textual content
1500 * idl/Value.idl: Definition of UI element that is a value controller or display
1502 2001-07-27 Michael Meeks <michael@ximian.com>
1504 * po/Makefile.in.in: remove autogenerated file from CVS.
1506 * libspi/Makefile.am: Radicaly re-vamp to simplify & add ORBit2
1509 * idl/Registry.idl: include guard.
1511 * idl/Accessibility.idl: Add, and include all the other IDL
1514 * idl/*.idl: remove mass of pragmas etc.
1516 2001-07-26 Michael Meeks <michael@ximian.com>
1518 * registryd/Makefile.am (registryd_SOURCES): remove
1521 2001-07-27 Mark McLoughlin <mark@skynet.ie>
1523 * libspi/.cvsignore, registryd/.cvsignore,
1524 test/.cvsignore: updated.
1526 * po/Makefile.in.in: gettext update.
1528 2001-07-25 Bill Haneman <bill.haneman@sun.com>
1530 * initial CVS checkin
1532 2001-06-29 Michael Meeks <michael@ximian.com>
1534 * configure.in: add AM_CONFIG_HEADER to gen config.h