uspto.gov
Skip over navigation

Section 508 Reference Guide
1194.21 Software Applications and Operating Systems

Overview

This first category of standards applies to purchased or developed operating systems and application software programs. These requirements also apply to EIT products that contain software as an integral part of their functionality. Such application software is bundled or sold with the product, and typically executes on an attached network-connected personal computer or server. For example, a printer would fall under 1194.25 Self-Contained, Closed Products, but the accompanying software used for printing must conform to this portion of the law.

In addition, these requirements apply to telecommunications PBX with TAPI software that allows access to phone system functions from a computer workstation.

A comprehensive example of a software product evaluation is provided in Appendix C.

Back to top

Remember that…

  • An area that is normally overlooked is the installation of software. While the software may be Section 508 compliant, its installation process may not be. An effective solution is to develop the installation process in accordance with the appropriate standards.
  • There are currently no testing tools to determine software compliance automatically.
  • All standards are equal in importance.
  • If a standard states "When…", it only applies to specific situations. Otherwise the standard is not applicable.
  • Most of the standards in this category are good coding practice and should be followed, even when designing software for non-disabled users.
  • Software tools developed by Sun for Java include Ferret, Monkey, and the AccessibilityMonitor. These tools can be used to help ensure compliance.

Back to top

References

Back to top

1194.21(a) keyboard input / text output

"When software is designed to run on a system that has a keyboard, product functions shall be executable from a keyboard where the function itself or the result of performing a function can be discerned textually."

In other words…

At a minimum, every feature of an application must be available using the keyboard. (For example, you cannot have a print function that can only be accessed with a mouse.) The feature itself or the result of the feature must provide text feedback.

Term

  • Discerned textually: A function is textually discernible if it offers text feedback to the user. For example, when a user activates a Delete function, the application may display a confirmation dialog box with text, "Are you sure you want to delete?" Text feedback is accessible to AT.

Determining Compliance

To test for product compliance:

  • Install the software by using only the keyboard.
  • Perform basic software functions using the keyboard (e.g., open and close a file, read the help file, and print). The functions should perform as expected, and this should be evident from text feedback.
  • Consult the product's user manual for functionality. For every function, there must be a means to access and use that function with the keyboard alone.

Notes

  • This law only applies to systems that include keyboards. Information transaction machines such as kiosks with limited input controls would fall under 1194.25 Self-Contained, Closed Products.
  • Please see the accompanying Windows Shortcut Keys for commonly used key combinations.
  • Text feedback is integral to compliance with several other standards. See 1194.21(d), (e), (f), (i) and (l).
  • When navigating through an application, a sighted user can also test for 1194.21(c) compliance by ensuring that each interface element displays focus changes.

Back to top

Windows Shortcut Keys

System-Wide Shortcut Keys

Press To
WINDOWS Display or hide the Start menu.
CTRL + ESC Display or hide the Start menu (same as WINDOWS).
CTRL + ALT + DELETE Display Windows Security screen or Windows Task Manager.
WINDOWS + BREAK Display the System Properties dialog box.
WINDOWS + D Show the desktop.
WINDOWS + M Minimize all windows.
WINDOWS + SHIFT + M Restore minimized windows.
WINDOWS + E Open My Computer with Windows Explorer.
WINDOWS + F Search for a file or folder.
CTRL + WINDOWS + F Search for computers.
WINDOWS + F1 Display Windows Help.
WINDOWS + L Lock your computer if you are connected to a network domain, or switch users if you are not connected to a network domain.
WINDOWS + R Open the Run dialog box.
ALT + TAB(s) Switch between open windows. While holding the ALT key down, you can press TAB several times to navigate through the system display of each previously used window.
ALT + SHIFT + TAB(s) Similar to ALT + TAB(s), switch backward between open windows. You can switch between moving backward or forward by holding or releasing the SHIFT key.
ALT + ESC(s) Cycle the input focus through the windows in the order that they were opened; compare to ALT + TAB.
ALT + SHIFT + ESC(s) Similar to ALT + ESC(s), cycle focus backward through windows. You can switch between moving backward or forward by holding or releasing the SHIFT key.
PRINT SCRN Copy an image of the screen.
ALT + PRINT SCRN Copy an image of the current window.
Left ALT + SHIFT Switch input languages or keyboard layouts (available and configurable when the user installed multiple keyboard layouts through Regional and Language Options in Control Panel).
CTRL + SHIFT Switch keyboard layouts or input languages (available and configurable when the user installed multiple keyboard layouts through Regional and Language Options in Control Panel).
CTRL or left ALT + SHIFT + ~, number (0-9), or ` accent key Use hot key for input languages (available and configurable when the user installed multiple keyboard layouts through Regional and Language Options in Control Panel).
WINDOWS + V [Speech recognition] Toggle listening status of the microphone.
WINDOWS + C [Speech recognition] Correct recognized text strings.
WINDOWS + T [Speech recognition] Toggle speech dictation mode.
WINDOWS + H [Handwriting] Open or close handwriting pad.
WINDOWS + number Activate function reserved for OEM use.

Back to top

System-Wide Accessibility Options and Tools Shortcut Keys

Press To
Right SHIFT for eight seconds straight Switch FilterKeys on and off.
Left ALT + left SHIFT + PRINT SCRN Switch High Contrast on and off.
Left ALT + left SHIFT+ NUM LOCK Switch MouseKeys on and off.
SHIFT five times Switch StickyKeys on and off.
NUM LOCK for five seconds straight Switch ToggleKeys on and off.
WINDOWS + U Open Utility Manager.

Back to top

General Shortcut Keys for Applications

Press To
F1 Display Application Help.
SHIFT + F1 Display tips help (context-sensitive help) near the selected control.
APPLICATION Display the shortcut menu for the selected item.
SHIFT + F10 Display the shortcut menu for the selected item (same as APPLICATION).
CTRL + C Copy selected items.
CTRL + X Cut selected items.
CTRL + V Paste items that have been cut or copied.
CTRL + Z Undo the last action.
CTRL + Y Redo the last action.
ESC Cancel the current task.
DELETE Delete selected items.

Back to top

Navigation and Window Controls Shortcut Keys

Press To
CTRL + F4 Close the active document in applications that allow you to have multiple documents open simultaneously.
ALT + F4 Close the active item, or quit the active application.
CTRL + TAB Move to next pane or palette.
CTRL + SHIFT + TAB Move to previous pane or palette.
F6 Move to next pane or palette (same as CTRL + TAB).
SHIFT + F6 Move to previous pane or palette (same as CTRL + SHIFT + TAB).
CTRL + F6 Move to next window in a group of related windows (or between MDI document windows).
CTRL + SHIFT + F6 Move to previous window in a group of related windows (or between MDI document windows).

Back to top

Menu Controls Shortcut Keys

Press To
ALT + SPACE Display shortcut menu for the active window.
ALT + HYPHEN Display shortcut menu for the active child window (MDI application).
ALT Activate the menu bar and enter menu mode.
F10 Activate the menu bar and enter menu mode (same as ALT).
ALT + access key on menu or dialog box selected Activate the menu bar and open corresponding menu to the access key.
access key [Menu mode] Carry out the corresponding command.
DOWN ARROW [Menu mode] Open the menu, move to the next menu item, or wrap to the first menu item if focus is on the last menu item.
UP ARROW [Menu mode] Move to the previous menu item, or wrap to the last menu item if focus is on the first menu item.
RIGHT ARROW [Menu mode] Open the next menu to the right, or open a submenu.
LEFT ARROW [Menu mode] Open the next menu to the left, or close a submenu.

Back to top

Edit Box Shortcut Keys

Press To
HOME Move cursor to beginning of the line.
END Move cursor to end of the line.
CTRL + A Select all.
CTRL + RIGHT ARROW or LEFT ARROW Move cursor to the beginning of the next or previous word.
CTRL + DOWN ARROW or UP ARROW Move cursor to the beginning of the next or previous paragraph.
CTRL + HOME Move cursor to the beginning of the edit box content.
CTRL + END Move cursor to the end of the edit box content.
SHIFT + cursor movement (ARROW, HOME, or END) Select, or modify the selection.
SHIFT + CTRL + cursor movement (ARROW, HOME, or END) Select, or modify the selection, by words or blocks of text.
INSERT Toggle insertion mode.

Back to top

Dialog Box and Common Controls Shortcut Keys

Note: ARROW, PAGE UP, PAGE DOWN, HOME, and END keys for general navigation are omitted from this table.

Control Type Press To
General TAB Move forward through options.
SHIFT + TAB Move backward through options.
Dialog box ALT + access key Select or carry out the corresponding command or control.
ENTER Carry out the default command of the dialog box or command of the selected control.
SPACE Toggle the selection status or carry out the selected option or control command.
ARROW keys Move focus or selection in a group of controls or items.
Tab control CTRL + TAB Move forward through tabs.
CTRL + SHIFT + TAB Move backward through tabs.
CTRL + PAGE DOWN Move forward through tabs (same as CTRL + TAB).
CTRL + PAGE UP Move backward through tabs (same as CTRL + SHIFT + TAB).
ARROW keys Move between tabs when focus is on the tab control.
Combo box F4 Display or hide the items in the active list.
ALT + DOWN ARROW or UP ARROW Display or hide the items in the active list (same as F4).
any printable key or keys Move the selection to the item matching prefix letters in the beginning of title.
List view SPACE Locate new selection and anchor for the item.
SHIFT + SPACE Modify the selection from anchor to the item.
CTRL + SPACE Invoke additional selection or de-selection and move the anchor to the selected item.
ARROW keys Move focus and remove all selection and the previous anchor.
CTRL + ARROW keys Move focus without changing the selection or the anchor.
any printable key or keys Move the selection to the item matching prefix letters in the beginning of the label.
CTRL + numeric pad PLUS ( + ) Adjust the width of all columns to fit their contents.
Tree view numeric pad TIMES ( * ) Display all sub-items under the selected item.
numeric pad PLUS ( + ) Display sub-items directly under the selected item.
numeric pad MINUS ( - ) Collapse the items directly under the selected item.
RIGHT ARROW Display sub-items directly under the selected item (same as +).
LEFT ARROW Collapse the selected item group and move focus to the group's root.
CTRL + UP ARROW Scroll the view without changing the selection.
CTRL + DOWN ARROW Scroll the view without changing the selection.
any printable key or keys Move the selection to the item matching prefix letters in the beginning of title.
Date and time picker F4 Display calendar below the control.
ALT + DOWN Display calendar below the control.
ALT + UP Hide calendar below the control.
PAGE UP Move to next month in the calendar.
PAGE DOWN Move to previous month in the calendar.
CTRL + PAGE UP Move to next year in the calendar.
CTRL + PAGE DOWN Move to previous year in the calendar.
Check box SPACE Change the checkbox state.
MINUS ( - ) Clear the checkbox.
PLUS ( + ) Select the checkbox.
Slider ARROW keys Move the slider to the next value. Selecting the slider control style LBS_DOWNISLEFT can reverse the direction.
PAGE UP or PAGE DOWN Move the slider to next value in specified increment. Selecting the slider control style LBS_DOWNISLEFT can reverse the direction.

Back to top

Windows Explorer Shortcut Keys

Note: These are examples. They do not represent all of the available shortcut keys.

Press To
F2 Rename selected item.
F3 Search for a file or folder.
F4 Display the Address bar list.
F5 Refresh the active window or reload the document in the active window.
F6 Cycle through screen elements in a window or on the desktop.
ALT + RIGHT ARROW Move to next page or folder viewed.
ALT + LEFT ARROW Move to previous page or folder viewed.
ALT + ENTER View properties for the selected item.
SHIFT + DELETE Delete selected item permanently without placing the item in the Recycle Bin.
HOME Display the top of the active window.
END Display the bottom of the active window.
BACKSPACE View the folder one level up from current folder.

Back to top

Microsoft Office XP Shortcut Keys

Note: The shortcut keys in the next table are presented only as examples and do not represent all of the available shortcut keys. A complete list of shortcut keys is provided in the online documentation of each Microsoft Office application.

Press To
INSERT Toggle the insertion mode.
F6 Move between task pane and the document window.
SHIFT + F6 Move backward between task pane and the document window.
CTRL + F6 Switch to next window when more than one window is open.
CTRL + SHIFT + F6 Switch to previous window when more than one window is open.
CTRL + TAB Move focus between menu and tool bars in menu mode.
F1 Display the Assistant balloon (if Office Assistant is active).
ALT + SHIFT + F10 Display the menu or message for a Smart Tag near the input focus.
CTRL + O Open the Open dialog box.
CTRL + N Open a new blank document.
CTRL + F Open the Find dialog box.
CTRL + P Open the Print dialog box.
CTRL + S Save the document that currently has the input focus.
CTRL + A Select all.

Back to top

1194.21(b) accept accessibility features

"Applications shall not disrupt or disable activated features of other products that are identified as accessibility features, where those features are developed and documented according to industry standards. Applications also shall not disrupt or disable activated features of any operating system that are identified as accessibility features where the application programming interface for those accessibility features has been documented by the manufacturer of the operating system and is available to the product developer."

In other words…

Systems or applications must not disrupt or disable documented accessibility features of software products or operating systems.

Terms

Determining Compliance

When testing software in a Windows environment:

  • Click on Start > Settings > Control Panel. Double click on the Accessibility Options icon, and activate all of the accessibility features. The StickyKeys, MouseKeys and other options should still work with the application running.
  • Check the product's user manual for any documented accessibility features. Enable them if available. Ensure that they do not impact the operating system or other application's accessibility features.
  • Run AT with the software. None of the AT features should be overridden by the product being tested.

Back to top

1194.21(c) expose input focus

"A well-defined on-screen indication of the current focus shall be provided that moves among interactive interface elements as the input focus changes. The focus shall be programmatically exposed so that assistive technology can track focus and focus changes."

In other words…

The point of action (e.g., cursor) is easy to find and is programmatically exposed to AT so that AT can track focus and focus changes.

Terms

Determining Compliance

Navigate through the software or operating system, paying attention to focus changes in menus, dialogs, forms, property boxes and other interface elements.

  • The cursor should be visible and easy to find.
  • Focus should be easy to identify when using the TAB or ARROW keys to move between objects.

Notes

  • Another way to test for compliance is to ensure that while testing for 1194.21(a) compliance, a sighted user is able to visually discern focus changes throughout a product.
  • Compliance with this standard is essential in order to test for compliance with 1194.21(a).
  • It is difficult to test for programmatically exposed focus in a product. Consult the manufacturer as to how focus is exposed to AT, and through what standard APIs focus is available to AT.

Back to top

1194.21(d) provide interface information

"Sufficient information about a user interface element including the identity, operation and state of the element shall be available to assistive technology. When an image represents a program element, the information conveyed by the image must also be available in text."

In other words…

All visually available (on screen) information in a product must be available to AT. Images, graphs, icons and forms must have descriptive information conveyed in a text format such as a text label, ALT tag or "tool tip".

Term

Determining Compliance

Consult the manufacturer for compliance. If the manufacturer is not available or you are performing compliance tests on proprietary software solutions:

  • Inspect the application using a software utility to retrieve and display information about user interface elements. Each interface element should be identified and accurately described by the utility (e.g., a check box should report its function and current state).
  • A quick way to determine whether an image program element is compliant is to place the mouse pointer over the image. If a tool tip appears that textually describes the meaning or function of that image, then the image is compliant. If a tool tip does not appear, then similar descriptive text should be associated with the image in a way that is available to AT.

Notes

  • Microsoft provides two utilities for developers. One utility is SPY++, included in Visual Studio, and the other is Inspect Objects.
  • To test Java-based applications, visit http://java.sun.com/products/jfc/accessibility/index.jsp and download the free Java Accessibility Utilities (Access Bridge interface utilities) such as Ferret, Monkey, and AccessibilityMonitor.
  • An expert testing with specific AT such as screen reading software in a specific environment cannot guarantee compliance, but can be an effective indicator as to whether a product conforms to this law.

Back to top

1194.21(e) use images consistently

"When bitmap images are used to identify controls, status indicators, or other programmatic elements, the meaning assigned to those images shall be consistent throughout an application's performance."

In other words…

An image's use must be consistent throughout a product. Alternative text (e.g., tool tip, ALT text) should also adhere to this standard.

Terms

Determining Compliance

It is best to use universally accepted images for specific functions (e.g., the picture of a printer for the printing function). Products should not have contradictory or counterintuitive image meanings (e.g., the picture of a printer whose function is to delete records).

  • Check the bitmap images in the product, especially those that represent unique or critical tasks.
  • Ensure that the image for each function is consistent throughout the application.

Back to top

1194.21(f) provide textual information

"Textual information shall be provided through operating system functions for displaying text. The minimum information that shall be made available is text content, text input caret location, and text attributes."

In other words…

Text information from a product must be available to AT. This is accomplished by interfacing with operating system functions for displaying text (e.g., APIs that accept text content and attributes).

Term

Determining Compliance

  • Change the font attributes in the operating system. In Windows, this can be done by clicking Start > Settings > Control Panel > Display > Appearance. The fonts within the application should change accordingly.
  • Textual information should be selectable using the cursor.

Back to top

1194.21(g) accept display attributes

"Applications shall not override user-selected contrast and color selections and other individual display attributes."

In other words…

A product must be able to conform to the user's operating system display settings. A product cannot use its own color and contrast settings, unless it complies with 1194.21(j).

Term

Determining Compliance

Change the operating system display settings. (In Windows this is accomplished by clicking Start > Settings > Control Panel > Display > Appearance.)

  • In all of the product's screens, the product's colors and other display attributes must be able to conform to the operating system's display settings.
  • Application functions cannot automatically disable or change system display settings.
  • The magnification/zoom settings cannot be adversely affected when evaluating the product.

Note

  • Satisfying this requirement will help support interoperability with AT such as screen magnifiers and alternative user interfaces.

Back to top

1194.21(h) provide non-animated mode

"When animation is displayed, the information shall be displayable in at least one non-animated presentation mode at the option of the user."

In other words…

If animation is used in a product, the user must be able to select at least one non-animated mode to display the animation's information (e.g., audio or text description).

Term

Determining Compliance

  • To determine the full set of controls that display animation, methods include:
    • Observation of the product interface
    • Review of the product documentation (e.g., user manuals and online help)
  • The software must provide each animation's content using an alternate means. For example, for each informative animation sequence, a text or audio equivalent may be provided.

Note

  • The ability to turn off decorative (non-informational) animations is a good product feature.

Back to top

1194.21(i) supplement color coding

"Color coding shall not be used as the only means of conveying information, indicating an action, prompting a response, or distinguishing a visual element."

In other words…

Color should never be the only means to identify functions, visual elements or information.

Determining Compliance

For all functions that require color-coding, there must be an alternative or different reference and that reference must be unique. That is, the information or action must also be conveyed without color. For example, a form that requires the user to "complete only the areas in red" would be noncompliant. One solution would be to have the user "complete all the areas marked with a red star or asterisk". However, this would be compliant only if no other stars existed on the form.

Two ways to evaluate an application's conformance to this standard are:

  • If a black and white setting is available, turn it on and verify that all information is still conveyed.
  • Print the information without color on a black and white printer or adjust the display to monochrome, and verify that all information is still conveyed.

Note

  • This standard is parallel to standards 1194.22(c) for web-based information and applications and 1194.25(g) for self-contained, closed products.

Back to top

1194.21(j) providing color selections

"When a product permits a user to adjust color and contrast settings, a variety of color selections capable of producing a range of contrast levels shall be provided."

In other words…

A variety of color selections and contrast levels should be provided when an application allows the user to change contrast or color settings. If the product does not feature adjustable color or contrast settings, then the standard does not apply. In either case, the product must conform to 1194.21(g) regarding system display settings.

Determining Compliance

In Windows, go to Start > Settings > Control Panel > Accessibility Options and change the color and contrast settings. If the application's color and/or contrast do not change, then the product must allow the user to adjust color and contrast settings:

  • Color adjustment to foreground, background, and other elements must be allowed.
  • A range of colors must be provided. For example, Microsoft allows at least 30 variations. At a minimum, the product should include the selection of the eight primary colors for both the foreground and background.
  • While observing contrast levels, adjust the display to full-color and monochrome settings.

Notes

  • There should be a combination that will provide a soft background, low contrast color scheme as well as combinations that provide a high contrast color scheme.
  • Avoid reds and greens together. White on black, black on white, and yellow on black are examples of high contrast settings.
  • Lighthouse International provides guidelines for effective color contrast on their web site at http://www.lighthouse.org/color_contrast.htm.
  • Color combinations should be observed on a video display, not in printed material.
  • This standard is parallel to standard 1194.25(h) for self-contained, closed products.

Back to top

1194.21(k) avoid fast flashing/blinking

"Software shall not use flashing or blinking text, objects, or other elements having a flash or blink frequency greater than 2 Hz and lower than 55 Hz."

In other words…

Design software products so that blinking on the screen is nonexistent, or very slow (e.g., one blink per second), or very fast (at least fifty-five blinks per second).

Terms

Determining Compliance

It is best not to use products that have flashing or blinking elements.

  • Visually review software applications to locate flashing or blinking elements.
  • Special tools are required to accurately measure the screen blink rate. Check the user manual for the flash/blink rate. If it is not listed, call the manufacturer for information.
  • Because 2 Hz is relatively slow, it is possible to use visual observation to determine whether the blink rate is greater than 2 Hz. Ideally, the blink rate should not be greater than 1 Hz, i.e., one blink per second. If no timing device is available, you may approximate a one-second interval by speaking the words "one thousand one".

Notes

  • If there are multiple items that are flashing simultaneously in the same visual space, the cumulative effect should be considered.
  • Processor speeds and graphic cards can affect blink rate, so it is best to measure blink rate on all the relevant products.
  • This standard is parallel to standards 1194.22(j) for web-based information and applications and 1194.25(i) for self-contained, closed products.

Back to top

1194.21(l) providing electronic forms

"When electronic forms are used, the form shall allow people using assistive technology to access the information, field elements, and functionality required for completion and submission of the form, including all directions and cues."

In other words…

Electronic forms in products must be accessible to AT. This includes the fields in the form, all information required to complete the form, and any functions used to submit the form.

Determining Compliance

This standard cannot be visually evaluated for compliance without access to the source code of a product. The most effective way to evaluate the product is with testing utilities (e.g., Microsoft's Inspect Objects tool). AT such as JAWS screen reader software is useful only in the hands of an expert. See related standard 1194.21(d).

When evaluating electronic forms:

  • The focus should move in a logical sequence to all fields and information (e.g., starting with a description of the first name field, then to first name, description of the last name field, last name, etc.).
  • The user should be able to fill in data in the proper fields in the required format (e.g., name, state, telephone numbers, critical fields).
  • The user should be able to complete the form and submit it using only the keyboard. See 1194.21(a).

Note

  • This standard is parallel to standard 1194.22(n) for web-based information and applications.

Back to top

Questions to Improve Understanding

1. Does every single mouse action need to have a keyboard equivalent?

2. What is the focus?

3. Describe the two types of animations.

4. Do you have to assign shortcut keys to toolbar items?

5. Can a form indicate required fields only by displaying them with red text?

6. Can you use two different "Print" icons in one application?

Back to top

United States Patent and Trademark Office