ibm-js / deliteful

Multichannel (desktop/mobile) UI Custom Elements Library
http://ibm-js.github.io/deliteful
Other
70 stars 36 forks source link

List: remove navindex requirement #721

Closed wkeese closed 5 years ago

wkeese commented 5 years ago

List (in type=grid mode) supports navigable elements inside of cells. Historically the elements were required to be marked with the navindex attribute, rather than using the standard tabindex.

This has proven too brittle due to complications when the cell content is not part of the Renderer subclass template but instead comes from somewhere dynamic, like an XHR request. Also, relatedly, complications when cell content is dynamically changed (added, removed, hidden, or shown).

This change is to:

Regarding performance, there is a tradeoff. This should increase performance at page load (i.e. when the table is created), in exchange for adding code for handling keystrokes. I think it's a win.

This should also address #608, and maybe #329, #500, and #678.