• Aucun résultat trouvé

Keyboard Selection

Dans le document Style Guide (Page 76-79)

Problem Reporting

Chapter 2 Input Models

4.1 Selection Models

4.1.6 Keyboard Selection

Selections can be made by using the keyboard as well as the mouse. Two keyboard selection models are available: normal mode and add mode.

Normal mode is used for making simple contiguous selections from the keyboard. Normal mode is a navigation/selection mode where the location cursor is never disjoint from the current selection. In collections where the location cursor is on an element, the element with the location cursor is ordinarily selected; if it is not, pressing <Select> or <Space> moves the selection to the cursored element.

Add mode is used for making more complex and possibly disjoint selections. Add mode is a navigation/selection mode where the location cursor can move independent of the current selection. Even in collections that do not support discontiguous selections, add mode allows the selection to be unaffected by keyboard navigation.

Browse selections must only support normal mode. Single and multiple

*

selections must only support add mode. Range selection must support

*

normal mode and can also support add mode. Discontiguous selections

*

must support both modes. The default mode for range and discontiguous

*

selections must be normal mode. <Shift> <F8> must switch between add

*

mode and normal mode if both modes are supported. When switching from normal to add mode, if the cursored element is the only element selected in the collection, it should be deselected. Mouse-based selection must not

*

change based on the keyboard selection mode.

In editable components, add mode is a temporary mode that must be exited

*

when an operation is performed on the selection or when the selection is

*

deselected.

4.1.6.1 Keyboard-Based Single Selection

Collections using the single selection model must use add mode. In add

*

mode, the navigation keys for the collection must move the location cursor

*

independent from the selected element. If <Select> or <Space> is pressed

*

on an unselected element, it must select the element with the location

*

cursor, and it must deselect any previous selection in the collection.

4.1.6.2 Keyboard-Based Browse Selection

Collections using the browse selection model must use normal mode. The

*

navigation keys must move the location cursor and select the cursored

*

element, deselecting any other element. If the application has deselected all

*

elements or if the cursor is left disjoint from the selection, <Select> or

*

<Space> must select the cursored element and deselect any other element.

4.1.6.3 Keyboard-Based Multiple Selection

Collections using the multiple selection model must use add mode. The

*

navigation keys for the collection must move the location cursor

*

independent from the current selection. <Select> or <Space> on an

*

unselected element must add the element to the current selection. <Select>

*

or <Space> on a selected element must remove the element from the current

*

selection.

4.1.6.4 Keyboard-Based Range Selection

Collections using the range selection model must initially use normal mode.

*

This allows a keyboard-based behavior similar to dragging with the mouse.

In normal mode, navigation keys must move the location cursor and deselect

*

the current selection. If the cursor is on an element, it must be selected.

*

The anchor must move with the location cursor. However, in text-like

*

collections, a different model can be used in which the anchor must instead

*

remain at its current location, except that, if the current selection is not

*

empty, it must be deselected and the anchor must be moved to the location

*

of the cursor prior to navigation.

<Select> or <Space> (except in a Text component) must move the anchor to

*

the cursor, deselect the current selection, and, if the cursor is on an element,

*

select the element. Unless the anchor is on a deselected item, <Shift>

*

<Select> or <Shift> <Space> (except in Text) must extend the selection

*

from the anchor to the cursor, based on the extension model used by <Shift>

*

BSelect.

Selection

U sing <Shift> in conjunction with the navigation keys must extend the

*

selection, based on the extension model used by <Shift> BSelect. If the

*

current selection is empty, the anchor must first be moved to the cursor. The

*

cursor must then be moved according to the navigation keys, and the

*

selection must be extended based on the extension model used by <Shift>

*

BSelect.

In add mode, <Select>, <Space>, <Shift> <Select>, and <Shift> <Space>

*

must work exactly as in normal mode. However, ordinary navigation must

*

simply move the location cursor, but must leave the anchor unchanged.

*

Shifted navigation must move the location cursor according to the

*

navigation keys, and the selection must be extended based on the extension

*

model used by <Shift> BSelect.

*

In Text, both <Space> and <Shift> <Space> must insert a space character.

4.1.6.5 Keyboard-Based Discontiguous Selection

Collections using the discontiguous selection model must initially use

*

normal mode. In the discontiguous selection model, add mode is not only a separate model of interaction but also an extension to the range selection model that allows the user to select discontiguous elements.

In normal mode, all keyboard operations must have the same effect as in the

*

range selection model. In normal mode, discontiguous selections cannot be made using the keyboard.

In add mode, <Select> or <Space> must move the anchor to the location

*

cursor and initiate toggling. If the location cursor is on an element, the

*

selection state of that element must be toggled, but the selection state of all

*

other elements must remain unchanged. <Shift> <Select> or <Shift>

*

<Space> and shifted navigation operations must extend the selection

*

between the anchor and the location cursor, based on the toggle mechanism

*

used by <Ctrl> BSelect.

Dans le document Style Guide (Page 76-79)