jcsteh / osara

OSARA: Open Source Accessibility for the REAPER Application
GNU General Public License v2.0
128 stars 46 forks source link

Fedback for key signature and root key signature (Midi editor) #1168

Open aefren opened 3 days ago

aefren commented 3 days ago

Hello . In Reaper , there are shortcuts to change the key signature and root key signature, but there's no feedback from Osara . Currently , the accessible way to change the key and root key signature is by using NVDA 's object navigator or JAWS ' mouse cursor, which disrupts the workflow.

jcsteh commented 3 days ago

Thanks for reporting. It'd be helpful if you could provide details of exactly which actions you're talking about and what you would expect to be announced when you use them. Thanks.

aefren commented 1 day ago

Here are the actions:

Desired behavior: It should announce the new key signature after executing the action.

Current behavior: Nothing is verbalized, although the action does take effect and can be verified using the NVDA object navigator or the mouse cursor in JAWS.

ScottChesworth commented 1 day ago

Pasting the nearest thing I could find in the API but I don't think this is what we need, @jcsteh?

bool MIDI_GetScale(MediaItem_Take take, int rootOut, int scaleOut, char nameOut, int nameOut_sz)

Get the active scale in the media source, if any. root 0=C, 1=C#, etc. scale &0x1=root, &0x2=minor 2nd, &0x4=major 2nd, &0x8=minor 3rd, &0xF=fourth, etc.

jcsteh commented 1 day ago

Yeah, that should do it, hopefully.

jcsteh commented 1 day ago

I'm hoping the nameOut parameter will provide a nice friendly name like "C major". Otherwise we'll have to invent our own by looking at the rootOut and scaleOut parameters, which is doable but annoying and will definitely require me to brush up on music theory.