<chapter id="ats-1">
<title>Mobility Impairments</title>
<para>
Mobility impairments can be caused by arthritis, stroke, cerebral palsy, Parkinson's disease, multiple sclerosis, and loss of limbs or digits, among others. Poor muscle control or weakness can make using standard keyboards and mouse devices difficult. For instance, some people are unable to type two keys simultaneously, while others tend to hit multiple keys or to bounce keys when pressing or releasing them. People who are able to use only one hand likewise have difficulties with some keyboard and mouse tasks. 
</para>
<para>
The technologies which can assist those with mobility impairments are:
</para>
<itemizedlist>
<listitem><para><emphasis>On-Screen Keyboard</emphasis> 
 - lets users select keys using a pointing method such as pointing devices, switches, or Morse-code input systems.
</para>
</listitem>
<listitem>
<para>
<emphasis>Mouse and Keyboard Enhancements
</emphasis> - helpful for users who have trouble typing and controlling a mouse or a keyboard.
</para>
</listitem>
</itemizedlist>

<section id="gok">
<title>GNOME On-Screen Keyboard (gok)</title>
<indexterm>
<primary>On-Screen Keyboard</primary>
</indexterm>
<indexterm>
<primary>GOK</primary>
</indexterm>
<para>
The <application>On-Screen Keyboard</application> application displays virtual keyboards on your desktop. You can use the standard mouse pointer or alternative pointing device to operate the virtual keyboards. <application>On-Screen Keyboard</application> displays the following types of keyboards:
</para>
<itemizedlist>
<listitem>
<para>
Composer Keyboards enable you to compose text. To type alphanumeric characters, you select the characters on the composer keyboard.
</para>
</listitem>
<listitem>
<para>
Dynamic Keyboards reflect the applications 
that are currently running on the desktop. For example, <application>On-Screen Keyboard</application> generates dynamic keyboards that contain keys to represent the applications that are running on your desktop or the menus that are contained in an application. 
</para>
</listitem>
</itemizedlist>
<para>
You must enable the assistive technology services before you are able to use many of the accessibility tools available.
</para>
<procedure>
<step>
<para>
Choose <menuchoice><guimenuitem>System</guimenuitem><guimenuitem>Preferences</guimenuitem><guimenuitem>Assistive Technologies</guimenuitem></menuchoice>.
</para>
</step>
<step>
<para>
Select <guilabel>Enable assistive technologies
</guilabel> and then press <guibutton>Close and Log Out</guibutton>.
</para>
</step>
<step>
<para>
Log back in. The assistive technology services will be started automatically.
</para>
</step>
</procedure>

<!--
<para>
For more information about the 
<application>On-Screen Keyboard</application> application, see the <ulink type="help" url="ghelp:gok"> Help for <application>On-Screen Keyboard</application></ulink>.
</para>
<-->
</section>

<section id="ats-5">
<title>Maximizing Application Windows for On-Screen Keyboard Users
</title>
<indexterm>
<primary>maximizing Terminal On-Screen Keyboard</primary>
</indexterm>
<para>
If you are an <application>On-Screen Keyboard
</application> user, you cannot use any application in Full-Screen mode because the application window obscures the <application>On-Screen Keyboard</application> display.
</para>
<para>
To resize the window for use with the 
<application>On-Screen Keyboard</application> 
application, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
Do not enable the Full-Screen mode in the application.
</para>
</listitem>
<listitem>
<para>
Give focus to the application window.
</para>
</listitem>
<listitem>
<para>
Press <keycap>F10</keycap> to maximize the application.
</para>
</listitem>
</orderedlist>
</section>

<section id="dtconfig-0">
<title>Mouse and Keyboard Enhancements</title>
<para>
This section describes how to configure the mouse and keyboard to make these devices accessible to more users.
</para>

<section id="dtconfig-1">
<title>Configuring the Mouse</title>
<para>
Use the <guilabel>Mouse</guilabel> preference tool to configure the mouse to suit your needs. To open the <guilabel>Mouse</guilabel> preference tool, choose <menuchoice><guimenu>System</guimenu><guisubmenu>Preferences</guisubmenu><guimenuitem>Mouse
</guimenuitem></menuchoice>. The <guilabel>
Mouse Preferences</guilabel> dialog is displayed.
</para>

<section id="dtconfig-2">
<title>Configuring Mouse Behavior</title>
<para>
The following sections describe how to modify the behavior of the mouse to suit your needs. 
</para>

<section id="dtconfig-3">
<title>Configuring the Mouse for Left-Handed Use</title>
<indexterm>
<primary>mouse</primary>
<secondary>left hand</secondary>
</indexterm>
<para>
To configure the mouse for left-handed use, click on the <guilabel>Buttons</guilabel> tab in the <guilabel>Mouse Preferences</guilabel> dialog, then select the <guilabel>Left-handed mouse</guilabel> option. When you select
this option, the system swaps the functions of the left mouse button and the right mouse button immediately.
</para>
</section>

