Re: [orca-list] Orca and MuseScore



Hey Mark.

Right now Orca is not listening for description change events. If you want to see if it magically fixes things, add a listener for them in default.py.

As for value-change: What event gets emitted by Qt for that? An accessible value is something in a range. It has a numeric value which can be represented as a percent. Think spin buttons, progress bars, sliders, scroll bars.

As for why Orca is so slow to present it: Depends on what Orca is doing. You can make Orca spew a metric crapton of debugging output to a file. See https://wiki.gnome.org/Projects/Orca/Debugging. Get a full debug.out, find your event emission and what Orca does in response.

Regarding the filler: If memory serves me, there was some selection dialog in which the object being chosen had role of filler and an accessible name. But I might be misremembering. In the middle of something else at the moment.

Hope the above hints help. And thanks for your interest!
-- joanie (Orca maintainer)

On 1/19/20 9:29 PM, Marc Sabatella wrote:
Hello!  I am one of the developers of MuseScore, and I've been working on accessibility on and off the last few years.  My spam folder and I had a disagreement about my subscribing to this list (!), so I wasn't able to participate in the recent discussion, but I learned a lot from reading the exchanges.  Also from discussions on the Qt list and with some JAWS scripters.  Bottom line, I've managed to get MuseScore working with Orca, but I do still have some questions.

What I was having trouble with is getting Orca to read changes to a custom Qt widget representing a musical score.  The changes represent the currently-selected note or symbol, so it changes on cursor navigation.  After a ton of trial and error - different roles for the widget, different properties for the info I wanted read, different events to triggers the reading - I came up with something that works, using a short Orca script.  But Orca responds more slowly than I expect (more slowly than NVDA or JAWS on Windows), and I'm not sure why, so I'd appreciate any suggestions.

What I have right now is a role of image for my widget, although others work too.  The name is the name of the score.  The value and description are both set to the text I want read - a verbal description of the selected score element.  I send a value change event the selection changes, because try as I might, I just can't seem to get Orca to recognize a description change event.  Orca doesn't read anything on receipt of the value change event by default, but my script listens for this event and reads the description (not the value, because that always comes out as numeric 0).

As I said, it works, but there is a pretty big lag - like a second or more - between when I send the event from MuseScore and when Orca reads the result.  Accerciser sees the event immediately, so I know the delay is not on the MuseScore side.  What's weird is, spinboxes go through my same onValueChanged handler, and it reads instantly.  Somehow my custom widget takes much longer to get there.

As I mentioned, I'd really rather use a description changed event, but even though I'm installing a listener for object.property-change.accessible-description, it never fires.  Probably I'm doing it wrong, but it seems like the right syntax.  Running debug info on Orca, though, it doesn't seem the event gets received (but again, Accerciser sees it just fine).

So, my questions at this point:

1) why Orca is so slow to read this?
2) anything special I need to do to get accessible-description events?
3) any other ideas for ways of eliminating the need for the script

BTW, there was a question about the "filler" objects in the tree.  These are widget layout elements used by Qt - to control whether controls are laid out horizontally or vertically or in a grid, and not meant to be directly accessible at all.  Not sure why Qt puts them in the accessible object hierarchy.

--
Marc Sabatella
marc outsideshore com <mailto:marc outsideshore com>

_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]