I am adding the notes here to see if I can flesh them out into somthing understandable for designers and QA.
@terracoda, @BLFiedler and I went over the reasoning for the inconsistent iOS + VO highlighting behavior. @terracoda can take these and put them in a place that can be used by designers testing iOS + VO in the future.
TL:DR - iOS + VO visual highlighting is weird, and basically we don't support any continuity with it. Perhaps we can improve in the future, but for now (and for the reasons below) it is what it is.
VO highlight only shows up on "positioned" elements, where the PDOM element follows the scenery Node graphical element around the screen.
We don't position anything that get's the click event post iOS 14, so buttons, checkboxes, sliders. So the VO highlight is in the top left corner for these.
We must position elements when we need to pointer events from iOS + VO, and can't depend on getting a click event. For some reason, we don't get click events even on buttons when certain aria attributes are present, like aria-haspopup (like ComboBoxButton). Also on non "clicking" tags like menuitem (PhetMenu) and option (ComboBoxListBox).
For reasons unknown to us, aria-haspopup causes a lack of "click" event on the button. Thus clicking the ComboBoxButton with iOS + VO looks the same to the code as using touch/mouse to press it.
Focus doesn't automatically show the focus highlight, but instead you need to have the Display level switch "focusHighlightsVisibleProperty" true as well. (simplified logic) This is set to true when PDOM events come from the browser. This is set to false when mouse/touch events come from the browser.
In RaP, @zepumph explained to me why highlighting is now inconsistant when using iOS 14 + VO https://github.com/phetsims/ratio-and-proportion/issues/335#issuecomment-767737635
I am adding the notes here to see if I can flesh them out into somthing understandable for designers and QA.
@terracoda, @BLFiedler and I went over the reasoning for the inconsistent iOS + VO highlighting behavior. @terracoda can take these and put them in a place that can be used by designers testing iOS + VO in the future.