felixroos / kabelsalat

live coding audio graphs
https://kabel.salat.dev
GNU Affero General Public License v3.0
22 stars 5 forks source link

accessible svg graph #52

Open felixroos opened 4 weeks ago

felixroos commented 4 weeks ago

idea by Nicop:

I don't know of the exact way to implement this, but, if we're sticking to an SVG, you could make the tab order for individual connections make more sence, maybe in the order I've described. If you do decide to implement branching logic, the branch should be under a dropdown that shows/hides the relevant components when it's collapsed or expanded. As a bonus you can probably reduce visual clutter, especially for cable salad.

Another idea. If we want to implement the treelike navigation but keep it graphed as SVG, you can manipulate the keyboard focus whenever the user arrows through, as long as the keyboard focus is on a component of the SVG. For this to work, however, you'll have to properly alt your components. The only reason I don't want to make that arrow key navigation global is because you also use those to move in the code edit field, as you would with any other.

nicopn commented 4 weeks ago

Hi,

I'm the person who originally thought of this idea, and would like to bring more context to it. My goal is to make the SVG graph (the one that contains all modules and connections) be accessible to screen readers. In terms of navigating and labeling the graph's elements, I propose the following:

labeling

every element in the graph should have its own alt text. Suggestions for that are below

Navigation