Closed
Bug 715877
Opened 13 years ago
Closed 13 years ago
JPAKE pairing code is not accessible to accessibility APIs
Categories
(Firefox :: Sync, defect)
Firefox
Sync
Tracking
()
VERIFIED
FIXED
mozilla12
People
(Reporter: MarcoZ, Assigned: murali.sr92)
Details
(Keywords: access, Whiteboard: [good first bug][lang=xul][mentor=philikon][verified in services])
Attachments
(1 file, 3 obsolete files)
1.56 KB,
patch
|
philikon
:
review+
|
Details | Diff | Splinter Review |
The code that one needs to enter for a new device is not accessible to assistive technologies and thus cannot be read by a blind person without sighted assistance.
STR:
1. Run a Firefox that does not have sync set up yet.
2. On the start page, click "Setup sync".
3. Now, run a machine's Firefox that does have Sync set up in a profile.
4. From the start page, click "Pair a device".
5. You're instructed to enter the code shown on the new device that is to be added.
Expected: The code should be retrievable via accessibility APIs.
Actual: The whole UI piece contains the instruction to type in this code on the other device, the links, and the buttons, but not the code itself.
The code itself is probably some kind of graphic that is not accessible to screen readers or other assistive technologies, and no alternative text is provided for it.
Comment 1•13 years ago
|
||
Marco, thanks for the report. Let me first point out that the code is not graphical at all, so my initial suspicion is that there's some confusion over the setup process here. But I'm not ruling out an accessibility bug.
Just to be clear, this is how the pairing process works:
* Let's say you have
** Computer A with Sync set up and
** Computer B where Sync is not set up yet.
* You want to pair the two:
** On Computer B, you choose Set up Sync -> I have an account. Now you should see the code displayed in three form field boxes that are non-editable.
** On Computer A, you choose "Pair a Device" from the home tab or the Sync prefpane. The dialog that opens will let you enter the code shown on Computer B.
Is this what you did?
Reporter | ||
Comment 2•13 years ago
|
||
Philipp, yes, this is what I did, and I did see the instructions that "this code" should be entered on the other device. However I could not read the code itself. So either these form fields are marked up in a way accessibility APIs don't see them, or for some reason they escaped my screen reader. In any way, perhaps they should be focusable, and just marked read-only so one can tab to each one of them. That way, one can review the code using the cursor keys and make sure it is accurately transferred to machine A.
Comment 3•13 years ago
|
||
Yeah we use XUL <textbox disabled="true"> form fields to display the code on Computer B [see 1,2]. I wonder if this is a XUL/a11n bug here or whether we should be doing something more a11n-friendly. I literally have no idea, so my hope is that Neil or David can answer this one for us... Neil? David? :)
[1] https://mxr.mozilla.org/mozilla-central/source/browser/base/content/syncSetup.xul#266
[2] https://mxr.mozilla.org/mozilla-central/source/browser/base/content/syncSetup.js#695
Summary: The graphical code that is used to add a device is not accessible to accessibility APIs → JPAKE pairing code is not accessible to accessibility APIs
Comment 4•13 years ago
|
||
Do you actually want the textboxes to be readonly? Or not to be textboxes at all?
Comment 5•13 years ago
|
||
(In reply to Neil Deakin from comment #4)
> Do you actually want the textboxes to be readonly? Or not to be textboxes at
> all?
Yes, we want them to be read-only and, while not a technical requirement, IMHO we want them to at least look like textboxes too. That way the dialogue displaying the code on computer B looks very similar to the dialogue on computer A where you enter the code (the goal for the user being to make the two "look the same").
Reporter | ||
Comment 6•13 years ago
|
||
Additional benefit is that on Computer B the user can review the code character by character using the arrow keys, making sure they can enter the code on computer A correctly. Simple labels would again have the problem that a) they're not focusable and b) they're not reviewable by a person using a screen reader, as easily as a read-only textbox is.
Comment 7•13 years ago
|
||
It sounds like you really just want readonly textboxes, not disabled textboxes.
Reporter | ||
Comment 8•13 years ago
|
||
Yes, Sir! ;-)
Comment 9•13 years ago
|
||
(In reply to Neil Deakin from comment #7)
> It sounds like you really just want readonly textboxes, not disabled
> textboxes.
Ah. Yeah, that does sound like it would make more sense. Thanks, Neil!
Whiteboard: [good first bug][lang=xul][mentor=philikon]
Updated•13 years ago
|
Assignee: nobody → murali.nandigama
Assignee | ||
Comment 11•13 years ago
|
||
Could you please suggest the changes I need to make to the patch? Thanks!
Attachment #591024 -
Flags: review?(philipp)
Reporter | ||
Comment 12•13 years ago
|
||
Comment on attachment 591024 [details] [diff] [review]
Textboxes made readonly instead of disabled
Tip: For even better accessibility, convert the xul:description above the textbox elements into a xul:label and add a control attribute to it that points at "easySetupPIN1". That way, when tabbing, for the first textbox, screen readers will speak the text of &addDevice.setup.enterCode.label;. That way, the user will know what these fields are for without having to review the whole window manually.
Assignee | ||
Comment 13•13 years ago
|
||
Can you please tell me whether this is the expected patch? Thanks! :)
Attachment #591024 -
Attachment is obsolete: true
Attachment #591024 -
Flags: review?(philipp)
Attachment #591031 -
Flags: review?(philipp)
Assignee | ||
Comment 14•13 years ago
|
||
Forgot to change the value attribute of label earlier.
Attachment #591031 -
Attachment is obsolete: true
Attachment #591031 -
Flags: review?(philipp)
Attachment #591032 -
Flags: review?(philipp)
Comment 15•13 years ago
|
||
Comment on attachment 591032 [details] [diff] [review]
Textboxes made readonly instead of disabled, description changed to label
This looks good to me and it seems like MarcoZ is on board with these changes, too. r=me.
Please update your patch to include your committer name and an appropriately formatted commit message. See http://blog.bonardo.net/2010/06/22/so-youre-about-to-use-checkin-needed.
Thanks!
Attachment #591032 -
Flags: review?(philipp) → review+
Assignee | ||
Comment 16•13 years ago
|
||
Attachment #591032 -
Attachment is obsolete: true
Reporter | ||
Comment 17•13 years ago
|
||
Comment on attachment 591041 [details] [diff] [review]
Author information added, attributes alignment fixed (they line up now)
You could'v eleft the <label></label> in place, would have worked the same way, but this is just as good, too.
Assignee | ||
Comment 18•13 years ago
|
||
Thanks a lot! :)
Attachment #591041 -
Flags: review?(philipp)
Updated•13 years ago
|
Attachment #591041 -
Flags: review?(philipp) → review+
Comment 19•13 years ago
|
||
Whiteboard: [good first bug][lang=xul][mentor=philikon] → [good first bug][lang=xul][mentor=philikon][fixed in services]
Comment 20•13 years ago
|
||
based on the fact I can copy the codes to clipboard, I say this is fixed. but will let the a11y folks verify with their technology.
Comment 21•13 years ago
|
||
Merged to m-c: https://hg.mozilla.org/mozilla-central/rev/2879d93049e8
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla12
Comment 22•13 years ago
|
||
m-c nightly build of 20120127 has copyable jpake code fields
Status: RESOLVED → VERIFIED
Whiteboard: [good first bug][lang=xul][mentor=philikon][fixed in services] → [good first bug][lang=xul][mentor=philikon][verified in services]
Reporter | ||
Comment 23•13 years ago
|
||
I can also confirm that this now works very nicely with screen readers in Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0a1) Gecko/20120127 Firefox/12.0a1. Thanks Murali!
Updated•7 years ago
|
Component: Firefox Sync: UI → Sync
Product: Cloud Services → Firefox
Comment 24•6 years ago
|
||
Keywords: sec508
You need to log in
before you can comment on or make changes to this bug.
Description
•