-
Notifications
You must be signed in to change notification settings - Fork 29.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
List: Orca announces typed characters instead of element when typing to navigate #95961
Comments
@isidorn Is this tree-filtering specific or something I need to opt-in for breadcrumbs |
@jrieken oh we are editing at the same time.. |
Ok, investigted. Breadcrumbs is using a list, and on key press list navigates to that element based on prefix matching. This works just fine for me and I think breadcrumbd are doing everything proper. The reason why Orca decided to announce the character typed is up to Orca. I do not get this behavior on the Mac. |
@isidorn Orca does not stop announcing the characters as I type. Yes, the same behaviour when I open explorer. |
@jvesouza thanks for clarifying. Thus this is not a breadcrumbs issue but a general list issue with Orca. Since by typing aa you are still on the aaa.txt element, nothing changed and orca does not annoucnce since the original annoucment was interupted by the second a. |
@isidorn Every time a key is pressed Orca interrupts speech whether or not it has key echo enabled. I think that behavior is expected and not an issue/bug in Orca. Is NVDA doing something different? I'm happy to discuss the best way to solve this. |
I'll toss out the first idea to get the brainstorming started: Could VSCode detect this condition (user keeps typing and selection hasn't changed) and re-announce the selected item via ARIA live regions? |
@joanmarie yes NVDA behaves the same. And I think we should handle it on the VS Code side. fyi @joaomoreno |
Created this PR for discussion #97057 |
@jvesouza: When this problem occurs, have you tried Orca's basic "where Am I?" command? For me it solves the problem without there needing to be any changes made in VSCode. BTW, Orca saying things like "0 of 0" when you use "where Am I?" in some of VSCode's trees and lists is due to a Chromium issue or two which have already been fixed. But with that nit aside, "where Am I" might be the way to go. Thoughts? |
@joanmarie Yes, it works and is what I normally use. The only other problem, although this is not a big problem, is that I need to use one more key. |
Fixed via pr #97057 |
@jvesouza did you get a chance to try this out? So we add a verified label if all is good. |
I'm sorry for the delay in testing, I should have returned earlier. It seems that nothing has changed because when I look for something in bread crumbs only the first item on the list is announced. I have in my code two functions, open_input and open_output. |
@jvesouza thanks for trying it out. Probably things do not get read out because we use live-regions to send out an alert and orca does not see a change between alerts and probably does not read anything. So even though we pushed a fix for this the experience is not that nice. |
I'll do two separate tests. Here are my findings using Orca master and the steps in the opening report. I just tried it and Orca spoke "f123" to me after I released the "3". From my debug.out, I see:
A bit later I see:
And shortly after that:
Now I heard Orca speak it so I know it wasn't interrupted. But pretending it wasn't my debug.out, I then did a search for "Interrupting presentation" to see if Orca might have immediately cut off speech after it sent it to be spoken but before it was actually heard. I don't see that until the window is deactivated. |
Now I tried this case from @jvesouza:
I heard Orca say "open_output" after I typed "op" quickly. Again, looking at my debug.out: Here's the release of "p":
Here's the text insertion from the alert:
Here's Orca speaking the live region:
And there's no "Interrupting presentation" until I clicked with the mouse. |
@jvesouza Can you please capture a debug.out in which Orca fails to present the live region to you? I'm hoping based on my previous two examples, you'll be able to identify the following:
Or you could just send the file to me. |
@joanmarie thanks a lot for looking into this. |
I found that the problem only seems to happen when the procedure is performed a second time.
In my environment orca announces 'open input' as expected. Now press the esc key and repeat the last two steps. I will also send via e-mail orca debug file to @joanmarie |
Looking at @jvesouza's debug.out, the first time we get an object:text-changed:insert event for the alert; the second time we don't; we only get an object:children-changed:add event. And Orca ignores that event because the child being added is a static-text leaf (and the text insertion event is expected). So I guess the thing to do is come up with a stand-alone test case and file a bug against Chromium for the missing accessibility event. Either that and/or figure out how to force Chromium to emit the text insertion event. |
Has this not been fixed in more current versions of chromium? |
@jvesouza here's the latest Electron 8 exploration build so if you can try it out. If not I can try it out later today |
@isidorn Thank you for the link. Unfortunately the behavior appears to be exactly the same. |
Issue Type: Feature Request
In Breadcrumbs , when I am looking for an element, the orca stops announcing the name of the element as soon as it is found, even if I keep typing its name.
For a better understanding try the following steps:
As soon as the letter f is typed, the orca tries to announce the name of the function found but is immediately interrupted because the number 1 was typed. It is difficult for me to know if the function was found or not.
Ideally for me, the function name would continue to be announced as we type, even if it was the same.
CC @isidorn
VS Code version: Code - Insiders 1.45.0-insider (d342048, 2020-04-23T05:54:24.582Z)
OS version: Linux x64 5.6.6-arch1-1
The text was updated successfully, but these errors were encountered: