phetsims / scenery-phet

Reusable components based on Scenery that are specific to PhET simulations.
MIT License
8 stars 6 forks source link

Inconsistant speech from VoiceOver with GrabDragInteraction implementions #718

Open terracoda opened 2 years ago

terracoda commented 2 years ago

From Slack:

I have been looking carefully at the custom Grab/Drag interactions we have and testing and comparing them using the VoiceOver screen reader. I am wondering why the implementations in Gravity Force Lab's Ruler and Faraday's Law's Bar Magnet sound different than the other custom drag interactions in BASE, Friction, RaP. In the latter group I hear "article" quite consistently on focus and release, whereas I don't (hear "article") in the former two sims. I have examined the code as best I can, and do not see why VoiceOver is interpreting the root article element as some kind of important container that needs to be called out in the latter sims and why it is not doing so in the former sims (GFL and FL). I am thinking it must be due to differences in the code we have implemented.

Though, it could be something to do with VoiceOver in particular. I have been starting to hear "article" more in the most recent releases of MacOS.

We could consider not using the articleelement until it is better supported by VoiceOver as suggested in https://github.com/phetsims/a11y-research/issues/164. But I also wanted to know why in our implementation there are differences as well.

There is also an active issue in Friction that is related to the GrabDragInteraction, but not necessarily related to the article element, see https://github.com/phetsims/friction/issues/271

terracoda commented 2 years ago

Assigning to @jessegreenberg, but anyone who has time could have a look. It would be nice (if possible) to sort this out for the release next release of Friction and Ratio and Proportion.

terracoda commented 2 years ago

Oh, since the next sims to be published are @zepumph 's sims, I'll assign to both.

terracoda commented 2 years ago

@pixelzoom, you may be interested in this issue as you are currently working on a custom drag interaction, so just tagging you, too.

pixelzoom commented 2 years ago

Thanks @terracoda. There are no plans to use GrabDragInteraction in Geometric Optics at this time. But good to know about this in case that changes.

The things in Geometric Optics that are draggable are the framed "objects", light sources, projection screen, and rulers (see https://github.com/phetsims/geometric-optics/issues/235#issuecomment-1004940033). So far, the plan is that we will not be using GrabDragInteraction initially, since the first release does not support descriptions. When descriptions are added to a future release, then we'll also add GrabDragInteraction. (@arouinfar please correct me if I'm wrong.)