Re: Recommended way of excluding certain elements from navigation

Toni Barth
 

Hi,

thanks, those questions help alot.

Am 03.09.2019 um 20:37 schrieb James Scholes:
It would help to know more about the application.  You've given tons
of detail about what you've tried on the NVDA side, but none about
what else you're working with.

• Is this an application you're developing or helping to develop?

Nope, i'm just trying to enhance its accessibility by developing an
add-on for NVDA.

The application itself is called Banking 4
(https://subsembly.com/banking4.html).


• Is it a traditional desktop application, or a web app inside a
desktop container?

Its a traditional desktop application (at least it looks like it).


• If the former, what sort of UI framework and programming environment
is in use (e.g. Qt, .Net Framework with WPF, etc.)?
I actually don't know. It doesn't look like Qt or Java though. NVDA
itself recognizes the UI elements as IAccessible elements.


Thanks for your help.


Best Regards.


Toni Barth


Regards,

James Scholes

On 03/09/2019 at 7:15 pm, Toni Barth via Groups.Io wrote:
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.