Accessibility/Accessible Table Implementation

From MozillaWiki
< Accessibility
Revision as of 16:27, 16 May 2007 by Parente (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

ATK/AT-SPI implementations

gtkTable

  • getAccessibleAt(0, 0) returns the top-left data cell. Row and column headers cannot be fetched using using this method.
  • getIndexAt(0,0) returns the child index under the table accessible of the top-left data cell. Again, row and column headers cannot be fetched using this method.
  • getRowHeader(n), getColumnHeader(n) return the accessible representing the one and only one header on the nth row and nth column. Only one header is allowed per row and column in gtk as far as I know.
  • getRowDescription(n), getColumnDescription(n) return the accessible text or name on the one and only one header on the nth row and nth column. This is equivalent to getRowHeader(n).name or getRowHeader(n).queryInterface(<whatever the text idd is>).getText(0,-1). I can't tell which one gail is doing for us without looking at the gail code.
  • I have never seen a row or column span in gtkTables, so it's hard to test getRowExtentAt and getColumnExtentAt. Everything returns 1 as expected.
  • Once the table receives focus, the arrow keys move the selection within the table. Pressing up when selection is in the top row has no effect: selection never reaches the headers. Pressing Shift-Tab does move focus to the header on the currently active column though. Once one of the headers has focus, the left/right arrow keys move focus among the headers. Interestingly, pressing down arrow from any of the headers gives focus back to the table and selects the top cell in the column under the header losing focus.
  • The table container fires focus: events. Moving the active selection box within the table causes object:active-descendant-changed events. Moving the focus among the headers causes focus: events.

OpenOffice.org Calc (2.0.4)

  • getAccessibleAt(0, 0) returns the top-left data cell. Row and column headers cannot be fetched using using this method.
  • getIndexAt(0,0) returns the child index under the table accessible of the top-left data cell. Again, row and column headers cannot be fetched using this method.
  • The accessible name on any data cell is it's header (e.g., 'Cell A1'). The accessible text is its shown content.
  • getRowHeader(n), getColumnHeader(n) return None in all cases.
  • getRowDescription(n), getColumnDescription(n) return empty strings in all cases.
  • getRowExtentAt and getColumnExtentAt return 1 in all cases, even for cells that span rows and columns.
  • Once the table receives focus, the arrow keys move the selection within the table. You can never give the headers focus.
  • The table container fires focus: events. Moving the active selection box within the table causes object:active-descendant-changed events.

Firefox bookmarks

Firefox static HTML

Firefox ARIA