I'm currently using hotspot annotations in my web component project using Google's Model Viewer. My html is structured as follows:
<my-element>
#shadow-root
<model-viewer>
<button class="hotspot1" aria-label="hotspot button 1">
<span class="inner-circle" tabindex="-1"></span>
<span class="annotation" tabindex="-1">Descriptive text here</span>
</button>
<button class="hotspot2" aria-label="hotspot button 2">
<span class="inner-circle" tabindex="-1"></span>
<span class="annotation" tabindex="-1">Descriptive text here</span>
</button>
<button class="hotspot3" aria-label="hotspot button 3">
<span class="inner-circle" tabindex="-1"></span>
<span class="annotation" tabindex="-1">Descriptive text here</span>
</button>
...
</model-viewer>
</my-element>
For accessibility reasons I'd like tab to skip over the span elements within the buttons, and only tab through the buttons themselves. To do this I am setting their tab-indexes to -1, as suggested here. Unfortunately it seems that it's still tabbing through each hotspot 3 times (one for the button, first span, and second span) despite whatever I set tabindex to.
I've verified that the issue is device and browser agnostic. Am I implementing tabindex wrong somehow?