{"action":"created","issue":{"url":"https://api.github.com/repos/ibm-js/deliteful/issues/332","labels_url":"https://api.github.com/repos/ibm-js/deliteful/issues/332/labels{/name}","comments_url":"https://api.github.com/repos/ibm-js/deliteful/issues/332/comments","events_url":"https://api.github.com/repos/ibm-js/deliteful/issues/332/events","html_url":"https://github.com/ibm-js/deliteful/issues/332","id":44290540,"number":332,"title":"List widget: conflicting \"space\" keyboard shortcut","user":{"login":"AdrianVasiliu","id":1583981,"avatar_url":"https://avatars.githubusercontent.com/u/1583981?v=3","gravatar_id":"","url":"https://api.github.com/users/AdrianVasiliu","html_url":"https://github.com/AdrianVasiliu","followers_url":"https://api.github.com/users/AdrianVasiliu/followers","following_url":"https://api.github.com/users/AdrianVasiliu/following{/other_user}","gists_url":"https://api.github.com/users/AdrianVasiliu/gists{/gist_id}","starred_url":"https://api.github.com/users/AdrianVasiliu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdrianVasiliu/subscriptions","organizations_url":"https://api.github.com/users/AdrianVasiliu/orgs","repos_url":"https://api.github.com/users/AdrianVasiliu/repos","events_url":"https://api.github.com/users/AdrianVasiliu/events{/privacy}","received_events_url":"https://api.github.com/users/AdrianVasiliu/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ibm-js/deliteful/labels/question","name":"question","color":"cc317c"}],"state":"closed","locked":false,"assignee":{"login":"AdrianVasiliu","id":1583981,"avatar_url":"https://avatars.githubusercontent.com/u/1583981?v=3","gravatar_id":"","url":"https://api.github.com/users/AdrianVasiliu","html_url":"https://github.com/AdrianVasiliu","followers_url":"https://api.github.com/users/AdrianVasiliu/followers","following_url":"https://api.github.com/users/AdrianVasiliu/following{/other_user}","gists_url":"https://api.github.com/users/AdrianVasiliu/gists{/gist_id}","starred_url":"https://api.github.com/users/AdrianVasiliu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdrianVasiliu/subscriptions","organizations_url":"https://api.github.com/users/AdrianVasiliu/orgs","repos_url":"https://api.github.com/users/AdrianVasiliu/repos","events_url":"https://api.github.com/users/AdrianVasiliu/events{/privacy}","received_events_url":"https://api.github.com/users/AdrianVasiliu/received_events","type":"User","site_admin":false},"milestone":null,"comments":10,"created_at":"2014-09-29T13:04:23Z","updated_at":"2015-01-28T15:14:58Z","closed_at":"2015-01-28T15:14:58Z","body":"@sbrunot, @wkeese \r\n\r\nAs implied by https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques/Using_the_listbox_role , List implements the on/off toggle for item selection using the space keyboard shortcut. \r\n\r\nHowever, the choice of the \"space\" keyboard shortcut appears to be conflicting when the List (in \"listbox\" aria role) is used for implementing the combobox pattern described by the aria documentation itself (see for instance http://www.w3.org/TR/2011/CR-wai-aria-20110118/roles#combobox ). Indeed, in this case the user is supposed to be able to freely enter text in the input field, while the keyboard events also need to be processed such that the keyboard navigation works on the List. Hence, the \"space\" key is ambigous in such a case: it is used for both entering a blank in the input field, and for toggling selection in the List.\r\n\r\nThis raises the following questions:\r\n* While the mozilla doc refers to the space key for toggling selection, is this also part of the spec? It may be mentioned somewhere, but I didn't find a clear, imperative mentioning in http://www.w3.org/TR/wai-aria/roles#listbox and related documents.\r\n* If there is no strong reason to keep the \"space\" shortcut, can it be transformed into a non-conflicting one (thanks to a key modifier)? Remarks:\r\n  * As a side note, and for comparison, keyboard shortcuts for the native HTML select vary depend on browsers, in particular for multiple choices; by that I imply this doesn't seem to be strictly specified or obeyed by currrent browsers.\r\n  * I would rather advocate for a change of the \"space\" shortcut over providing an API allowing the ComboBox to change it, because otherwise we'd have a different set of shortcuts in ComboBox than in List, which would be anti-ergonomical.\r\n"},"comment":{"url":"https://api.github.com/repos/ibm-js/deliteful/issues/comments/71850743","html_url":"https://github.com/ibm-js/deliteful/issues/332#issuecomment-71850743","issue_url":"https://api.github.com/repos/ibm-js/deliteful/issues/332","id":71850743,"user":{"login":"AdrianVasiliu","id":1583981,"avatar_url":"https://avatars.githubusercontent.com/u/1583981?v=3","gravatar_id":"","url":"https://api.github.com/users/AdrianVasiliu","html_url":"https://github.com/AdrianVasiliu","followers_url":"https://api.github.com/users/AdrianVasiliu/followers","following_url":"https://api.github.com/users/AdrianVasiliu/following{/other_user}","gists_url":"https://api.github.com/users/AdrianVasiliu/gists{/gist_id}","starred_url":"https://api.github.com/users/AdrianVasiliu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdrianVasiliu/subscriptions","organizations_url":"https://api.github.com/users/AdrianVasiliu/orgs","repos_url":"https://api.github.com/users/AdrianVasiliu/repos","events_url":"https://api.github.com/users/AdrianVasiliu/events{/privacy}","received_events_url":"https://api.github.com/users/AdrianVasiliu/received_events","type":"User","site_admin":false},"created_at":"2015-01-28T15:14:58Z","updated_at":"2015-01-28T15:14:58Z","body":"> the user is supposed to be able to freely enter text in the input field, while the keyboard events also need to be processed such that the keyboard navigation works on the List. Hence, the \"space\" key is ambigous in such a case\r\n\r\nSince I wrote that, Combobox got designed such that entering text is reserved for the single selection mode, where the list items get selected directy by navigation with up/down arrow keys. Hence, at least for Combobox' use case, the conflict vanished. Hence, I close the issue."}}