diff options
author | Petr Vobornik <pvoborni@redhat.com> | 2013-02-14 10:18:09 +0100 |
---|---|---|
committer | Petr Vobornik <pvoborni@redhat.com> | 2013-03-06 12:55:12 +0100 |
commit | 32a7801cf448c8a5659d92834b6db9dec381af75 (patch) | |
tree | be17e6cfe5194dc3221f9c5329933a2485e786d3 /install/ui/src/freeipa/field.js | |
parent | 2546e4fd5603cabfe500e881949345ae847f2522 (diff) | |
download | freeipa-32a7801cf448c8a5659d92834b6db9dec381af75.tar.gz freeipa-32a7801cf448c8a5659d92834b6db9dec381af75.tar.xz freeipa-32a7801cf448c8a5659d92834b6db9dec381af75.zip |
Combobox keyboard support
Combobox can be controlled just by using keyboard.
When value list is closed, user can:
* use UP and DOWN error to open list, it will focus the list and
select previous/next value
* when CB is non-editable, user can start typing, first character will open
list, second will be entered into search input. Note: I wanted to copy the
first char to the search box as well, but I did not figure out reliable
method for converting keycode to char for non ASCII keyboard layouts
* ESCAPE, ENTER, TAB keys are handled to allow keyboard operations in a
container
When value list is opened:
* CB tries to keep focus on either search input or a select
* when focus is lost, the value list is closed. So user can click anywhere
on a page to close it - two comboboxes can't be opened on the same time
* hitting TAB key switches between search and select
* if CB is not searchable, hitting TAB will close the value list and select
input textbox
* hitting ESCAPE on will close the value list
* hitting ENTER on search input will invoke search operation
* hitting ENTER on select will close the value list
* hitting UP/DOWN arrows will select previous/next values
Additional modifications:
* opening arrow and search button were made non-focusable. It fixes the
'wrong focus area' bug and simplifies keyboard usage. It doesn't affect
mouse usage.
https://fedorahosted.org/freeipa/ticket/3324
Diffstat (limited to 'install/ui/src/freeipa/field.js')
0 files changed, 0 insertions, 0 deletions