<section id="dtconfig-4">
<title>Configuring Double-Click Behavior</title>
<indexterm>
<primary>mouse</primary>
<secondary>double-click behavior</secondary>
</indexterm>
<para>
If you have difficulty double-clicking, you can increase the period of time that the system allows to elapse between the first click and the second click of a double-click. For example, if the double-click timeout
setting is 0.4 seconds, you must perform the second click of a double-click within 0.4 seconds of the first click. If the second click occurs more than 0.4 seconds after the first click, the system interprets the two clicks as two single clicks. 
</para>
<para>
To configure the double-click timeout setting, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
Click on the <guilabel>Buttons</guilabel> tab in the <guilabel>Mouse Preferences</guilabel> dialog.
</para>
</listitem>
<listitem>
<para>
Use the <guilabel>Timeout</guilabel> slider to specify the timeout in seconds that the system allows between the two clicks of a double-click. Moving the slider to the right will increase the timeout interval in 0.1 
second intervals. In the same manner, moving the slider to the left will decrease the timeout in 0.1 second intervals.
</para>
</listitem>
<listitem>
<para>
Double-click on the light bulb to the right of the slider to test the setting. If you perform the two clicks of the double-click within the timeout specified, the light bulb lights up fully to display a yellow glow around the bulb. If you do not double-click 
within the timeout specified, the light bulb does not light fully. You should increase the timeout setting and try again. When the light bulb lights, the timeout setting is suitable for your needs. 
</para>
</listitem>
</orderedlist>
</section>

<section id="dtconfig-20">
<title>Changing Mouse Pointer Size</title>
<indexterm>
<primary>mouse</primary>
<secondary>pointer size</secondary>
</indexterm>
<indexterm>
<primary>pointer</primary>
<secondary>size</secondary>
</indexterm>
<para>
To change the size of the mouse pointer that is displayed on the desktop, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
Click on the <guilabel>Pointers</guilabel> tab in the <guilabel>Mouse Preferences</guilabel> dialog. 
</para>
</listitem>
<listitem>
<para>
This will display a list of pointer themes and sizes available.
</para>
</listitem>
<listitem>
<para>
By default, GNOME does not include mouse pointer themes. Information about installing and using pointer themes can be found in the <ulink type="help" url="ghelp:user-guide?goscustdesk-54">User Guide</ulink>.
</para>
</listitem>
</orderedlist>
<note>
<para>
On some platforms you must log out and log in again for this setting to take effect.
</para>
</note>
</section>

<section id="dtconfig-6">
<title>Locating the Mouse Pointer</title>
<indexterm>
<primary>mouse</primary>
<secondary>locating pointer</secondary>
</indexterm>
<para>
If you have difficulty locating the mouse pointer on the screen, you can enable an option to highlight the pointer when you press the <keycap>Control</keycap> 
key. To enable this option, click on the <guilabel>Pointers</guilabel> tab in the <guilabel>Mouse Preferences</guilabel> dialog, then select the <guilabel>Highlight the pointer when you press Ctrl</guilabel>
option. When you press <keycap>Control</keycap>, the system displays an animation around the pointer to highlight the pointer. 
</para>
<note>
<para>
On some platforms, you must log out and log in again before this setting takes effect.
</para>
</note>
</section>

<section id="dtconfig-5">
<title>Configuring Mouse Speed and Sensitivity</title>
<indexterm>
<primary>mouse</primary>
<secondary>speed and sensitivity</secondary>
</indexterm>
<para>
To configure the speed and sensitivity of the mouse, perform the following steps: 
</para>
<orderedlist>
<listitem>
<para>
Click on the <guilabel>Motion</guilabel> tab in the <guilabel>Mouse Preferences</guilabel> dialog. 
</para>
</listitem>
<listitem>
<para>
Configure the following options:
</para>
<variablelist>
<varlistentry>
<term>Acceleration</term>
<listitem>
<para>
Use the slider to specify the speed at which the mouse pointer moves around the screen when you move the mouse.
</para>
<para>
If you select a low setting, the mouse pointer moves at a speed similar to the speed at which you are physically moving the mouse. This means that you need to physically move the mouse larger distances to cover the screen
area. If you select a high setting, the mouse pointer moves at a faster speed than the speed at which you physically move the mouse. This means that you need to physically move the mouse small distances to cover the screen area.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Sensitivity</term>
<listitem>
<para>
Use the slider to specify how responsive the mouse pointer is to movements of the mouse. Moving the slider to the right will increase the sensitivity and moving it to the left will decrease the sensitivity.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Threshold</term>
<listitem>
<para>
Use the slider to specify the distance that you must move an item before the system interprets the move action as a drag-and-drop action.
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</orderedlist>
</section>
</section>

<section id="dtconfig-7">
<title>Configuring the Cursor</title>
<indexterm>
<primary>cursor</primary>
<secondary>stop blinking</secondary>
</indexterm>
<para>
The following section describes how to modify the display characteristics of the cursor. 
</para>

<section id="dtconfig-9">
<title>Stopping the Cursor from Blinking</title>
<para>
To stop the cursor from blinking in text boxes and other areas, perform the following steps: 
</para>
<orderedlist>
<listitem>
<para>
Choose <menuchoice><guimenu>System</guimenu>
<guisubmenu>Preferences</guisubmenu><guimenuitem>Keyboard</guimenuitem></menuchoice> to start the 
<application>Keyboard</application> preference tool.
</para>
</listitem>
<listitem>
<para>
In the <guilabel>Keyboard</guilabel> tabbed section, deselect the <guilabel>Cursor blinks in text boxes and fields</guilabel> option.
</para>
</listitem>
</orderedlist>
</section>
</section>

