Closed Bug 359784 Opened 18 years ago Closed 18 years ago

preferences pane accessible tree uncomplete

Categories

(Firefox :: Disability Access, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: nian.liu, Assigned: nian.liu)

References

Details

(Keywords: access, regression)

Attachments

(1 file, 1 obsolete file)

1.run trunk nightly build
2.open edit->preferences, click on different tab
3.use at-poke to poke

only part of accessible content shows in at-poke. and the part content shows is very unstable which means sometimes this part, and sometimes another part.
Keywords: access, regression
more like an at-poke bug. when switch among tabs, accessible objects are created. however, at-poke doesn't show them
(In reply to comment #1)
> more like an at-poke bug. when switch among tabs, accessible objects are
> created. however, at-poke doesn't show them
> 

forgot this. a firefox bug. 1.8.1branch works fine
children:changed:add was not sent.

getcachedparent returns null cause that.
Status: NEW → ASSIGNED
Attached patch patch (obsolete) — Splinter Review
parent hasn't been cached when invalide is called. so use getParent to replace getCachedParent
Assignee: nobody → nian.liu
Attachment #245534 - Flags: review?(aaronleventhal)
Attached patch patchSplinter Review
regression of 348158

nsAccessible::GetParent not work for prefpane "tabs"
nsnsDocAccessible::GetAccessibleInParentChain works for all prefpane.

seems we have a bug in nsAccessible::GetParent?

Aaron, what do you think?
Attachment #245534 - Attachment is obsolete: true
Attachment #245545 - Flags: review?(aaronleventhal)
Attachment #245534 - Flags: review?(aaronleventhal)
Comment on attachment 245545 [details] [diff] [review]
patch

I think the patch won't cause any problems, but I'm not 100% sure. It will end up creating parents sometimes for nodes that are going away.

But, I don't understand your question:
> nsAccessible::GetParent not work for prefpane "tabs"
> seems we have a bug in nsAccessible::GetParent?

Do you mean GetCachedParent() ? Or, what bug is there in GetParent() and how does that affect this?

The problem with GetCachedParent() is clearly that if the parent had not previously been created then nothing will be returned.
Attachment #245545 - Flags: review?(aaronleventhal) → review+
> But, I don't understand your question:
> > nsAccessible::GetParent not work for prefpane "tabs"
> > seems we have a bug in nsAccessible::GetParent?
if we use GetParent, no children-changed:add fires for prefpane "tabs", for others prefpane, it fires correctlly. 

GetAccessibleInParentChain works fine for all prefpane. so i wonder our implementation of GetParent may have a bug
Do you mean GetCachedParent() ?

We never used GetParent().

And if GetParent() has a bug then GetAccessibleInParentChain() would have one too.
(In reply to comment #8)
> Do you mean GetCachedParent() ?
> 
> We never used GetParent().
> 
> And if GetParent() has a bug then GetAccessibleInParentChain() would have one
> too.
> 

(In reply to comment #8)
> Do you mean GetCachedParent() ?
> 
> We never used GetParent().
> 
> And if GetParent() has a bug then GetAccessibleInParentChain() would have one
> too.
> 

GetCachedParent doesn't work due to no parenet cached before it's called. so i use GetParent to replace GetCachedParent and found almost all panes works fine except "tabs" pane. then i used GetAccessibleInParentChain to replace GetParent and every panes works fine.

so my conclusion is that we have a bug in GetParent.

i checked the implementation of each functions. they use different ways.

You're right, GetAccessibleInParentChain checks the DOM parent chain for accessibles.

For a bug like this, you'll have to come up with a very small testcase to find the problem.

So, where do we stand on getting this done? You have r+. Why not check it in and file a separate bug for the  GetParent() issue?
committed
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: