You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Scott O'Bryan (JIRA)" <de...@myfaces.apache.org> on 2009/02/11 20:17:02 UTC
[jira] Resolved: (TRINIDAD-1371) JAWS: layout tables incorrectly
identified as data tables
[ https://issues.apache.org/jira/browse/TRINIDAD-1371?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Scott O'Bryan resolved TRINIDAD-1371.
-------------------------------------
Resolution: Fixed
Fix Version/s: 1.2.11-core
1.0.11-core
This has been applied. Thanks!
> JAWS: layout tables incorrectly identified as data tables
> ---------------------------------------------------------
>
> Key: TRINIDAD-1371
> URL: https://issues.apache.org/jira/browse/TRINIDAD-1371
> Project: MyFaces Trinidad
> Issue Type: Bug
> Components: Components
> Affects Versions: 1.2.10-core, 1.0.10-core
> Environment: Windows, JAWS8
> Reporter: Andy Schwartz
> Assignee: Scott O'Bryan
> Priority: Minor
> Fix For: 1.0.11-core, 1.2.11-core
>
> Attachments: jira1371_for_Trinidad_trunk_1.0.x.patch, jira1371_for_Trinidad_trunk_1.2.x.patch
>
>
> JAWS distinguishes between two types of HTML tables:
> 1. Data tables
> 2. Layout tables
> Data tables should have markup that identify column/row headers (eg. <th> elements with scope="col|row") as well as non-empty summary attributes. JAWS provides special support for navigating to data tables as well as for navigating between cells within data tables.
> Layout tables should not contain any row/column header markup and should specify an empty summary attribute. These tables should be completely transparent to screen reader end users since they are only used for layout purposes.
> Unfortunately JAWS sometimes gets confused and treats some layout tables as if they are data tables. This is bad, since this adds "noise" to the screen read reader experience - ie. JAWS reports the presence of tables that are not interesting to blind users.
> To see this in action, access the following panelFormLayout demo via JAWS:
> http://www.irian.at/trinidad-demo/faces/components/panelFormLayout.jspx
> To see which tables JAWS considers to be data tables, do the following:
> - Hit Insert+F3 to bring up the JAWS "Virtual HTML Featuers" dialog
> - Arrow down to the "Tables List" item and hit Enter
> - JAWS brings up the "Select a Table" dialog, which lists the data tables.
> In the panelFormLayout demo, the only data table in the page is the "Attributes" table. However, JAWS incorrectly reports 4 other layout tables rendered by the panelFormLayout component as being data tables.
> A simple technique for forcing JAWS to recognize layout tables is to include the datatable="0" attribute on the HTML table element. This is non-standard attribute that JAWS checks to determine whether a particular HTML table is a data/layout table.
> This fix for this bug is to enhance OutputUtils.renderLayoutTableAttributes() to render the datatable="0" attribute when in screen reader mode (ie. when CoreRenderer.isScreenReaderMode() returns true). This will force JAWS to treat any Trinidad-rendered layout tables as layout tables and avoid confusion with data tables.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.