No accessible object for items (Glossary, Index, Search, Contents) on Help dialog

RESOLVED WONTFIX

Status

()

Core
Disability Access APIs
RESOLVED WONTFIX
14 years ago
13 years ago

People

(Reporter: Louie Zhao, Assigned: Aaron Leventhal)

Tracking

({access, sec508})

Trunk
access, sec508
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: sunport17)

Attachments

(1 attachment, 2 obsolete attachments)

(Reporter)

Description

14 years ago
For Gnopernicus, steps to Reproduce:
1. Press <F1> to open help window
2. Press <F6> to switch to the left pane
3. Press <Tab> to focus 4 items (Glossary, Index, Search, Contents) one by one

Actural Result:
Nothing is reported.

Expected Result:
braille should output: Glossay, Index, Search, Contents one by one

In addition, GOK can't grab 4 buttons (Glossary, Index, Search, Contents) in
UI-Grab.
(Reporter)

Comment 1

14 years ago
There is no accessible object for button whose class is "box-texttab" because
"box-texttab" is defined in theme and has not implement nsIAccessible interface.
The attached patch is to implement nsIAccessible for "box-texttab" under each theme.

Here, I have a question about XBL:

Why can't <binding id="sbtab" extends="xul:button">
(http://lxr.mozilla.org/seamonkey/source/themes/classic/communicator/sidebar/sidebarBindings.xml#8)
inherit nsIAccessible from 
"chrome://global/content/bindings/button.xml#button" since "xul:button" is
defined in xul.css as "chrome://global/content/bindings/button.xml#button"
(http://lxr.mozilla.org/seamonkey/source/xpfe/global/resources/content/xul.css#108)
?

If this can work, we don't have to implement nsIAccessible for <binding
id="sbtab" ...> under each theme.

I have tried to replace 'extends="xul:button"' with
'extends="chrome://global/content/bindings/button.xml#button"' for <binding
id="sbtab">. Although it fixed this bug, the appearance of the button has been
changed. Is there any difference between "xul:button" and
"chrome://global/content/bindings/button.xml#button"?

I can't find answer from the current XUL/XBL document. Can someone who is
familiar with XUL/XBL give some light on these questiones? Thanks very much.
(Reporter)

Comment 2

14 years ago
Created attachment 158718 [details] [diff] [review]
proposed patch

Comment 3

14 years ago
extends="xul:button" just means that gecko creates a button frame.
(It does this automatically for a xul button, checkbox or radio).

You can't have implementation in the theme, it won't work.

I didn't actually think that the buttons were focusable.

For some reason the focus setting when you use alt+shortcut isn't working :-(
Created attachment 158825 [details]
something related

this attatchment is for making sidebar tab keyboard accessible and at the same
time as a side product, making help accessible for sun mozilla1.7. due to the
code difference, some part in the patch is not suitable for community mozilla.
i create a bug 256815

Updated

14 years ago
Blocks: 263575
(Assignee)

Updated

14 years ago
Whiteboard: sunport17
(Reporter)

Comment 5

14 years ago
Comment on attachment 158718 [details] [diff] [review]
proposed patch

The patch has been obsolete.
Attachment #158718 - Attachment is obsolete: true
(Assignee)

Comment 6

13 years ago
Created attachment 180664 [details] [diff] [review]
Legitimize sidebar tabs as real tab widgets, created by a <tabbox orient="horizontal"> with a child <tabs> which itself has <tab><tabpanel> pairs as children

The help.xul changes are large because the contents tab has been moved first in
the order, and because the indent changed on the other tabs since the <tree>s
are now wrapped in <tabpanel>s.
Assignee: Louie.Zhao → aaronleventhal
Attachment #158825 - Attachment is obsolete: true
Status: NEW → ASSIGNED
(Assignee)

Updated

13 years ago
Attachment #180664 - Flags: superreview?(neil.parkwaycc.co.uk)
(Assignee)

Updated

13 years ago
Attachment #180664 - Flags: review?(jwalden+fxhelp)

Comment 7

13 years ago
Comment on attachment 180664 [details] [diff] [review]
Legitimize sidebar tabs as real tab widgets, created by a <tabbox orient="horizontal"> with a child <tabs> which itself has <tab><tabpanel> pairs as children

Because this is patched Firefox help, I can only make general comments.

>+    // Initialize index
>+    expandAllIndexEntries();
Might want to do this in a select event handler to defer this until the index
is opened.

>+    // Initial focus in first tree view
>+    setTimeout("helpTocPanel.focus()", 0);
I'm not keen on the string form of setTimeout, although here it's shorter.

>+tab + tabpanel /* Sidebar tabpanel */
>+{
>+  visibility: collapse;
>+  -moz-box-orient: vertical;
???

I'm not convinced that you should overload the meaning of tab. All you need are
the correct accessible objects, right? But if you do want that, then I think
Ben made it so you can set an initial index.
Attachment #180664 - Flags: superreview?(neil.parkwaycc.co.uk)
(Assignee)

Comment 8

13 years ago
(In reply to comment #7)
> I'm not convinced that you should overload the meaning of tab. All you need are
> the correct accessible objects, right? But if you do want that, then I think
> Ben made it so you can set an initial index.

In my opinion these are tabs. They look and act like them. Ctrl+tab moves
between them. Selecting them makes a different pane visible. Otherwise, what
kind of widget should they be?

Or perhaps you are saying they can might tabs in terms of accessibility objects,
but not in toolkit. I was hoping to keep it this way, not just for Firefox help
but this patch would make it's way into Seamonkey. It will be a lot more work to
redo this by moving it into a new XBL-based XUL widget. (That's why I asked what
you thought of this approach on IRC last week). :/

How does setting initial index relate to the problem of what widget is used?

(Assignee)

Comment 9

13 years ago
We need this for Firefox help to be accessible.
Flags: blocking-aviary1.1?
Keywords: sec508
(Assignee)

Updated

13 years ago
OS: Linux → All
Hardware: PC → All
(Assignee)

Updated

13 years ago
Attachment #180664 - Flags: superreview?(bugs)
(Assignee)

Comment 10

13 years ago
(In reply to comment #7)
> >+tab + tabpanel /* Sidebar tabpanel */
> >+{
> >+  visibility: collapse;
> >+  -moz-box-orient: vertical;
> ???

Which part is the question for?
tab + tabpanel is the shortest way to specify a tabpanel in vertical set of
tabs, since they are set up like this:
<tabbox orient="horizontal"> 
  <tabs>
     <tab/>
     <tabpanel/>
     <tab/>
     <tabpanel/>
     <tab/>
     <tabpanel/>
  </tabs>
  <browser/> <!-- or some other client area -->
</tabbox>
The visibility: collapse is there because most of the tabs are hidden. Another
style rule unhides the currently selected tab.
The -moz-box-orient is probably optional, but it seems like most vertical tab
panels use vertically organized children.

Comment 11

13 years ago
(In reply to comment #8)
>How does setting initial index relate to the problem of what widget is used?
Switching to a tabs widget made the first tab was selected by default, although
I thought I saw Ben check in some code that you could use to change that.
(Assignee)

Comment 12

13 years ago
(In reply to comment #11)
> Switching to a tabs widget made the first tab was selected by default, although
> I thought I saw Ben check in some code that you could use to change that.
I want to make Contents the first tab anyway. It's confusing to a screen reader
user to arrive in a group of tabs at the end, instead of the start. Besides,
putting Contents first puts them in alphabetical order (Contents, Glossary,
Index, Search). Why does it need to be last?
Comment on attachment 180664 [details] [diff] [review]
Legitimize sidebar tabs as real tab widgets, created by a <tabbox orient="horizontal"> with a child <tabs> which itself has <tab><tabpanel> pairs as children

I'm nowhere near qualified enough to review this yet; my guess is you probably
want mconnor instead.

That said, if indeed you ask him, I don't know what response you'll get.  He's
not a fan of multiple-panel sidebars, and he's been wanting to make some
changes to Help's UI to get rid of them for a while.  That might take
precedence over this, although I can't say that for certain.  (If he does
accept them, I would bet he'd ask for the xul.css changes to be moved into
Help's CSS stylesheets so as to localize the cruftiness, but that's just a
guess.)
Attachment #180664 - Flags: review?(jwalden+fxhelp)
(Assignee)

Updated

13 years ago
Blocks: 291034
(Assignee)

Updated

13 years ago
Attachment #180664 - Flags: superreview?(bugs) → superreview?(mconnor)
(Assignee)

Comment 14

13 years ago
Help has been redesigned and there is no longer a need for this fix.

The new help should be checked in very soon.
Status: ASSIGNED → RESOLVED
Last Resolved: 13 years ago
Resolution: --- → WONTFIX
Attachment #180664 - Flags: superreview?(mconnor)

Updated

13 years ago
Flags: blocking-aviary1.1?
You need to log in before you can comment on or make changes to this bug.