<section id="dtconfig-10">
<title>Keyboard Mouse Emulation</title>
<para>
If you have difficulty using a mouse, you can use the keyboard to emulate the mouse functions. See <xref linkend="dtconfig-14"/> of this guide for more information.
</para>
</section>
</section>

<section id="dtconfig-14">
<title>Configuring an Accessible Keyboard</title>
<para>
Use the <application>Keyboard</application> preference tool to configure the keyboard accessibility options. To open the <application>Keyboard</application> 
preference tool, choose <menuchoice><guimenu>System
</guimenu><guisubmenu>Preferences</guisubmenu>
<guimenuitem>Keyboard</guimenuitem></menuchoice>. Accessibility options can be enabled by selecting the <guilabel>Accessibility</guilabel> tab.
</para>
<para>
The <guilabel>Accessibility</guilabel> tabbed section allows the following options:
</para>
<para>
<emphasis>"Allow to turn accessibility features on and off from the keyboard" (Alt-A)</emphasis> - this determines if keyboard accessibility functions can be turned on or off with a key command.
</para>
<para>
<emphasis>Simulate simultaneous keypresses (Alt-S)</emphasis> - allows multiple shift (or other) keys to be entered individually but processed as a single combination keystroke. This keyboard accessibility technique is known as "sticky keys."
</para>
<para>
<emphasis>Disable sticky keys if two keys are pressed together (Alt-B)</emphasis> - automatically exit the sticky keys mode if any key combination is entered normally (eq, at the same time instead of entered individually).
</para>
<para>
<emphasis>Only accept long keypresses (Alt-O)</emphasis> - in this mode, keys must be pressed for a given length of time before they are accepted as input. This accessibility technique is also known as "slow keys." This portion of the <guilabel>Accessibility</guilabel> tabbed section also supplies a Delay slider (Alt-D) to indicate the press-down delay before the key is accepted as input.
</para>
<para>
<emphasis>Ignore fast duplicate keypresses (Alt-I)</emphasis> - in this mode, successive entry of the same key will only have a single instance of that key accepted as input. This accessibility technique is also known as "bounce keys." This portion of the <guilabel>Accessibility</guilabel> tabbed section also supplies a Delay slider (Alt-E) to indicate the press-down delay before successive keys are ignored.
</para>
</section>

<section id="dtconfig-mousekeys">
<title>Configuring a Keyboard-Based Mouse</title>
<para>
Use the <application>Keyboard</application> preference tool to configure the keyboard to simulate a mouse. To open the <application>Keyboard</application> 
preference tool, choose <menuchoice><guimenu>System
</guimenu><guisubmenu>Preferences</guisubmenu>
<guimenuitem>Keyboard</guimenuitem></menuchoice>. The Mouse Keys options can be enabled by selecting the <guilabel>Mouse Keys</guilabel> tab.
</para>
<para>
<emphasis>"Allow to control the pointer using the keyboard" (Alt-A)</emphasis> - this determines if the keyboard can be used to control the mouse pointer.
</para>
<para>
<emphasis>Acceleration (Alt-C)</emphasis> - determines how quickly mouse motion will accelerate when keyboard directional keys are 
pressed.
</para>
<para>
<emphasis>Speed (Alt-S)</emphasis> - determines how quickly the mouse pointer will move when keyboard directional keys are pressed.
</para>
<para>
<emphasis>Delay (Alt-D)</emphasis> - determines how much (or if) keypresses may be dampened or ignored when keyboard directional keys are pressed.
</para>
</section>

<section id="mousetweaks">
<title>MouseTweaks</title>
<para>
<application>MouseTweaks</application> is a collection of accessibility enhancements for pointing devices. The <userinput>mousetweaks</userinput> package provides the functions offered by the <guilabel>Accessibility</guilabel> tab of the <guilabel>Mouse</guilabel> preference tool. It also contains two panel applets related to the mouse accessibility. More particularly:
</para>
<itemizedlist>
<listitem>
<para>
It allows users to perform a secondary click by doing a click-and-hold of the primary mouse button.
</para>
</listitem>
<listitem>
<para>
It offers a way to perform the various clicks without using any hardware button. In this context, the <application>Dwell Click</application> panel applet can be used to choose what click type to perform.
</para>
</listitem>
<listitem>
<para>
It provides the <application>Pointer Capture</application> panel applet. This applet creates an area on the panel into which the pointer can be captured until the user releases it with a predefined button and modifier combination.
</para>
</listitem>
</itemizedlist>
<para>
Most mouse-related accessibility options can be found by using <menuchoice><guimenuitem>System</guimenuitem><guimenuitem>Preferences</guimenuitem><guimenuitem>Mouse</guimenuitem></menuchoice> and selecting the <guilabel>Accessibility</guilabel> tab. Two additional panel applets can optionally be added to the GNOME menu bar / system panel as well; see the sections below. The full manual can be viewed by selecting the <guilabel>Help</guilabel> item from the contextual menu of the <application>Dwell Click</application> applet.
</para>

<!--
<para>
yelp mousetweaks(1) - <ulink type="help" url="ghelp:user-guide?mousetweaks">full manual</ulink>
</para>
-->

<section>
<title>Simulated Secondary Click</title>
<para>
A secondary or right-click can be issued by using the primary button and keeping it held down for a specified delay.
</para> 
</section>

