Skip to content
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

Update keyboard to remove normative acceptance of "completely custom … #3670

Open
wants to merge 20 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
1750c36
Add two notes/clarifications to 2.1.1 understanding
patrickhlauke Feb 14, 2021
e60623a
Add same notes to keyboard-no-exception understanding
patrickhlauke Feb 14, 2021
efaacb6
Add example to 2.1.1 understanding for search form with mouse-only su…
patrickhlauke Oct 23, 2021
0ce48a3
Expand note further
patrickhlauke Oct 25, 2021
dc067a1
Merge branch 'patrickhlauke-understanding-keyboard-note' of https://g…
patrickhlauke Oct 25, 2021
358e4f5
Merge branch 'main' into patrickhlauke-understanding-keyboard-note
patrickhlauke Nov 17, 2023
e45c743
Update understanding/20/keyboard-no-exception.html
mbgower Dec 1, 2023
8f101d8
Update understanding/20/keyboard-no-exception.html
mbgower Dec 1, 2023
af59961
Update understanding/20/keyboard-no-exception.html
mbgower Dec 1, 2023
91e9f64
Update understanding/20/keyboard.html
mbgower Dec 1, 2023
25e4261
capitalise SC
patrickhlauke Dec 1, 2023
cf1365d
Expanded/reformatted the note
patrickhlauke Dec 28, 2023
39ceb46
Update understanding/20/keyboard-no-exception.html
patrickhlauke Jan 19, 2024
416918f
Update understanding/20/keyboard-no-exception.html
patrickhlauke Jan 19, 2024
62ee758
Update understanding/20/keyboard.html
patrickhlauke Jan 19, 2024
1c04ca4
Update understanding/20/keyboard.html
patrickhlauke Jan 19, 2024
9602cbd
Update keyboard-no-exception.html
detlevhfischer Feb 2, 2024
1f9b6cd
Clean up Detlev's "users of the keyboard interface" suggestion, for n…
patrickhlauke Feb 2, 2024
38cce8a
Change "passes" to "satisfies"
patrickhlauke Feb 2, 2024
6d89105
Update keyboard to remove normative acceptance of "completely custom …
detlevhfischer Feb 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 29 additions & 2 deletions understanding/20/keyboard-no-exception.html
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,41 @@ <h2>In brief</h2>
<h2>Intent of Keyboard (No Exception)</h2>


<p>The intent of this Success Criterion is to ensure that
<p>The intent of this Success Criterion is to ensure that
<strong>all</strong> content is operable from the keyboard. This is the same as Success Criterion 2.1.1,
except that no exceptions are allowed. This does not mean that content where the underlying
function requires input that depends on the path of the user's movement and not just
the endpoints (excluded from the requirements of 2.1.1) must be made keyboard accessible.
Rather, it means that content that uses path-dependent input cannot conform to this
Success Criterion and therefore cannot meet Guideline 2.1 at Level AAA.
Success Criterion and therefore cannot meet Guideline 2.1 at Level AAA.
</p>

<div class="note">
<p>Platforms and user agents usually have conventions for how web content or
applications are controlled with a keyboard interface. If content does not follow
the platform/user agent conventions it may be difficult to use, as users will need
to learn different interaction methods. As a <em>best practice</em>, content
should follow the platform/user agent conventions. However, deviating from these
conventions does <em>not</em> fail the normative requirement of this Success Criterion.</p>
<p>
For instance, buttons that have focus can generally be activated using both the
<kbd>Enter</kbd> key and the <kbd>Space</kbd> bar. If a custom button control
in a web application instead only reacts to <kbd>Enter</kbd>
(or even a completely custom key or key combination), this still
<strong>satisfies</strong> the requirements of this Success Criterion.
</p>
</div>

<div class="note">
<p>This Success Criterion does not require that every visible control that can be activated
using a pointer (such as a mouse or touch screen input) must also be focusable and actionable using the keyboard.
The normative requirement is only that there must be a way for keyboard interface users to perform
the same, or comparable, actions and to operate the content. Generally, the easiest way
to achieve this is to provide controls that can be operated with all possible input devices;
however, if a web application implements a separate mode of operation for keyboard interface users,
it will <strong>not</strong> fail the Success Criterion.
</p>
</div>

</section>

Expand Down
31 changes: 30 additions & 1 deletion understanding/20/keyboard.html
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,31 @@ <h2>Intent of Keyboard</h2>

</p>

<div class="note">
<p>Platforms and user agents usually have conventions for how web content or
applications are controlled with a keyboard interface. If content does not follow
the platform/user agent conventions it may be difficult to use, as users will need
to learn different interaction methods. As a <em>best practice</em>, content
should follow the platform/user agent conventions. However, deviating from these
conventions does <em>not</em> always fail the normative requirement of this Success Criterion.</p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Partially dealing with @patrickhlauke's feedback...

Suggested change
conventions does <em>not</em> always fail the normative requirement of this Success Criterion.</p>
conventions does <em>not</em> automatically fail the normative requirement of this Success Criterion.</p>

(The rest of his comment is addressed, IMHO, by the text that follows).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that still leaves doubt though about when it does or doesn't, so authors and testers still are none the wiser

<p>
For instance, buttons that have focus can generally be activated using both the
<kbd>Enter</kbd> key and the <kbd>Space</kbd> bar. If a custom button control
in a web application instead only reacts to <kbd>Enter</kbd>, this still
<strong>satisfies</strong> the requirements of this Success Criterion.
</p>
</div>

<div class="note">
<p>This Success Criterion does not require that every visible control that can be activated
using a mouse or touch screen must also be focusable and actionable through the keyboard interface.
The normative requirement is only that there must be a way for keyboard interface users to perform
the same, or comparable, actions and to operate the content. Generally, the easiest way
to achieve this is to provide controls that can be operated with all possible input devices;
however, if a web application implements a separate mode of operation for keyboard interface users,
it will <strong>not</strong> fail the Success Criterion.
</p>
</div>

</section>
<section id="benefits">
Expand Down Expand Up @@ -115,8 +140,12 @@ <h2>Examples of Keyboard</h2>
<dd>A PDA device that is usually operated via a stylus has an optional keyboard that can
be attached. The keyboard allows full Web browsing in standard fashion. The Web
content is operable because it was designed to work with keyboard-only access.</dd>
<dt>Example 7: Simple search form with pointer-operable submit button</dt>
<dd>A search form includes a text input field followed by a submit button. The submit button itself
has been coded so that it does <em>not</em> receive focus, and can only be activated using a pointer input.
However, since keyboard users can submit the search by pressing <kbd>Enter</kbd> in the text input
after typing their search terms, the form passes this Success Criterion.</dd>
</dl>

</section>

<section id="resources">
Expand Down