Recommended way of excluding certain elements from navigation

Toni Barth
 

Hello,
 
because noone replied to my last post from a few days ago and I accidentally used the wrong tag for my question, i'm sending my previous message again down below.
 
i'm developing an add-on right now to enhance the usability of an application. This application contains at least one table with several cells, but some of those cells, even though they are navigatable by NVDA, contain unimportant information, like the value 'None' or just an icon. I thus wanted to "hide" those cells for the user, meaning that they shouldn't be able to navigate to them using the tab key or arrow keys and tried several ways to do so.
 
I overlayed the table row and override _get_children(), removing the certain children from the list, but I noticed that _get_children() never seems to get executed.
 
I also tried adding states to the specific cells like controlTypes.STATE_INVISIBLE or controlTypes.STATE_UNAVAILABLE, but nothing helped.
 
I also tried moving the focus manually whenever the cell is focused by using event_gainFocus(), but even this seems to mess up things even further. Same goes for using redirectFocus and/or _get_redirectFocus(). It properly redirects my focus to the next cell, but the cursor still seems to be located in the cell whatsoever, means whenever I press the right arrow key, i'll get the same, second cell announced a second time.
 
Do you have an idea how to remove those cells from keyboard navigation (not navigator, but at least from tab/arrow keys navigation)?
 
There must be an easy way to exclude certain elements from keyboard navigation.
 
Thanks for your help :).
 
Best Regards.
 
Toni Barth

Join nvda-devel@groups.io to automatically receive all group messages.