Oracle® Fusion Middleware Web User Interface Developer's Guide for Oracle Application Development Framework 11g Release 1 (11.1.1.4.0) B31973-06 |
|
![]() Previous |
![]() Next |
This appendix describes the keyboard shortcuts that can be used instead of pointing devices.
This appendix includes the following sections:
Keyboard shortcuts provide an alternative to pointing devices for navigating the page. There are five types of keyboard shortcuts that can be provided in BLAF Plus applications:
Tab traversal, using Tab and Shift+Tab keys: Moves the focus through UI elements on a screen.
Accelerator keys (hot keys): bypasses menu and page navigation, and performs an action directly, for example, Ctrl+C for Copy.
Access keys: Moves the focus to a specific UI element, for example, Alt+F (in Windows) for the File menu.
Default cursor/focus placement: Puts the initial focus on a component so that keyboard users can start interacting with the page without excessive navigation.
Enter key: Triggers an action when the cursor is in certain fields or when the focus is on a link or button.
Keyboard shortcuts are not required for accessibility. Users should be able to navigate to all parts and functions of the application using the Tab and arrow keys, without using any keyboard shortcuts. Keyboard shortcuts merely provide an additional way to access a function quickly.
Tab traversal allows the user to move the focus through different UI elements on a page.
All active elements of the page are accessible by Tab traversal, that is, by using the Tab key to move to the next control and Shift+Tab to move to the previous control. In most cases, when a control has focus, the action can then be initiated by pressing Enter.
Some complex components use arrow keys to navigate after the component receives focus using the Tab key.
Default Tab traversal order for a page is from left to right and from top to bottom, as shown in Figure C-1. Tab traversal in a two-column form layout does not follow this pattern, but rather follows a columnar pattern. On reaching the bottom, the tab sequence repeats again from the top.
Avoid using custom code to control the tab traversal sequence within a page, as the resulting pages would be too difficult to manage and would create an inconsistent user experience across pages in an application and across applications.
To improve keyboard navigation efficiency for users, you should include a skip navigation
link at the top of the page, which should navigate directly to the first content-related tab stop.
The Tab traversals in a table establish a unique row-wise navigation pattern when the user presses the Tab key several times to navigate sequentially from one cell to another. When the user presses Enter, the focus moves to the next row, to follow the same pattern. The navigational sequence begins and ends in the same column as in the previous row.
Figure C-2 shows an example of a tab traversal sequence in a table.
In Figure C-2, the user has navigated the rows in the following way:
The user clicks a cell in the inputText column, giving it focus and making it editable.
Because the Tab key is used to navigate, the inputText column is recognized as the starting column for the navigation pattern.
The user presses the Tab key and moves the focus in the same row to the cell of the * Required field column.
The user presses the Tab key and moves the focus in the same row to the cell of the inputComboListOf column.
The user presses the Enter key and the focus shifts to the inputText column in the next row.
Pressing the Enter key sets a navigation pattern, based on the first set of Tab keys, which is followed in subsequent rows.
Note: The navigational pattern is not recognized if you use arrow keys to navigate from one cell to another. |
Accelerator keys bypass menu and page navigation and perform actions directly. Accelerator keys are sometimes called hot keys. Common accelerator keys in a Windows application, such as Internet Explorer, are Ctrl+O for Open and Ctrl+P for Print.
Accelerator keys are single key presses (for example, Enter and Esc) or key combinations (for example, Ctrl+A) that initiate actions immediately when activated. A key combination consists of a metakey and an execution key. The metakey may be Ctrl (Command on a Macintosh keyboard), Alt (Option on a Macintosh keyboard), or Shift. The execution key is the key that is pressed in conjunction with the metakey.
BLAF Plus components have some built-in accelerator keys. Custom accelerator keys are supported only in menus, as shown in Figure C-3.
When defining accelerator keys, you must follow these guidelines:
Accelerator keys must always have alternative interactions, such as direct manipulation with the mouse (for example, clicking a button, or dragging and dropping).
Because accelerator keys perform actions directly, if a user presses an accelerator key unintentionally, data may be lost or incorrect data may be entered. To reduce the likelihood of user error, accelerator keys should be used sparingly, and only for frequently and repetitively used functions across applications. As a general rule, less than 25% of available functions should have accelerator keys.
Custom accelerator keys must not override accelerator keys that are used in the menus of BLAF Plus-supported browsers (see the browser and system requirements for supported operating systems and browsers in BLAF Plus), and must not override accelerator keys that are used in assistive technologies such as screen readers.
Custom menu accelerator keys must always be key combinations. The metakey may be Ctrl, Ctrl+Shift, or Ctrl+Alt. Ctrl+Alt is the recommended metakey because Ctrl and Ctrl+Shift are commonly used by browsers. The execution key must be a printable character (ASCII code range 33-126).
Custom menu accelerator keys must be global to the entire page. If a page were to have different menus that used the same accelerator, it would be difficult for the browser to predict which actions would be executed by the accelerator at any given time.
Note: In Windows, users have the ability to assign a Ctrl+Alt+character key sequence to an application desktop shortcut. In this case, the key assignment overrides browser-level key assignments. However, this feature is rarely used, so it can generally be ignored. |
Certain BLAF Plus components have built-in accelerator keys that apply when the component has focus. Of these, some are reserved for page-level components, whereas others may be assigned to menus when the component is not used on a page. Table C-1 lists the accelerator keys that are already built into page-level BLAF Plus components. You must not use these accelerator keys at all.
Table C-1 Accelerator Keys Reserved for Page-Level Components
Accelerator Key | Used In | Function |
---|---|---|
Ctrl+Alt+R |
Active Data |
Check for updated data |
Ctrl+Alt+W |
Menu Messaging Secondary Windows |
Toggle focus between popup and primary window |
Ctrl+Alt+P |
Splitter |
Give focus to splitter bar |
The menu commands take precedence if they are on the same page as page-level components, and have the same accelerator keys. For this reason, you must not use the accelerator keys listed in Table C-2 in menus when the related component also appears on the same page.
Table C-2 Accelerator Keys Assigned to Optional Components
Accelerator Key | Component | Function |
---|---|---|
Ctrl+Alt++ |
Rich Text Editor |
Superscript |
Ctrl+Alt+- |
Rich Text Editor |
Subscript |
Ctrl+/ |
Hierarchy Viewer |
Switch content panel |
Ctrl+Alt+0. . .Ctrl+Alt+5 |
Hierarchy Viewer |
Switch diagram layout |
Ctrl+5 |
Rich Text Editor |
Strikethrough |
Ctrl+A |
File Upload Multi-Select Choice List Multi-Select List Box Pivot Table Rich Text Editor Spin Box Text Box & Area Table |
Select all |
Ctrl+B |
Rich Text Editor |
Boldface |
Ctrl+Alt+C |
Rich Text Editor |
Toggle source code editing |
Ctrl+E |
Rich Text Editor |
Center alignment |
Ctrl+H |
Rich Text Editor |
Create hyperlink |
Ctrl+Shift+H |
Rich Text Editor |
Remove hyperlink |
Ctrl+I |
Rich Text Editor |
Italics |
Ctrl+J |
Rich Text Editor |
|
Ctrl+L |
Rich Text Editor |
Full-justified alignment |
Ctrl+Shift+L |
Rich Text Editor |
Left alignment |
Ctrl+Alt+L |
Rich Text Editor |
Numbered list |
Ctrl+M |
Rich Text Editor |
Increase indentation |
Ctrl+Shift+M |
Rich Text Editor |
Decrease indentation |
Ctrl+Alt+M |
Gantt Pivot Table Table Tree Tree Table |
Launch context menu |
Ctrl+R |
Rich Text Editor |
Right alignment |
Ctrl+Alt+R |
Rich Text Editor |
Toggle rich text editing |
Ctrl+Shift+S |
Rich Text Editor |
Clear text styles |
Ctrl+U |
Rich Text Editor |
Underline |
Ctrl+Y |
Rich Text Editor |
Redo |
Ctrl+Z |
Rich Text Editor |
Undo |
Ctrl+Shift+^ |
Hierarchy Viewer Tree Tree Table |
Go up one level |
Esc |
Table |
Reverse all edits of the row and disable edit mode |
Enter Shift+Enter |
Table |
Navigate to the next or previous cell of the column |
ADF Data Visualization components provide graphical and tabular capabilities for displaying and analyzing data. Table C-3 lists the accelerator keys assigned to ADF Data Visualization components: Gantt chart components, hierarchy viewer components, pivot table components, and geographic map components. For more information about ADF Data Visualization components, see Chapter 23, "Introduction to ADF Data Visualization Components."
Table C-3 Accelerator Keys Assigned to ADF Data Visualization Components
Accelerator Key | Components | Function |
---|---|---|
Arrow Left Arrow Right |
List region of all Gantt chart types Chart region of project Gantt Chart region of scheduling Gantt Chart region of resource utilization Gantt ADF geographic map ADF hierarchy viewer - nodes Pivot table Pivot filter bar |
Moves the focus. If the focus is on the chart region of the scheduling Gantt component, the arrow key navigation selects the previous or next taskbar of the current row. If the focus is on the time bucket of the resource utilization Gantt component, the arrow key navigation selects the previous or next time bucket in the current row. If the focus is on the ADF geographic map, the arrow key navigation pans left or right by a small increment. Press the Home or End key to pan by a large increment. If the focus is on the node component of the ADF hierarchy viewer component, press Ctrl+Arrow keys to move the focus left or right without selecting the component. |
Arrow Up Arrow Down |
List region of all Gantt chart types Chart region of project Gantt Chart region of scheduling Gantt Chart region of resource utilization Gantt ADF geographic map ADF hierarchy viewer - nodes Pivot table Pivot filter bar |
Moves the focus. If the focus is on the chart region of project Gantt, the arrow key navigation selects previous or next row. If the focus is on the chart region taskbar of the scheduling Gantt component, the arrow key navigation selects the first taskbar of the previous row or the next row. If the focus is on the time bucket of the resource utilization Gantt component, the arrow key navigation selects the time bucket of the previous row or next row. If the focus is on the ADF geographic map component, the arrow key navigation pans up or down by a small increment. If the focus is on the node component of the ADF hierarchy viewer, press the Ctrl+Arrow keys to move the focus up or down without selecting the component. |
Page Up Page Down |
ADF geographic map ADF hierarchy viewer - diagram |
If the focus is on the ADF geographic map component, the page key navigation pans up or down by a large increment. If the focus is on the diagram of the ADF hierarchy viewer component, press and hold the Page Up or Page Down keys to pan up or down continuously. Press Ctrl+Page Up or Ctrl+Page Down to pan left or right continuously. |
+ |
ADF geographic map ADF hierarchy viewer - diagram |
Increases the zoom level. If the focus is on the diagram of the ADF hierarchy viewer component, press number keys 1 through 5 to zoom from 10% through 100%. Press 0 to zoom the diagram to fit within available space. |
- |
ADF geographic map ADF hierarchy viewer - diagram |
Decreases the zoom level. If the focus is on the diagram of the ADF hierarchy viewer component, press number keys 1 through 5 to zoom from 10% through 100%. Press 0 to zoom the diagram to fit within available space. |
Ctrl+Alt+M |
All Gantt chart types Pivot table |
Launches the context menu. |
Home |
ADF hierarchy viewer - nodes |
Moves the focus to first node in the current level. |
End |
ADF hierarchy viewer - nodes |
Moves the focus to last node in the current level. |
Ctrl + Home |
ADF hierarchy viewer - nodes |
Moves the focus and select the root node. |
< |
ADF hierarchy viewer - nodes |
Switches to the active node's previous panel |
> |
ADF hierarchy viewer - nodes |
Switches to the active node's next panel. |
Ctrl + / |
ADF hierarchy viewer - nodes |
Synchronize all nodes to display the active node's panel. |
Ctrl+Shift+^ |
ADF Hierarchy viewer - nodes |
Goes up one level. |
Ctrl+/ |
ADF hierarchy viewer - nodes |
Switches the content panel. |
Ctrl+Alt+0 |
ADF hierarchy viewer - diagrams |
Centers the active node and zooms the diagram to 100%. |
Tab |
ADF hierarchy viewer - nodes Pivot table Pivot filter bar |
Moves the focus through the elements. |
Esc |
ADF hierarchy viewer - nodes |
Returns the focus to the containing node. If the focus is on the search panel, close the panel. Closes the Detail window, if it appears while hovering over a node. |
Spacebar |
ADF hierarchy viewer - nodes Pivot table Pivot filter bar |
Selects the active node. Press Ctrl+Spacebar to toggle selection of the active node, and to select multiple nodes. |
Enter |
ADF hierarchy viewer - nodes Pivot table Pivot filter bar |
Isolates and selects the active node. Press Shift+Enter to toggle the state of the node. |
/ |
ADF hierarchy viewer - nodes |
Toggles control panel state. |
Ctrl+F |
ADF hierarchy viewer - nodes |
If the ADF hierarchy viewer component is configured to support search functionality, open the search panel. |
Ctrl+Alt+1 through Ctrl+Alt+5 |
ADF hierarchy viewer - nodes |
Switches diagram layout. |
Ctrl+Alt+Arrow keys |
Pivot table Pivot filter bar |
Changes the layout by pivoting a row, column, or filter layer to a new location. Use Ctrl+Alt+Arrow keys to perform the following:
|
Some ADF Data Visualization components provide some common functions to the end user through the menu bar, toolbar, context menu, or Task Properties dialog. You may choose to show, hide, or replace these functionalities. If you hide or replace any functionality, you must provide alternate keyboard accessibility to those functions.
Access keys move the focus to a specific UI element.
Access keys relocate cursor or selection focus to specific interface components. Every component on the page with definable focus is accessible by tab traversal (using Tab and Shift+Tab); however, access keys provide quick focus to frequently used components. Access keys must be unique within a page.
The result of pressing an access key depends on the associated element and the browser:
Buttons: In both Firefox and Internet Explorer, access keys give focus to the component and directly execute the action.
Links: In Firefox, access keys give focus to the component and directly navigate the link; in Internet Explorer, access keys give focus only to the link.
Other Elements: In both browsers, access keys give focus only to the element.
Access keys are triggered with Shift+Alt+mnemonic in Firefox and Alt+mnemonic in Internet Explorer.
If the mnemonic is present in the text of the component label or prompt (for example, a menu name, button label, or text box prompt), it is visible in the interface as an underlined character, as shown in Figure C-4. If the character is not part of the text of the label or prompt, it is not displayed in the interface.
When defining access keys, you must follow these guidelines:
Access keys may be provided for buttons and other components with a high frequency of use. You may provide standard cross-application key assignments for common actions, such as Save and Cancel. Each of these buttons is assigned a standard mnemonic letter in each language, such as S for Save or C for Cancel.
A single letter or symbol can be assigned only to a single instance of an action on a page. If a page had more than one instance of a button with the same mnemonic, users would have no way of knowing which button the access key would invoke.
Focus change initiated through access keys must have alternative interactions, such as direct manipulation with the mouse (for example, clicking a button).
The mnemonic must be an alphanumeric character — not a punctuation mark or symbol — and it must always be case-insensitive. Letters are preferred over numbers for mnemonics.
In Internet Explorer, application access keys override any browser-specific menu access keys (such as Alt+F for the File menu), and this can be a usability issue for users who habitually use browser access keys. Thus, teams must not use access keys that conflict with the top-level menu access keys in BLAF Plus-supported browsers (for example, Alt+F, E, V, A, T, or H in the English version of Internet Explorer for Windows XP).
You are responsible for assigning access keys to specific components. When choosing a letter for the access key, there are a few important considerations:
Ease of learning: Although the underlined letter in the label clearly indicates to the user which letter is the access key, it is still recommended to pick a letter that is easy for users to remember even without scanning the label. That is often the first letter of the label, like Y in Yes, or a letter that has a strong sound when the label is read aloud, such as x in Next.
Consistency: It is good practice to use the same access key for the same command on multiple pages. However, this may not always be possible if the same command label appears multiple times on a page, or if another, more frequently used command on the page uses the same access key.
Translation: When a label is translated, the same letter that is used for the access key in English might not be present in the translation. Developers should work with their localization department to ensure that alternative access keys are present in component labels after translation. For example, in English, the button Next may be assigned the mnemonic letter x, but that letter does not appear when the label is translated to Suivantes in French. Depending on the pool of available letters, an alternative letter, such as S or v (or any other unassigned letter in the term Suivantes), should be assigned to the translated term.
Note: For translation reasons, you should specify access keys as part of the label. For example, to render the label Cancel with the C access key, it is recommended to use&Cancel in the textAndAccessKey property (where the ampersand denotes the mnemonic) rather than C in the accessKey property. Product suites must ensure that access keys are not duplicated within each supported language and do not override access keys within each supported browser unless explicitly intended. |
The default cursor puts the initial focus on a component so that keyboard users can start interacting with the page without excessive navigation.
Focus refers to a type of selection outline that moves through the page when users press the tab key or access keys. When the focus moves to a field where data can be entered, a cursor appears in the field. If the field already contains data, the data is highlighted. In addition, after using certain controls (such as a list of values (LOV) or date-time picker), the cursor or focus placement moves to specific locations predefined by the component.
During the loading of a standard BLAF Plus page, focus appears on the first focusable component on the page — either an editable widget or a navigation component. If there is no focusable element on the page, focus appears on the browser address field.
When defining default cursor and focus placement, you should follow these guidelines:
BLAF Plus applications should provide default cursor or focus placement on most pages so that keyboard users have direct access to content areas, rather than having to tab through UI elements at the top of the page.
You can set focus on a different component than the default when the page is loaded. If your page has a common starting point for data entry, you may change default focus or cursor location so that users can start entering data without excessive keyboard or mouse navigation. Otherwise, do not do this because it makes it more difficult for keyboard users (particularly screen reader users) to orient themselves after the page is loaded.
The Enter key triggers an action when the cursor is in certain fields or when focus is on a link or button. You should use the Enter key to activate a common commit button, such as in a Login form or in a dialog.
Many components have built-in actions for the Enter key. Some examples include:
When focus is on a link or button, the Enter key navigates the link or triggers the action.
When the cursor is in a query search region, quick query search, or Query-By-Example (QBE) field, the Enter key triggers the search.
In a table, the Enter key moves focus to the cell below, and pressing Shift+Enter moves focus to the cell above. When the focus moves, the current cell reverts to the read-only mode.