<section>
<title>Dwell Click</title>
<para>
A click can be issued by having the mouse pointer dwell in a given spot for a specified delay. In this mode, the click-type is determined by the <guilabel>ClickType</guilabel> window, <application>Dwell Click</application> applet, or by the direction in which the user moves the mouse after the dwell time has elapsed. The click-type can be single, double, drag or right.
</para>
<para>
The <application>Dwell Click</application> panel applet can be installed by right-clicking the GNOME Desktop menu bar / system panel, selecting <guilabel>Add to Panel</guilabel>, choosing <application>Dwell Click</application> and clicking the <guilabel>Add</guilabel> button.
</para>
</section>

<section>
<title>Pointer Capture</title>
<para>
The mouse pointer can be locked into an area of the screen so the pointing device is free for other tasks. For example, this capability allows a powerchair user to control both the powerchair and the mouse pointer with a single powerchair joystick.
</para>
<para>
The <application>Pointer Capture</application> panel applet creates such an area on the panel, into which the user can lock the pointer until released in a determined way.
</para>

<para>
The <application>Pointer Capture</application> panel applet can be installed by right-clicking the GNOME Desktop menu bar / system panel, selecting <guilabel>Add to Panel</guilabel>, choosing <application>Pointer Capture</application> and clicking the <guilabel>Add</guilabel> button.
</para>
<para>
Preferences may be set by choosing <guilabel>Preferences</guilabel> in the context menu of the <application>Pointer Capture</application> applet:
</para>
<para>
In the <guilabel>Capture Pointer</guilabel> section, the user can specify under what circumstances the pointer gets captured when it moves into the capture area. For example, if the <keycap>Ctrl</keycap> modifier key is checked, the pointer gets captured when it is over the capture area and the user presses the <keycap>Ctrl</keycap> modifier key. If no modifier is checked and the mouse button is set to 0, the pointer only has to move into the capture area to get locked. It is also possible to specify a combination of modifiers and mouse button.
</para>
<para>
In the <guilabel>Release Pointer</guilabel> section, the user can specify what modifier or mouse button releases the pointer. It is also possible to specify a combination of modifiers and mouse button.
</para>
<para>
In the <guilabel>Size of Capture Area</guilabel> section, the user can specify the width of the capture area on the GNOME panel.
</para>
</section>
</section>

<section id="enable-dasher">
<title>Dasher</title>
<para>
Dasher is an information-efficient text-entry interface, driven by natural continuous pointing gestures. Dasher is a competitive text-entry system wherever a full-size keyboard cannot be used - for example on a palmtop or wearable computer, or when operating any computer one-handed (by joystick, touchscreen or mouse) or zero-handed (eg, by head-mouse or eye-tracker).
</para>
<procedure>
<step>
<para>
Choose <menuchoice><guimenuitem>Applications</guimenuitem><guimenuitem>Accessories</guimenuitem><guimenuitem>Terminal</guimenuitem></menuchoice>.
</para>
</step>
<step>
<para>
Enter: <userinput>sudo apt-get install dasher
</userinput>
</para>
</step>
<step>
<para>
Enter: <userinput>dasher</userinput>
</para>
</step>
</procedure>
<para>
Dasher may also be installed from the <menuchoice><guimenuitem>Applications</guimenuitem><guimenuitem>Add/Remove</guimenuitem></menuchoice> dialog. In either case, it may later be launched in these ways:
</para>
<itemizedlist>
<listitem>
<para>
Press <keycombo><keycap>Alt</keycap>
<keycap>F2</keycap></keycombo> or <keycombo><keycap>Meta</keycap>
<keycap>R</keycap></keycombo> for the <emphasis>Run</emphasis> dialog, type <userinput>dasher</userinput> and press <keycap>Enter</keycap>.
</para>
</listitem>
<listitem>
<para>
Choose <menuchoice><guimenuitem>Applications</guimenuitem><guimenuitem>Accessories</guimenuitem><guimenuitem>Terminal</guimenuitem></menuchoice> and execute <userinput>dasher</userinput>.
</para>
</listitem>
<listitem>
<para>
Press <keycap>Alt-F1</keycap> and select <menuchoice><guimenuitem>Applications</guimenuitem><guimenuitem>Universal Access</guimenuitem><guimenuitem>Dasher</guimenuitem></menuchoice>.
</para>
</listitem>
</itemizedlist>
</section>

<!--
<listitem>
<para>
Using the numeric keypad to emulate mouse actions. See <xref linkend="dtconfig-14"/>.
</para>
</listitem>
<listitem>
<para>
Specifying the duration for which you must press and hold a key before the system accepts the keypress. See <xref linkend="dtconfig-15"/>.
</para>
</listitem>
<listitem>
<para>
Ignoring rapid, repeated keypresses of the same key. See <xref linkend="dtconfig-16"/>.
</para>
</listitem>
<listitem>
<para>
Accepting key combinations in sequence rather than simultaneously. See <xref linkend="dtconfig-17"/>.
</para>
</listitem>
<listitem>
<para>
Emitting an audible notification when a user activates or deactivates a toggle key. See <xref linkend="dtconfig-18"/>.
</para>
</listitem>
<listitem>
<para>
Ignoring long keypresses of the same key and control the repeat rate of a keypress. See <xref linkend="dtconfig-19"/>.
</para>
</listitem>
</itemizedlist>

