Closed Bug 397255 Opened 17 years ago Closed 17 years ago

Various windows: Labels are not properly associated with the controls they're labelling

Categories

(Calendar :: Calendar Frontend, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: MarcoZ, Assigned: MarcoZ)

Details

(Keywords: access)

Attachments

(2 files, 1 obsolete file)

Many of the Sunbird and Lightning dialogs have labels that visually label controls such as textboxes or comboboxes, but that are not explicitly associated with those controls via the "control" attribute. The result is that assistive technology products such as screen readers for the blind cannot properly read the labels for those controls.
This patch:
1. addresses those labels that do not have a control attribute, but which are actually labelling a control, and
2. converts a few XUL:description elements to XUL:label elements and associates them with controls they are labelling. Note that I took great care to make sure not to choose such XUL:description elements that have long text, and which would most likely wrap. Those I changed all have short labels, and will most likely not wrap.
Attachment #282013 - Flags: review?(michael.buettner)
Attachment #282013 - Attachment is obsolete: true
Attachment #282013 - Flags: review?(michael.buettner)
In addition, this patch addresses the mail window front-end part of Lightning where the View: combobox was not labelled correctly: 1. The label has to have a control attribute pointing to the combobox, and the combobox must have an "id" attribute instead of a "label" attribute.
Attachment #282023 - Flags: review?(michael.buettner)
Comment on attachment 282023 [details] [diff] [review]
Patch 2, additionally addressing View: combobox in Lightning main window

>-    <label value="&agenda.treeview.label;"/>
>-    <menulist label="&agenda.treeview.menu.label;" oncommand="agendaTreeView.updateFilter(this);">
>+    <label value="&agenda.treeview.label;" control="agenda.treeview.menu"/>
>+    <menulist id="agenda.treeview.menu" oncommand="agendaTreeView.updateFilter(this);">

Since you are getting rid of &agenda.treeview.menu.label; and I could find no other reference to it, you probably also want to remove the entity from lightning.dtd. Since we are in string freeze, you should file a bug to remove this string after we release. Maybe we even have a general "remove obsolete strings post-0.7" bug, if so just add the entity name there, otherwise feel free to file it.

Since this patch has a really low regression risk, I think its safe to take. r+ with the follow-up bug filed.
Attachment #282023 - Flags: review?(michael.buettner) → review+
checked in on HEAD and MOZILLA_1_8_BRANCH

-> FIXED
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Target Milestone: --- → 0.7
Version: Trunk → unspecified
As Neil pointed out to me in bug 397097, which addresses similar issues in Thunderbird, labels can be made to wrap if they are converted from <label value="foo"/> to <label>foo</label>. I converted those labels that I converted from XUL:description elements to allow for wrapping, if this is necessary.
Attachment #282103 - Flags: review?(philipp)
(In reply to comment #3)
> Since you are getting rid of &agenda.treeview.menu.label; and I could find no
> other reference to it, you probably also want to remove the entity from
> lightning.dtd. Since we are in string freeze, you should file a bug to remove
> this string after we release.

This has been filed as bug 397341.
Attachment #282103 - Flags: review?(philipp) → review+
followup patch also checked in
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: