GNOME Bugzilla – Bug 473699
Adjust Orca Preferences dialog to speak/braille three components that are multiply labelled
Last modified: 2007-10-12 15:39:59 UTC
See also Orca bug #473420. In debugging this bug, we determined that there are three places in the Orca Preferences dialog where there is a label, then a spin button, then another label specifying units. There is one on the Speech pane and two on the Magnifier pane. For each of these occurrences, we will need to setup two LABELLED_BY relationships and two LABEL_FOR relationships and make sure that Orca nicely speaks/brailles them.
Just thinking out loud... We might also consider extending this to modifying the way Orca presents items labelled by more than one label. For example, we might have something like the following on the screen: label1 label2 object label3 label4 We might want to speak "label1 label2 object_{name,value} label3 label4 object_role". So, for the spin button case, we have: Update interval: [10] seconds Where "Update interval:" is the first label, "[10]" is the spin button, and "seconds" is the next label. We would present "Update interval: 10 seconds spin button" via speech and something similar for braille. To do this, we would need to do some analysis of the relative screen positions of labels and objects.
Created attachment 97074 [details] [review] Patch to fix this problem. For the three Orca Preferences dialog components in question, we get: SPEECH OUTPUT: 'Update interval: seconds 10 spin button' BRAILLE LINE: 'orca Application Orca Preferences Dialog TabList Speech Update interval: seconds 10 $l' VISIBLE: 'Update interval: seconds 10 $l', cursor=28 SPEECH OUTPUT: 'Width: pixels 32 spin button' BRAILLE LINE: 'orca Application Orca Preferences Dialog TabList Magnifier Cursor Settings Panel Width: pixels 32 $l' VISIBLE: 'Width: pixels 32 $l', cursor=17 SPEECH OUTPUT: 'Size: pixels 16 spin button' BRAILLE LINE: 'orca Application Orca Preferences Dialog TabList Magnifier Cross-hair Settings Panel Size: pixels 16 $l' VISIBLE: 'Size: pixels 16 $l', cursor=16
This is definitely the most expedient thing to do and gives the user important information. The only issue is ordering. That will require some heuristics for guessing where to put the labels and will probably also require some significant changes to the core of orca: it doesn't expect objects to be visually nested in between multiple labels -- it expects them to be off to the side. So, I think this patch is good as it stands and would like to see it in both trunk and gnome-2-20.
Okay, thanks. Patch applied to SVN trunk and the gnome-2-20 branch. Moving to "[pending]" state.
The speech now sounds correct to me.
Thanks. Closing as FIXED.