Voltas not reachable by keyboard

• Feb 22, 2020 - 22:02
Reported version
P2 - Medium
Ergonomical (UX)
S3 - Major

Alt+Left/Right will traverse other lines/spanners, but not voltas. That's because they don't have a start element that matches the current segment. If we don't mind only hitting voltas when navigating the top staff, it should be an easy fix. Arguably they could be hit on every staff like horizontal frames are, but that's not how they look to sighted viewers, so here the easy way might be the sensible way.



In this PR, voltas are navigated only on the top staff. I added to code to make it the top visible staff, but disabled it, because "visible" isn't meaningful to blind users and that would just confuse them. Someday we could expose that better.

BTW, I realize that even though voltas are not navigated without this PR, they are read, when selecting the barline before the measure starting the volta. Conceivably I could remove that extra read, but it doesn't hurt.

Status PR created fixed

Fixed in branch master, commit ad3b5c2dde

_fix #301496: voltas excluded from navigation

Resolves: https://musescore.org/en/node/301496

Alt+Left/Right commands were skipping voltas because
we were checking start element and checking against the active staff,
but the start element is actually the measure for voltas.
The main change here is to go ahead and visit the volta
if the active staff if you are navigating the top staff.
Arguably, it could make sense to check for the top visible staff,
since that is what the volta at least appears to be attached to.
So I have code here to that.
But I disabled it because in practice,
neither the navigation commands themsevles nor the screen reader
treat invisible staves specially.
So a blind user navigating would have no way of knowing
the top staff is not visible.
So they would likely continue to see it as relevant.

I would not the same issue occurs for system text,
which we always treat as attached to the top staff only.
I added a TODO to indicate where this code would need updating.

Eventually we could consider coming up with some way
of presenting information about hidden staves.
Perhaps in conjunction with a facility allow user
to hide staves on specific systems only,
which seems to be a fairly common request._

Fix version