phetsims / sun

User-interface components for PhET simulations, built on top of Scenery.
MIT License
4 stars 12 forks source link

NVDA overrides slider controls #872

Closed KatieWoe closed 5 months ago

KatieWoe commented 6 months ago

Device Samsung OS Win 11 Browser Firefox + NVDA Problem Description This was seen during https://github.com/phetsims/qa/issues/1033, but occurs on published sims and sims on main. When on a slider, the up and down arrows move the slider as expected, however the Home, End, PgUp, and PgDn keys do not move the slider and seem to be overwritten by NVDA. On Slack:

Jesse Greenberg

Yes please! It would be good to understand more about that. Can you please put it in sun (since it is related to sliders)?

Visuals

https://github.com/phetsims/sun/assets/41024075/d50a6998-6916-4b57-b1c7-d9d767436247

jessegreenberg commented 5 months ago

I just tried with NVDA 2023.3.3, FIrefox 122.0.1 but could not produce this. @KatieWoe are you still able to get this to happen?

KatieWoe commented 5 months ago

This still happens to me. Seen on main, NVDA 2023.3.3, Firefox 123.

https://github.com/phetsims/sun/assets/41024075/4577002b-80ca-4d38-9e40-ccff3ae8c5b8

jessegreenberg commented 5 months ago

@KatieWoe can you please confirm that those keys work for you on that same laptop when NVDA is turned off? Does NVDA work with the slider at this page? http://htmlpreview.github.io/?https://github.com/phetsims/a11y-research/blob/main/reader-intro.html

KatieWoe commented 5 months ago

The sim without NVDA works as expected. The home, end, pgup, and pgdn keys don't work with NVDA on the page provided.

jessegreenberg commented 5 months ago

OK, thanks for testing that @KatieWoe. If it happens on that demo page that means it is most likely not a problem with sun or PhET code. I also just tried on two other Windows machines with Firefox 123, NVDA 2023.3.3 and the keys are working.

@KatieWoe what is your "NVDA" key bound to? Is it bound to the "function" key or the "Insert" key or another?

KatieWoe commented 5 months ago

I'm not certain, whichever is the default.

jessegreenberg commented 5 months ago

@KatieWoe and I met to learn more in sync. It turns out that home/end/page keys do not work when used from the number pad. I could reproduce this on my desktop as well.

We looked at https://www.toptal.com/developers/keycode and found that the key event is blocked by NVDA (no event reaches the browser at all).

I will make a note of this in the accessibility-bugs.md file that PhET tracks. It is not really a bug, but putting it there will be helpful since that is where people are likely to go when they encounter this next time. Closing.