Closed
Bug 280293
Opened 21 years ago
Closed 20 years ago
Don't use nsIDOMNode:GetNextSibling() -- it is an O(n) operation
Categories
(Core :: Disability Access APIs, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: aaronlev, Assigned: aaronlev)
Details
(Keywords: access, perf)
Attachments
(1 file)
nsAccessibleTreeWalker actually does extra work to use
nsIDOMNode::GetNextSibling() instead of using something that indexes a child
from the parent.
It turns out this makes Gecko do a lot more work. GetNextSibling() has to use
IndexInParent() to do its work.
Assignee | ||
Comment 1•21 years ago
|
||
Attachment #172785 -
Flags: superreview?(bzbarsky)
Attachment #172785 -
Flags: review?(bugmail)
![]() |
||
Comment 2•21 years ago
|
||
It'll take me some time to get to this; I'm pretty swamped with reviews...
![]() |
||
Comment 3•20 years ago
|
||
Comment on attachment 172785 [details] [diff] [review]
Use nsIContent::GetChildAt() except at top of doc, where we'll now use GetChildNodes() which is similar to the nsIDOMNodeList walking we already do for anon content
sr=bzbarsky
Attachment #172785 -
Flags: superreview?(bzbarsky) → superreview+
Assignee | ||
Comment 4•20 years ago
|
||
Comment on attachment 172785 [details] [diff] [review]
Use nsIContent::GetChildAt() except at top of doc, where we'll now use GetChildNodes() which is similar to the nsIDOMNodeList walking we already do for anon content
verbal r= timeless
Attachment #172785 -
Flags: review?(bugmail) → review+
Assignee | ||
Comment 5•20 years ago
|
||
Checking in accessible/src/base/nsAccessibleTreeWalker.h;
/cvsroot/mozilla/accessible/src/base/nsAccessibleTreeWalker.h,v <--
nsAccessibleTreeWalker.h
new revision: 1.7; previous revision: 1.6
done
Checking in accessible/src/base/nsAccessibleTreeWalker.cpp;
/cvsroot/mozilla/accessible/src/base/nsAccessibleTreeWalker.cpp,v <--
nsAccessibleTreeWalker.cpp
new revision: 1.11; previous revision: 1.10
done
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•