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

Clarification for applicability of F15 technique & 4.1.2 #3754

Merged
merged 14 commits into from
Apr 16, 2024
Merged
32 changes: 24 additions & 8 deletions techniques/failures/F15.html
Original file line number Diff line number Diff line change
@@ -1,10 +1,23 @@
<!DOCTYPE html><html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"><head><title>Failure of Success Criterion 4.1.2 due to implementing custom controls that do not use an accessibility API for the technology, or do so incompletely</title><link rel="stylesheet" type="text/css" href="../../css/sources.css" class="remove"></link></head><body><h1>Failure of Success Criterion 4.1.2 due to implementing custom controls that do not use an accessibility API for the technology, or do so incompletely</h1><section class="meta"><p class="id">ID: F15</p><p class="technology">Technology: failures</p><p class="type">Type: Failure</p></section><section id="applicability"><h2>When to Use</h2>
<!DOCTYPE html><html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Failure of Success Criterion 4.1.2 due to implementing custom controls that do not use an accessibility API for the technology, or do so incompletely</title>
<link rel="stylesheet" type="text/css" href="../../css/sources.css" class="remove"></link></head>
<body>
<h1>Failure of Success Criterion 4.1.2 due to implementing custom controls that do not use an accessibility API for the technology, or do so incompletely</h1>
<section class="meta"><p class="id">ID: F15</p><p class="technology">Technology: failures</p><p class="type">Type: Failure</p></section><section id="applicability"><h2>When to Use</h2>
<p> Applies to all technologies that support an accessibility API. </p>
</section><section id="description"><h2>Description</h2>
<p> When standard controls from accessible technologies are used, they usually are programmed in a way that uses and supports the accessibility API. If custom controls are created, however, then it is up to the programmer to be sure that the newly created control supports the accessibility API. If this is not done, then assistive technologies will not be able to understand what the control is or how to operate it or may not even know of its existence.</p>
<p> When standard controls from accessible technologies are used, they usually are programmed in a way that uses and supports the accessibility API.
However, when custom controls are created, it is up to the control's author to ensure the control supports and is correctly exposed to users via the platform's the accessibility API.
mbgower marked this conversation as resolved.
Show resolved Hide resolved
If this is not done, then assistive technologies will not be able to understand what the control is or how to operate it or may not even know of its existence.</p>
<div class="note">
<p>For technologies that support it, WAI-ARIA can be used to expose a custom control's role, name, value, states, and properties via the accessibility API for the technology.</p>
</div>
<div class="note">
<p>Beyond ensuring custom controls are properly exposed to users via the platform's accessibility API, there are many other considerations that need to be made to ensure the
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
control is accessible to as many people as possible. Keyboard functionality, target size, and color contrast requirements are only a few of the additional considerations that need to be accounted for,
all of which go beyond what 4.1.2 Name, Role, Value, and this technique cover.</p>
</div>
</section><section id="examples"><h2>Examples</h2>
<section class="example">

Expand All @@ -19,32 +32,35 @@
<section class="procedure"><h3>Procedure</h3>
<ol>
<li> Using the accessibility checker for the technology (or if
that is not available, inspect the code or test with an
that is not available, inspect the code via a browser's dev tools, or test with an
mbgower marked this conversation as resolved.
Show resolved Hide resolved
assistive technology), check the controls to see if they support
the accessibility API. </li>
the accessibility API.</li>
</ol>
</section>
<section class="results"><h3>Expected Results</h3>
<ul>
<li> If step #1 is false, then this failure condition applies and the
content fails this Success Criterion </li>
content fails this success criterion.</li>
</ul>
</section>
</section><section id="related"><h2>Related Techniques</h2></section><section id="resources"><h2>Resources</h2>

<ul>
<li>
<a href="https://accessibilityinsights.io/docs/windows/overview/">Accessibility Insights for Windows</a>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
</li>
<li>
<a href="https://msdn.microsoft.com/en-us/library/ms696082.aspx">Active Accessibility Checker (AccExplorer)</a>
</li>
<li>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
<a href="https://www.w3.org/TR/wai-aria/">Accessible Rich Internet Applications (WAI-ARIA) 1.0</a>
<a href="https://www.w3.org/TR/wai-aria/">Accessible Rich Internet Applications (WAI-ARIA)</a>
</li>
<li>
<a href="https://www.w3.org/WAI/ARIA/apg/">WAI-ARIA Authoring Practices Guide</a>
</li>
<li>
<a href="https://www.w3.org/TR/aria-in-html/">Using WAI-ARIA in HTML</a>
<a href="https://www.w3.org/TR/html-aria/"ARIA in HTML</a>
</li>
</ul>

</section></body></html>
</section></body></html>
11 changes: 8 additions & 3 deletions understanding/20/name-role-value.html
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<!DOCTYPE html>
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8"></meta>
<meta charset="UTF-8">
<title>Understanding Name, Role, Value</title>
<link rel="stylesheet" type="text/css" href="../../css/sources.css" class="remove"></link>
<link rel="stylesheet" type="text/css" href="../../css/sources.css" class="remove">
</head>
<body>
<h1>Understanding Name, Role, Value</h1>
Expand Down Expand Up @@ -50,8 +50,13 @@ <h2>Intent of Name, Role, Value</h2>
focus. The focus state of a control can be programmatically determined, and notifications
about change of focus are sent to user agents and assistive technology. Other examples
of user interface control state are whether or not a checkbox or radio button has
mbgower marked this conversation as resolved.
Show resolved Hide resolved
been selected, or whether or not a collapsible tree or list node is expanded or collapsed.
been selected, or whether a collapsible tree view or disclosure widget is in expanded or collapsed state.
mbgower marked this conversation as resolved.
Show resolved Hide resolved
</p>

<div class="note">
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
<p>While whether a control has focus or not is an important state that can be programmatically exposed to users,
specific focus behaviors and keyboard accessibility are covered by other success criteria.</p>
</div>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved

<div class="note">

Expand Down