<section id="dtconfig-13">
<title>Activating Keyboard Accessibility Options</title>
<indexterm>
<primary>keyboard accessibility options</primary>
</indexterm>
<para>
To activate the keyboard accessibility options, perform the following steps: 
</para>
<orderedlist>
<listitem>
<para>
Choose <menuchoice><guimenu>System</guimenu>
<guisubmenu>Preferences</guisubmenu><guimenuitem>Keyboard</guimenuitem></menuchoice> and select 
<guilabel>Accessibility</guilabel>
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable keyboard accessibility features</guilabel> option.
</para>
</listitem>
<listitem>
<para>
Click on the <guilabel>Basic</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Beep when features turned on or off from keyboard</guilabel> option to receive an audible notification each time a keyboard accessibility option changes; to toggle these settings, use the 
following keyboard shortcuts:
</para>
<itemizedlist>
<listitem>
<para>
Press and hold <keycap>Shift</keycap> for eight seconds to enable or disable the Slow Keys feature. 
</para>
</listitem>
<listitem>
<para>
Press <keycap>Shift</keycap> five times to enable or disable the Sticky Keys feature.
</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>
To automatically disable the keyboard accessibility options if the options are not used for a specified number of seconds, select the <guilabel>Disable if unused for X seconds</guilabel> option. Use the slider 
to specify the number of seconds of keyboard idle time required before the system disables the keyboard accessibility options. 
</para>
<para>
This option is intended for computers that are shared by a number of different users, some of whom require the keyboard accessibility options. 
</para>
</listitem>
<listitem>
<para>Changes made will be instantly applied.
</para>
</listitem>
</orderedlist>
</section>

<section id="dtconfig-14">
<title>Enabling Mouse Emulation</title>
<indexterm>
<primary>mouse keys</primary>
</indexterm>
<para>
The mouse keys feature enables you to use the numeric keypad on the keyboard to emulate mouse actions. This feature benefits users who have difficulty using a mouse or other pointing device. To enable and configure the mouse keys feature, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
In the <application>Keyboard Accessibility Preferences (AccessX)</application> dialog, select the <guilabel>Mouse Keys</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable Mouse Keys</guilabel> option.
</para>
</listitem>
<listitem>
<para>
Configure the following options to determine the behavior of the mouse pointer when you control the pointer from the numeric keypad:
</para>
<variablelist>
<varlistentry>
<term>
<guilabel>Maximum Pointer Speed</guilabel>
</term>
<listitem>
<para>
Use this spin box to specify the maximum speed in pixels per second at which the pointer moves around the screen.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<guilabel>Elapsed Time before Maximum Mouse Speed
</guilabel>
</term>
<listitem>
<para>
Use this spin box to specify the duration in 
milliseconds before the pointer accelerates to the maximum pointer speed. 
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<guilabel>Delay between Keypress and Pointer Movement
</guilabel>
</term>
<listitem>
<para>
Use this spin box to specify the interval
in milliseconds between a keypress and the time when the pointer starts to move. 
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</orderedlist>
<para>
When you enable mouse keys, the keys on the numeric keypad have the following functions:
</para>
<table frame="topbot" id="dtconfig-TBL-1">
<title>Numeric Keypad to Mouse Function Mapping</title>
<tgroup cols="2" colsep="0" rowsep="0">
<colspec colname="colspec0" colwidth="52.78*"/>
<colspec colname="colspec1" colwidth="47.22*"/>
<thead>
<row rowsep="1">
<entry>
<para>Numeric Keypad Keys</para>
</entry>
<entry>
<para>Function</para>
</entry>
</row>
</thead>
<tbody>
<row>
<entry valign="top">
<para>
1, 2, 3, 4, 6, 7, 8, 9
</para>
</entry>
<entry valign="top">
<para>
Move the mouse pointer around the screen
</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>5</para>
</entry>
<entry colname="colspec1" valign="top">
<para>
Mouse button click
</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>0</para>
</entry>
<entry colname="colspec1" valign="top">
<para>
Mouse button toggle
</para>
</entry>
</row>
<row>
<entry valign="top">
<para>/</para>
</entry>
<entry valign="top">
<para>
Primary mouse button
</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>*</para>
</entry>
<entry colname="colspec1" valign="top">
<para>
Secondary mouse button
</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>-</para>
</entry>
<entry colname="colspec1" valign="top">
<para>
Tertiary mouse button
</para>
</entry>
</row>
</tbody>
</tgroup>
</table>
<para>
The Toggle Mouse Button key enables the currently selected mouse button until the <guilabel>Mouse button click</guilabel> key is pressed. This allows you to perform drag and drop operations.
</para>
<para>
The <guilabel>Mouse button click</guilabel> emulates the currently selected mouse button. Pressing <keycap>/</keycap>, <keycap>*</keycap> or <keycap>-</keycap> will change the behaviour of this. The currently selected mouse button can be seen in the <application>Keyboard Accessibility Status
</application> panel application, discussed in <xref linkend="dtconfig-21"/>.
</para>
<note>
<para>
The <guilabel>Primary mouse button</guilabel> is the left mouse button for right-handed people. The <guilabel>Secondary mouse button</guilabel> is the right mouse button and the <guilabel>Tertiary mouse button</guilabel> is the middle mouse button.
</para>
</note>
<para>
Some Solaris systems also use the function keys to emulate the mouse buttons. The 
function-key-to-mouse-button mappings are described in the following table:
</para>
<table frame="topbot" id="dtconfig-TBL-2">
<title>F-Key to Mouse Action Mapping on Solaris Systems</title>
<tgroup cols="2" colsep="0" rowsep="0">
<colspec colname="colspec0" colwidth="52.78*"/>
<colspec colname="colspec1" colwidth="47.22*"/>
<thead>
<row rowsep="1">
<entry>
<para>Function Key</para>
</entry>
<entry>
<para>Function</para>
</entry>
</row>
</thead>
<tbody>
<row>
<entry valign="top">
<para>F2</para>
</entry>
<entry valign="top">
<para>Mouse button 1</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>F3</para>
</entry>
<entry colname="colspec1" valign="top">
<para>Mouse button 2</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>F4</para>
</entry>
<entry colname="colspec1" valign="top">
<para>Mouse button 3</para>
</entry>
</row>
</tbody>
</tgroup>
</table>
</section>

