For example, nsIAccessNode firtsChildNode methods creates nsAccessNode and cache it so that firstChildNode doesn't look to the cache before it creates new object. It leads to problems if AT has own accessibles cache. When they navigate by ISimpleDOMnode navigation methods then they makes his cache out of date. Thanks Matt Campbell for the issue pointing.
This seems like a huge bug to me.
it's interesting but we have two implementation of navigation methods for access nodes (nsAccessNode and nsAccessNodeWrap).
nsAccessNode naviagation methods were implemented in bug 208922. I don't see a reason why nsAccessNode has own but similar logic. So I think we should merge them.
changing summary because nsAccessNode navigation methods use the cache :)
Created attachment 342222 [details] [diff] [review] patch
Had to back this one out because it breaks JAWS on a wide scale. For example on http://www.heise.de/newsticker, there are only 4 headings instead of 18, and 296 instead of 346 links etc. Question: Do we have a tool to look at the iSimpleDomNode tree? More info: IAccessible2 is unaffected by this, that tree is still intact. Both Window-Eyes and NVDA don't suffer from this change at all.
Marco, could you retest this patch since bug 472662 is fixed?
(In reply to comment #9) > Marco, could you retest this patch since bug 472662 is fixed? No luck. When loading the page http://www.heise.de/newsticker, the heading level 1 named "7-Tage-News", the following heading "05.05.2009", and the first link underneath that are not rendered to JAWS. This is just one example of content that's being missed with this patch.
Do we still want to get moving on this? Last patch I tried still had problems as the last comment suggests.
(In reply to Marco Zehe (:MarcoZ) from comment #11) > Do we still want to get moving on this? Last patch I tried still had > problems as the last comment suggests. ATs wants us to support ISimpleDOMNode, so it sounds like we should keep this bug.
I wasn't contacted to make it fixed so it doesn't seem to be a real problem for ATs. We change ISimpleDOMNode implementation making it as tear off so this bug should be marked wontfix.