phetsims / molecules-and-light

"Molecules and Light" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
2 stars 5 forks source link

Possible conflicts between iOS zoom and voice over #367

Closed KatieWoe closed 4 years ago

KatieWoe commented 4 years ago

Device iPad 6th Gen OS iPadOS 13.6 Browser Safari Problem Description For https://github.com/phetsims/QA/issues/513 There are some potential problems between the zoom feature on the iPads and Voice Over. However, these seem like they may not be solvable, and priority may be low. First, I was unable to find a way to zoom in or out while using Voice Over. This is due to gestures being highly used in VO, and the pinch to zoom did not seem to register. This seems like an issue with VO, rather than the simulation. If the sim is already zoomed in before VO activates, it seems impossible to zoom out or pan around the screen as normal. If a button is pressed that is off screen, the window will shift to show it, but dragging does not pan (again, this seems to be due to the VO gesture interface). The buttons and objects that are off screen seem to be assigned random positions on screen for VO to focus on. Overall, I'm not too worried, as the sim seems to mostly work (from what I've seen so far) even with these odd interactions.

loganbraywork commented 4 years ago

For Firefox NVDA, all mouse functions appear to work, and using ctrl + and ctrl - both work, but arrow keys are overridden by screen reader at all times.

jessegreenberg commented 4 years ago

Thanks @KatieWoe and @loganbraywork. The behaviors that you described are expected, and sorry I didn't make this clear in the QA issue.

First, I was unable to find a way to zoom in or out while using Voice Over. This is due to gestures being highly used in VO, and the pinch to zoom did not seem to register. This seems like an issue with VO, rather than the simulation. If the sim is already zoomed in before VO activates, it seems impossible to zoom out or pan around the screen as normal.

Correct, the VO gestures monopolize the screen, and we dont want to (and cannot) disable them for zoom.

If a button is pressed that is off screen, the window will shift to show it, but dragging does not pan (again, this seems to be due to the VO gesture interface)

Correct.

The buttons and objects that are off screen seem to be assigned random positions on screen for VO to focus on

Hmm, this is a little strange. It is happening because we don't reposition PDOM elements off screen in attempt to reduce that where possible for performance. The elements are ultimately usable with iOS VoiceOver, and they get panned into view upon activation. So I think this is acceptable for now. Because of the other issues mentioned here, zoom with iOS VoiceOver is not a use case we will generally support.

For Firefox NVDA, all mouse functions appear to work, and using ctrl + and ctrl - both work, but arrow keys are overridden by screen reader at all times.

This is expected, otherwise NVDA would not be usable since the user would not be able to read with their cursor.

Closing this issue.