<section id="dtconfig-15">
<title>Enabling Slow Keys</title>
<indexterm>
<primary>slow keys</primary>
</indexterm>
<para>
The slow keys feature enables you to customize how the keyboard handles user input in the following ways:
</para>
<itemizedlist>
<listitem>
<para>
Specify the duration for which you must press and hold a key before the system accepts the keypress. This aspect of the feature benefits users who frequently press keys that they do not intend to press. 
</para>
</listitem>
<listitem>
<para>
Enable audible indications of keyboard input and acceptance. This aspect of the feature benefits users who cannot see the result of a keypress.
</para>
</listitem>
</itemizedlist>
<para>
To enable and configure the slow keys feature, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
From the <application>Keyboard Accessibility 
Preferences (AccessX)</application> dialog, select the <guilabel>Filters</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable Slow Keys</guilabel> option.
</para>
<tip>
<para>
To select or deselect the Slow Keys feature from the keyboard, press and hold <keycap>Shift</keycap> for eight seconds. This will present a dialog confirming 
that you want Slow Keys enabled. The <keycap>Shift</keycap> keyboard shortcut automatically selects all of the Slow Keys options. If you selected the <guilabel>Beep when features turned on or off from the
keyboard</guilabel> option in the <guilabel>Basic</guilabel> tab, after four seconds the system beeps three times to indicate that the system is about to 
select or deselect the feature.
</para>
</tip>
</listitem>
<listitem>
<para>
Use the <guilabel>Only accept keys held for</guilabel> slider or spin box to specify the duration, in milliseconds, for which you must press and hold a key before the system accepts the keypress. Use the <guilabel>Type to test settings</guilabel> text box to 
test the Slow Keys setting and modify the setting as required. 
</para>
</listitem>
<listitem>
<para>
To enable audible indications of keyboard input and acceptance, select the following options:
</para>
<variablelist>
<varlistentry>
<term>
<guilabel>Beep when key is pressed</guilabel>
</term>
<listitem>
<para>
Select this option to hear a beep when you press a key.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<guilabel>Beep when key is accepted</guilabel>
</term>
<listitem>
<para>
Select this option to hear a beep when the system accepts a keypress. 
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<guilabel>Beep when key is rejected</guilabel>
</term>
<listitem>
<para>
Select this option to hear a beep when the system rejects a keypress. The system rejects a keypress if you do not press and hold the key for the duration that is specified in the <guilabel>Only accept keys held for</guilabel> spin box.
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</orderedlist>
</section>

<section id="dtconfig-16">
<title>Enabling Bounce Keys</title>
<indexterm>
<primary>bounce keys</primary>
</indexterm>
<para>
The bounce keys feature enables you to customize the keyboard to ignore rapid, repeated keypresses of the same key. For example, users with impaired motor skills 
might press the same key several times when they intend to press the key once. This feature enables you to customize the keyboard to ignore repeated keypresses. 
</para>
<para>
To enable and configure the Bounce Keys feature, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
From the <application>Keyboard Accessibility Preferences (AccessX)</application> dialog, select the <guilabel>Filters</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable Bounce Keys</guilabel> option. 
</para>
</listitem>
<listitem>
<para>
Use the <guilabel>Ignore duplicate keypresses within</guilabel> slider or spin box to specify the duration in milliseconds (ms) after the first keypress for which the system ignores repeated keypresses of the same key. For example, if you select a duration of 500 ms, the system ignores all repeated keypresses of the same key that occur within half a second of the first keypress.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Beep if key is rejected</guilabel> option to hear an audible indication when the system ignores a key.
</para>
</listitem>
</orderedlist>
<note>
<para>
If you want to enable the Bounce Keys feature, ensure that the <guilabel>Enable Slow Keys</guilabel> option is deselected. The Slow Keys feature requires you to press a key for a specified duration before the 
system accepts the keypress as a valid keypress. If you cannot press the key for the duration that is specified by the Slow Keys setting, deselect the <guilabel>Enable Slow Keys</guilabel> option to enable the system 
to accept your input.
</para>
</note>
</section>

<section id="dtconfig-17">
<title>Enabling Sticky Keys</title>
<indexterm>
<primary>sticky keys</primary>
</indexterm>
<para>
The sticky keys feature enables you to press  
key combinations in sequence rather than simultaneously. This feature is designed for users who are unable to press two or more keys at the same time. 
</para>
<para>
To enable and configure the Sticky Keys feature, perform the following steps:
</para>
<orderedlist>
<listitem>
<para>
From the <application>Keyboard Accessibility 
Preferences (AccessX)</application> select the <guilabel>Basic</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable Sticky Keys</guilabel> option.
</para>
<tip>
<para>
To enable the Sticky Keys feature from the keyboard, press <keycap>Shift</keycap> five times. This will present a dialog confirming that you with to enable Sticky Keys. The <keycap>Shift</keycap> keyboard shortcut automatically selects all of the Sticky Keys 
options. If you selected the <guilabel>Beep when features turned on or off from the keyboard</guilabel> option, the system beeps to indicate that the system is about to select or deselect the feature. When active, pressing <keycap>Shift</keycap> five times 
in a row will present a dialog asking if you want to disable Sticky Keys.
</para>
</tip>
</listitem>
<listitem>
<para>
Select the <guilabel>Beep when modifier is pressed</guilabel> option to receive an audible indication each time you press a modifier key such as <keycap>Ctrl</keycap>, <keycap>Alt</keycap>, or <keycap>Shift</keycap>. This option is useful to remind you whether a modifier key is active or inactive. 
</para>
</listitem>
<listitem>
<para>
Selecting the <guilabel>Disable if two keys pressed together</guilabel> option will present a dialog with the option to disable Sticky Keys if two keys are pressed at the same time.
</para>
</listitem>
</orderedlist>
<para>
You can use the Sticky Keys feature in Latch or Lock mode. The following table describes how to choose a mode and the difference between the two modes:
</para>
<table frame="topbot" id="dtconfig-TBL-3">
<title>Sticky Keys Latch or Lock Mode</title>
<tgroup cols="3" colsep="0" rowsep="0">
<colspec colname="colspec0" colwidth="52.78*"/>
<colspec colname="colspec1" colwidth="47.22*"/>
<colspec colname="colspec2" colwidth="47.22*"/>
<thead>
<row rowsep="1">
<entry valign="top">
<para>To use the Sticky Keys feature in...</para>
</entry>
<entry valign="top">
<para>Press the modifier key...</para>
</entry>
<entry colname="colspec2" valign="top">
<para>The modifier key remains active
until...</para>
</entry>
</row>
</thead>
<tbody>
<row>
<entry valign="top">
<para>Latch mode</para>
</entry>
<entry valign="top">
<para>Once.</para>
</entry>
<entry colname="colspec2" valign="top">
<para>
You press a non-modifier key.
</para>
</entry>
</row>
<row>
<entry colname="colspec0" valign="top">
<para>Lock mode</para>
</entry>
<entry colname="colspec1" valign="top">
<para>Twice in quick succession.</para>
</entry>
<entry colname="colspec2" valign="top">
<para>
You press the modifier key again.
</para>
</entry>
</row>
</tbody>
</tgroup>
</table>
<para>
Example 1: If you want to press <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo>, do the following:
</para>
<orderedlist>
<listitem>
<para>
Press <keycap>Alt</keycap> to latch the modifier key. The <keycap>Alt</keycap> key remains active.
</para>
</listitem>
<listitem>
<para>
Press <keycap>F1</keycap>. The key combination is now complete. After you press <keycap>F1</keycap>, the <keycap>Alt</keycap> modifier key is no longer active.
</para>
</listitem>
</orderedlist>
<para>
Example 2: If you want to press <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Tab</keycap></keycombo>, do the following:
</para>
<orderedlist>
<listitem>
<para>
Press <keycap>Ctrl</keycap> twice to lock the modifier key. The <keycap>Ctrl</keycap> key remains active.
</para>
</listitem>
<listitem>
<para>
Press <keycap>Alt</keycap>. 
</para>
</listitem>
<listitem>
<para>
Press <keycap>Tab</keycap>. The key combination is now complete. 
</para>
</listitem>
<listitem>
<para>
To unlock the modifier key, press <keycap>Ctrl</keycap> again.
</para>
</listitem>
</orderedlist>
</section>

<section id="dtconfig-18">
<title>Enabling Audible Toggle Key Notifications</title>
<indexterm>
<primary>toggle keys</primary>
<secondary>enabling audio notifications</secondary>
</indexterm>
<para>
A toggle key is any key on the keyboard that
can switch between two states. The <keycap>Num Lock</keycap>, <keycap>Caps Lock</keycap>, and <keycap>Scroll Lock</keycap> keys are toggle keys. Most toggle keys have an associated light emitting diode (LED) on the keyboard that lights when the toggle key 
is active. To assist users with visual impairments, you can customize the keyboard to emit an audible notification when a user presses a toggle key. For example, when you press <keycap>Num Lock</keycap>, you can determine whether the key is toggled or not 
by the sound emitted. 
</para>
<para>
To enable accessible toggle keys, perform the following steps: 
</para>
<orderedlist>
<listitem>
<para>
From the <application>Keyboard Accessibility 
Preferences (AccesX)</application> select the 
<guilabel>Filters</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable Toggle Keys</guilabel> option.
</para>
</listitem>
</orderedlist>
<para>
When you activate the <keycap>Num Lock</keycap>, <keycap>Caps Lock</keycap>, or <keycap>Scroll Lock</keycap> keys, the system beeps once. When you deactivate a toggle key, the system beeps twice.
</para>
</section>

