+Optimisation:
+ + async unref's ...
+ + cache Role & queryInterface results ... [!]
+
+2.0.0:
+
+ + fix bug #82509 which prevents return of boolean FALSE from
+ SPI_registerKeystrokeListener for ALL_WINDOWS events
+ when XGrabKey fails.
+
+ + fix bug #84100 which means that keygrabs are not released
+ by the registry when a client dies. Test to make sure
+ grabs are released when a client requests deregistration
+ of a key listener.
+
+2.0.1:
+ + fix bug affecting multihead at-spi behavior.
+
+
+1.1 API Proposed Additions:
+
+ + Need API for getting stacking order of toplevel windows.
+ (bug #84097)
+
+1.2 API Proposed Additions:
+
+ + SPI_dupString ()
+ + Additional relation types: FLOWS_TO, FLOWS_FROM
+ + SPIBoolean
+ AccessibleText_getTextBounds (AccessibleText *text,
+ long start_offset,
+ long end_offset,
+ long *x,
+ long *y,
+ long *width,
+ long *height,
+ SPI_COORD_TYPE type);
+ + char *
+ AccessibleText_getTextWithin (AccessibleText *text,
+ long x,
+ long y,
+ long width,
+ long height,
+ SPI_COORD_TYPE type);
+
+/* *********************************************************** */
+
TODO:
idl:
- + possibly change Value.idl interface to return a value union. [Bill]
- + audit IDL for conformance with bonobo/doc/FAQ's [Java]
- naming practice [Michael]
- + possibly change Value.idl interface to return a value
- union. [Bill] *DONE*
+
+// + audit IDL for conformance with bonobo/doc/FAQ's [Java]
+// naming practice [Michael]
cspi:
- + API change required if above IDL change is made. [Bill]
- + move bonobo bits into cspi/bonobo
+ ensure spi-listener-impl's list notification methods don't
- have a re-enterancy hazard.
- + namespace all methods missing a prepending Acessible
- or SPI_ prefix.
- + Put LGPL headers everywhere.
+ have a re-enterancy hazard. [Michael]
registry:
- + move code into here from libspi
- + kill the getDeviceWhatnot - and use queryInterface,
- don't inherit from the Listener interface - use aggregation
+ + move code into here from libspi [Michael]
+ fire an event on dead application & re-factor the listen for
broken code.
+ remove redundant casts throughout
+ determine if there are other headers we don't need to install
+ consider moving the non-impl. parts into registryd/ bridge/ etc.
- + change the weird string-hash event matching to something sane,
- using GQuark. [Bill]
- + merge the DeviceEvent and KeyEvent structs to avoid the
- bogus casting of these back and forth.
- + complete implementation of support for RelationSet and
- StateSet, and export to cspi.
- + complete and test the pre-emptive key API so that we don't
- always do AnyKey grabs. [Bill]
+ + complete conversion of static methods to "spi_" namespace. [Bill]
test:
+ update test-simple to do complete API tests
- + Add tests for AtkTable, and add table elements to the test window.
- + remove comment from test_value; ensure that it works.
+ + Expand tests for AtkTable
+
+=================
+
+for 2.4/'dev complete'
+
+[** denotes API extension!]
+
+** ATK API for text range bounds?
+
+** add ROLE_EDITBAR [describes objects, usually text entries,
+ that describe and/or control the operation of other
+ components. They both reflect stateful information
+ about the application or the currently-focussed
+ object within the app, and contain editable text.
+ Examples include the URI/location entry field in
+ browsers, the currently-active-file field in an editor,
+ and the formula/edit field in a spreadsheet.]
+
+* multiple-workspace awareness
+
+* in deviceeventcontroller, better keysym/unicode mapping
+ (i.e. more complete)
+
+* type checking in the 'event detail' methods
+ (see TODO comments in cspi/spi_event.c)
+
+* fix silly assumption(s) about apps DISPLAY being
+ same as registry, and being the GDK_DISPLAY()
+ default.
+
+* remove listeners from the list if their processes die.
+
+* do better deregistration on registry finalize.
+
+* check what happens if XKB isn't available - make registry and bridges
+ at least not trash things (even if nonfunctional).
+
+* deviceeventcontroller.c: Distinguish between physical and logical
+ (i.e. button 1 versus "left mouse") mouse buttons.
+
+========
+
+2.6:
+* use XIM for keysym/unicode mapping, string insertion.
+* toplevel windows: implement Z ordering via Component mdi_zorder API.