blob: b311d0fd5bca6309c9c80118f1904461236c11df [file] [log] [blame]
<!doctype html>
<html lang="en">
<!--
Copyright 2013 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Accessibility Internals</title>
<link rel="stylesheet" href="chrome://resources/css/chrome_shared.css">
<link rel="stylesheet" href="accessibility.css">
<script type="module" src="accessibility.js"></script>
</head>
<body>
<h1>Accessibility Internals</h1>
<p>
Use this page to inspect the internal representation of accessibility in
Chrome. You can see and modify the various accessibility modes Chrome has.
You can also view the accessibility tree for a specific page, or for the
Chrome app natively.
</p>
<div class="columns">
<div class="column">
<h2>Accessibility modes:</h2>
<p>
Check/uncheck accessibility modes to see how they change a page's
accessibility.
</p>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="native"
aria-describedby="native_secondary">
</span>
Native accessibility API support
</label>
</div>
<div id="native_secondary" class="secondary">
Allows Chrome to be controlled via native accessibility APIs
specific to this platform.
</div>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="web"
aria-describedby="web_secondary">
</span>
Web accessibility
</label>
</div>
<div id="web_secondary" class="secondary">
Accessibility support is enabled for web content.
</div>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="text"
aria-describedby="text_secondary">
</span>
Text metrics
</label>
</div>
<div id="text_secondary" class="secondary">
Enables support for querying line breaks and the bounding
box of arbitrary character ranges.
</div>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="extendedProperties"
aria-describedby="extended_properties_secondary">
</span>
Extended properties
</label>
</div>
<div id="extended_properties_secondary" class="secondary">
Exposes accessibility APIs needed only by advanced assistive
technologies.
</div>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="screenReader"
aria-describedby="screen_reader_secondary">
</span>
Screen reader
</label>
</div>
<div id="screen_reader_secondary" class="secondary">
Exposes accessibility APIs needed only by screen readers.
</div>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="html"
aria-describedby="html_secondary">
</span>
HTML
</label>
</div>
<div id="html_secondary" class="secondary">
Exposes HTML tag names and attributes via accessibility APIs.
</div>
<h2>Active assistive technology</h2>
<div>
Active assistive technology:
<span id="active_at_name"></span>
</div>
<div>
Is the active AT a screen reader:
<span id="active_at_is_screen_reader"></span>
</div>
<if expr="is_win">
<h2>Accessible node counters</h2>
<div>Number of accessible nodes available to accessibility tools (ATs):
<span id="dormantCount"></span>.</div>
<div>Number of accessible nodes referenced by one or more ATs:
<span id="liveCount"></span>.</div>
<div>Number of previously active nodes no longer available in the
browser: <span id="ghostCount"></span>.</div>
</if>
</div>
<div class="column">
<h2>
Locking the accessibility mode from being changed by other
applications:
</h2>
<p>
Accessibility features in Chrome are off by default and enabled
automatically on-demand.
</p>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="isolate"
aria-describedby="isolate_secondary">
</span>
Suppress automatic accessibility enablement from platform API
consumers such as assistive tech.
</label>
</div>
<div id="isolate_secondary" class="secondary">Changes to this setting will
persist until the browser is restarted. This setting is the same as
running with --disable-platform-accessibility-integration.</div>
<div class="checkbox-row">
<label>
<span class="checkbox-wrapper">
<input type="checkbox" autocomplete="off" id="locked"
aria-describedby="locked_secondary">
</span>
Lock the current accessibility mode from being changed
except by this page.
</label>
</div>
<p>
To force accessibility to be enabled at launch, run Chrome with this
flag:
<pre>--force-renderer-accessibility</pre>
</p>
<p>
To force the accessibility AXMode to one of the predefined bundles, run
Chrome with the --force-renderer-accessibility flag and optional
argument:
<pre>--force-renderer-accessibility=[basic|complete|form-controls]</pre>
If the optional parameter is absent, the AXMode bundle will default to
complete.
</p>
<p>
To disable accessibility, run Chrome with this flag:
<pre>--disable-renderer-accessibility</pre>
</p>
</div>
</div>
<div>
<h2>Accessibility tree viewing options:</h2>
<div class="api-type-wrapper">
<label>API type shown in the tree:
<select id="apiType">
<option>Error: Not able to load options</option>
</select>
<label>
</div>
<h3>Filters:</h3>
<p>
Use filters to match the attributes and attribute values you want
included in the output. Filters can contain simple wildcards (*) only,
they're not regular expressions. Attributes are separated by spaces.
</p>
<div>
<label>
Allow:
<input id="filter-allow" autocomplete="off"
aria-describedby="allow_secondary">
</label>
</div>
<div id="allow_secondary" class="secondary">
Include these attributes. Empty attributes are skipped.
</div>
<div>
<label>
Allow empty:
<input id="filter-allow-empty" autocomplete="off"
aria-describedby="allow-empty_secondary">
</label>
</div>
<div id="allow-empty_secondary" class="secondary">
Include these attributes, even if they are empty.
</div>
<div>
<label>
Deny:
<input id="filter-deny" autocomplete="off"
aria-describedby="deny_secondary">
</label>
</div>
<div id="deny_secondary" class="secondary">
Exclude these attributes.
</div>
</div>
<h2>Chrome Native UI:</h2>
<div id="browsers" class="list">
<label>
Set a delay, in milliseconds, before getting the native accessibility
tree:
<div></div>
<input id="native-ui-delay" autocomplete="off" type="number" value="0">
ms
</label>
</div>
<h2>Pages:</h2>
<div id="pages" class="list"></div>
<h2 id="widgets-header">Top Level Windows:</h2>
<p id="widgets-not-supported" class="hidden">
Top Level Window support is not available on this platform.
</p>
<div id="widgets" class="list"></div>
</body>
</html>