<section id="dtconfig-19">
<title>Enabling Repeat Keys</title>
<indexterm>
<primary>repeat keys</primary>
</indexterm>
<para>
The Repeat Keys feature enables you to repeat a keystroke multiple times without pressing
the key more than once. This feature is designed for users who cannot release keys quickly; for example, users who operate a mouth stick. When you enable repeat keys, you can specify the duration for which you 
must press a key before the key starts to repeat.
</para>
<para>
To enable and configure the Repeat Keys feature, perform the following steps: 
</para>
<orderedlist>
<listitem>
<para>
From the <application>Keyboard Accessibility 
Preferences (AccessX)</application> select the <guilabel>Basic</guilabel> tab.
</para>
</listitem>
<listitem>
<para>
Select the <guilabel>Enable Repeat Keys</guilabel> option.
</para>
</listitem>
<listitem>
<para>
Use the <guilabel>Delay</guilabel> slider or spin box to specify the duration for which you must press a key before the keyboard interprets the action as a repeat key. If you have difficulty releasing keys, select a long time delay. 
</para>
</listitem>
<listitem>
<para>
Use the <guilabel>Speed</guilabel> slider or spin box to specify the speed at which the keyboard repeats the keypress as input.
</para>
</listitem>
</orderedlist>
</section>
</section>

<section id="dtconfig-21">
<title>Using the Keyboard Accessibility Status Panel Application</title>
<indexterm>
<primary>Keyboard Accessibility Status panel application</primary>
</indexterm>
<para>
The <application>Keyboard Accessibility Status
</application> panel application shows you the status of the keyboard accessibility features. This panel application displays icons to indicate which keyboard accessibility features are enabled in the 
<application>Keyboard Accessibility</application> preference tool.
</para>
<para>
To add the <application>Keyboard Accessibility Status</application> panel application to a panel, right-click on the panel, then choose <menuchoice><guimenu>Add to Panel</guimenu></menuchoice> and select <guimenuitem>Keyboard Accessibility Status</guimenuitem>.
</para>
<para>
The following table describes the icons that the panel application displays and the status that each icon represents:
</para>
<table frame="topbot" id="dtconfig-TBL-25">
<title>Keyboard Accessibility Status Icons</title>
<tgroup cols="2" colsep="0" rowsep="0">
<colspec colname="colspec0" colwidth="21.97*"/>
<colspec colname="colspec1" colwidth="78.03*"/>
<thead>
<row rowsep="1">
<entry>
<para>Icon</para>
</entry>
<entry>
<para>Keyboard Accessibility Status</para>
</entry>
</row>
</thead>
<tbody>
<row>
<entry valign="top">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/accessx.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Keyboard Accessibility Features enabled icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry valign="middle">
<para>Keyboard accessibility is available 
but none of the individual features are enabled.
</para>
</entry>
</row>
<row>
<entry valign="top">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/bouncekeys.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Bounce Keys enabled icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry valign="middle">
<para>
The Bounce Keys feature is enabled.
</para>
</entry>
</row>
<row>
<entry valign="top">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/mousekeys.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Mouse Keys enabled icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry valign="middle">
<para>
The Mouse Keys feature is enabled. The dot in the mouse button shows which button is currently associated with the <guilabel>Mouse button click</guilabel> key.
</para>
</entry>
</row>
<row>
<entry valign="top">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/slowkeys.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Slow Keys enabled icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry valign="middle">
<para>The Slow Keys feature is enabled.</para>
</entry>
</row>
<row>
<entry valign="top">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickyaltlatch.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Alt key latched icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Alt</keycap> key is latched.
</para>
</entry>
</row>
<row>
<entry valign="top">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickyaltlock.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Alt key locked icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Alt</keycap> key is locked.
</para>
</entry>
</row>
<row>
<entry colname="colspec0">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickyctrllatch.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Ctrl key latched icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry colname="colspec1" valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Ctrl</keycap> key is latched.
</para>
</entry>
</row>
<row>
<entry colname="colspec0">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickyctrllock.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Ctrl key locked icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry colname="colspec1" valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Ctrl</keycap> key is locked.
</para>
</entry>
</row>
<row>
<entry colname="colspec0">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickyshiftlatch.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Shift key latched icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry colname="colspec1" valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Shift</keycap> key is latched.
</para>
</entry>
</row>
<row>
<entry colname="colspec0">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickyshiftlock.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Shift key locked icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry colname="colspec1" valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Shift</keycap> key is locked.
</para>
</entry>
</row>
<row>
<entry colname="colspec0">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickywindowlatch.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Super/Windows key latched icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry colname="colspec1" valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Super</keycap>/<keycap>Windows</keycap> key is latched.
</para>
</entry>
</row>
<row>
<entry colname="colspec0">
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="figures/stickywindowlock.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Super/Windows key locked icon</phrase>
</textobject>
</mediaobject>
</screenshot>
</entry>
<entry colname="colspec1" valign="middle">
<para>
The Sticky Keys feature is enabled and the 
<keycap>Super</keycap>/<keycap>Windows</keycap> key is locked.
</para>
</entry>
</row>
</tbody>
</tgroup>
</table>
</section>
-->
</section>
</chapter>
