New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft tree view design pattern #131
Comments
This commit includes a draft resolution to issue #131. In aria-practices.html, this commit makes changes to the "TreeView" section and adds one new section to the keyboard interface development section. In the treeview pattern description: 1. Simplify and clarify definition, removing use of undefined terms. 2. Added child node, root node, and parent node to list of terms. 3. Described the difference between multi-select and single-select trees using the files system navigator introduced in the definition. Keyboard subsection: Made the following revisions per the APG editorial guidelines. 1. Removed references to tab and described what happens when a tree receives focus. 2. Where two keys were described in a single bullet, separated them. 3. Start each bullet with a key name followed by a colon; removed the word key. 4. Fixed tense and removed "should" statements. 5. Removed use of the word visible to described a node revealed due to expansion since sometimes trees scroll and a node may be in an expanded branch but not visible. 6. For enter key, added option to select a node in a single-select tree where selection does not follow focus. 7. Addressed orientation; added statement at the beginning for vertical orientation, which is the default, and then added a note to address horizontal orientation. 8. Describe both acceptable models of multiple selection. 9. Add note about selection follows focus with a link to a new subsection of the keyboard interface design section. 10. Add note about separate controls for select all and unselect all. 11. Add note about aria-activedescendant. Roles, states, and properties subsection: 1. Fixed tense and removed "should" from the language. 2. Added statement that parent nodes contain or own a group. 3. Added statement that parent nodes have a label. 4. Added statement that tree elements have a label. 5. Added statement about aria-multiselectable and its default value of false. 6. Added statement about aria-orientation and its default value of vertical. 7. Added note about aria-owns. In the examples subsection: 1. Replaced the table of examples with a list to match other sections. 2. Made more descriptive names for the example links. 3. Simplified the description of what each example demonstrates. In the keyboard interface development section: Added new section with id "kbd_selection_follows_focus" and title "Deciding When to Make Selection Automatically Follow Focus"
Until we merge, the following changes to resolve this issue can be seen in the issue131 branch in rawgit. The proposed resolution includes changes to the Tree View" design pattern section and adding a new sub section to the keyboard interface development section. The changes are as follows. Treeview pattern description changes
Keyboard subsection changesMade the following revisions per the APG editorial guidelines.
Roles, states, and properties subsection changes
Examples subsection changes
New subsection on selection follows focusIn the keyboard interface development section: Added new section with id "kbd_selection_follows_focus" Later, this section will include links to two two separate examples of tabs where one has selection follows focus and one does not. |
@jnurthen, @accdc, @annabbott Could you please review the above list of changes this week and provide feedback here in this issue? |
The first paragraph containing definition of treeview needs an edit: |
For issue #131, modified: aria-practices.html: Tree view section, fixed typo in first paragraph, changed "An" to "an". Per feedback from @annabbott.
modified the keyboard subsection of the `id='treeview'` section of aria-practices.html: 1. Corrected shift+arrow selection commands to state that they toggle the selection state. 2. Corrected some typos and fixed capitalization. 3. Simplified language of the type ahead guidance.
In aria-practices.html, in treview section: Strenghtened the language in the roles, states, and properties guidance regarding the consequences of failing to label parent nodes in a treeview. It now includes the following statement. Warning: parent nodes missing a label are labeled by all child elements, causing screen readers to announce every child and often making a tree so verbose that it is unusable. Also described the consequence of incorrectly putting aria-expanded on an end node, which is another very common problem.
The APG section for TreeView looks good to me. |
Merge branch 'issue131' into master.
Merged into master, but @jnurthen, I would still like your watchful eye to give it a look. |
Reviewed Tree View (http://w3c.github.io/aria-practices/#TreeView): Second sentence in paragraph that follows Term definitions: |
Continuation of Reviewed Tree View (http://w3c.github.io/aria-practices/#TreeView): I find the following confusing: For a vertically oriented tree:
Suggest the first bullet under both single and multi-select be exactly the same. For the second bullet under multi-select, suggest "If one or more nodes are selected before the tree receives focus, focus is set on the first selected node." |
Continuation of Reviewed Tree View (http://w3c.github.io/aria-practices/#TreeView): Second and third bullets under Selection in multi-select trees: > Recommended selection model: |
I see four tree example pages but none have Issue numbers assigned for their review - please advise? |
modified aria-practices.html: Fixed all problems raised by @annabbott in her November 30, 2016 comments on issue #131.
modified aria-practices.html: Removed link to now closed issue #131 at the start of the tree view design pattern section.
The tree view design pattern is at:
http://w3c.github.io/aria-practices/#TreeView
The guidance is complete. However, work to make it consistent with APG editorial guidelines is needed.
Specifically, the keyboard section format is not consistent with the guidelines.
The roles, states, and properties section includes "should" statements instead of present-tense statements.
Additionally, the description could be made easier to understand by defining terms before they are used.
Finally, some of the information in the table of examples should be moved into the example pages and the table can be changed to a list with simplified descriptions of what makes each example distinct.
As of November 30, 2016, The changes described below are merged into master and can be seen at:
http://w3c.github.io/aria-practices/#TreeView
Requested reviews
The text was updated successfully, but these errors were encountered: