Technical Support - Detail
Question
Answer
Before describing how JAWS behaves when the ARIA role of "application" is set on an element within a Web page, it is important to understand the JAWS virtual cursor, Forms Mode, and Auto Forms Mode.
Virtual cursor:
JAWS presents Web pages using the JAWS virtual cursor. This allows the user to read and navigate a Web page as though it were a text document. Users use the ARROW keys to read line by line, word by word, character by character, and so on. JAWS also provides quick navigation keys, which are alpha-numeric keys that move the virtual cursor to features of the page such as links, headings, and form controls. In addition, the user can use the tab key to move between focusable elements on the page.
Using the ARROW keys or quick nav keys to change the position of the virtual cursor does not change the actual focus point in the application. This means that even if JAWS reads the text of a given link on a Web page for example, that link doesn't necessarily have the keyboard focus.
Note: The keyboard focus is typically represented visually as a highlighted area surrounding a given control.
Conversely, using the TAB and SHIFT+TAB keys to navigate moves the focus point, and the virtual cursor follows the focus.
Forms Mode:
Because it uses the ARROW Keys and alpha-numeric keys for virtual cursor navigation, these keyboard commands are not passed through to interactive controls (form fields) on the page. This approach has the added benefit of protecting the user from inadvertently changing form field values or activating controls on the page when simply reviewing the content.
Forms Mode is when JAWS turns over processing of the above keys to form controls so that the user can interact with them. For example, when using the virtual cursor, pressing the letter F moves the virtual cursor to the next form field on the Web page, while in Forms Mode, pressing the letter F types the character "f".
Before JAWS 10, JAWS users had to enter and exit Forms Mode manually. The user navigated to a given control using the virtual cursor, and would then press the ENTER key to go into Forms Mode. The PC cursor key (NUMPAD PLUS) caused JAWS to exit Forms Mode.
When Forms Mode is manually activated on a given form control, focus is set to that control.
Auto Forms Mode:
Auto Forms Mode is a feature that tells JAWS to be smart about when to enter and exit Forms Mode. This is a setting which is on by default. This approach provides a more seamless experience for the JAWS user of both reading and interacting with a Web page.
The behavior of Auto Forms Mode depends on the type of form field in question and the keyboard command used to navigate to it. The following is a description of the keyboard commands and how they effect Web page form fields:
Semi-Auto Forms Mode:
The Semi-Auto Forms Mode feature offers users the convenience of Auto Forms Mode, but the benefits of manual operation.
With Semi-Auto Forms Mode, JAWS will only turn on Forms Mode automatically when you move to an edit field using TAB or SHIFT+TAB. This allows you to have the benefits of Auto Forms Mode and still be able to read through a Web page using the ARROW keys and not be interrupted by Forms Mode turning on and off. Additionally, Navigation Quick Keys will not turn on Semi-Auto Forms Mode. To cycle through Manual, Auto, and Semi-Auto Forms Mode, use the Auto Forms Mode option in Quick Settings (INSERT+V) or the Select Forms Mode option in Settings Center.
The following is a description of the keyboard commands and how they affect web page form fields:
ARROW keys:
- When the virtual cursor is active, JAWS enters Forms Mode upon encountering an edit field. Focus is moved to the edit control, and the user can begin typing.
- In Forms Mode, the ARROW keys move the caret within the edit field.
- In Forms Mode, if an ARROW key is pressed and the caret has already reached the boundary of the edit field, JAWS exits Forms Mode and resumes using the virtual cursor.
- In Forms Mode, ARROW keys can still be used to navigate in complex controls such as radio buttons and combo boxes when in focus.
- In Forms Mode, pressing ESC or NUMPAD PLUS will cause JAWS to exit Forms Mode.
Edit fields are the only controls for which JAWS enters or exits Forms Mode automatically based on the ARROW keys. For other controls, if JAWS is using the virtual cursor, it will continue to use the virtual cursor. This is so that the user doesn't accidentally change the value of a control while attempting simply to navigate past it. When ARROW keys are used to navigate to non-edit controls, the user must activate Forms Mode manually by pressing ENTER.
TAB keys:
Using the tab key always causes the focus point to move. When focus changes to a given form control, JAWS activates Forms Mode based on the type of the control in question.
- For edit fields, combo boxes, spin controls, list controls, tab controls, menu bars, tree views, and grid cells, JAWS enters Forms Mode automatically.
- For buttons, check boxes, and radio buttons, JAWS exits Forms Mode.
- In Forms Mode, pressing ESC or NUMPAD PLUS will cause JAWS to exit Forms Mode.
Note: It is possible to move to a form field by using TAB and to move away from that form field using the ARROW keys, and vice versa.
Different control types:
In terms of Forms Mode, there are two groups of controls: those that require Forms Mode to interact with them, and those controls that never require Forms Mode to interact with them.
- Forms Mode is required for edit fields, combo boxes, spin controls, list controls, tab controls, menu bars, tree views, and grid cells. For these controls, press ENTER or SPACEBAR to enter Forms Mode, and ESC or NUMPAD PLUS to exit Forms Mode.
- For buttons, check boxes, and radio buttons, where Forms Mode is unnecessary, use the SPACEBAR or ENTER to activate the button at the virtual cursor. JAWS Auto Forms Mode causes JAWS to leave Forms Mode when it encounters these control types.
Note: For combo boxes only, ALT+DOWN ARROW causes JAWS to enter Forms Mode and drop down the list of combo box items. ALT+UP ARROW closes the list of combo box items and causes JAWS to exit Forms Mode.
Application role within a Web page:
When JAWS encounters an aria application embedded within a Web page (i.e., the role of "application" is set on a descendent of the body element), JAWS slightly changes the behavior of Auto Forms Mode. These changes only take effect for those form controls that are descendents of the container element with the role of "application".
Note: JAWS actually only changes the logic which would normally cause it to exit Forms Mode. The process of entering Forms Mode remains the same.
- Once Forms Mode is on, JAWS will pass the ARROW keys through to the application, and will not leave Forms Mode automatically based on arrow movement. This means that navigation of the application area must be done using the TAB key, and ARROW keys always manipulate the focused control.
- If Forms Mode is on, JAWS will pass the ESC key through to the application, and not exit Forms Mode.
- JAWS will not exit Forms Mode for controls such as buttons, check boxes, and radio buttons where focus events on such controls would normally cause it to do so. In this case, pressing the ARROW keys while focused on a group of radio buttons will change the selected radio button.
- ALT+UP ARROW will not cause JAWS to exit Forms Mode when positioned on a combo box.
- Only pressing the PC cursor key (NUMPAD PLUS) will cause JAWS to exit Forms Mode.
The result of this specialized behavior for applications is that the page author now has more control of the navigation and interaction of specified areas of a Web page, and the user can still exit Forms Mode and take advantage of features offered by the virtual cursor.
Applies to: JAWS, Fusion and Enhanced Vision