Reviewed by Harrison.
authorkdecker <kdecker@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 1 Dec 2004 19:56:03 +0000 (19:56 +0000)
committerkdecker <kdecker@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 1 Dec 2004 19:56:03 +0000 (19:56 +0000)
commit34f31bc93ce45324b3fbb8659c365d3b7b3b90dc
tree793a998e18b67241c6f391378c52084e502d56da
parente6bd9f9c22094bd9530659c1308b5705fbe50148
    Reviewed by Harrison.

Fixed: <rdar://problem/3228878> potential performance problem in finding in large framesets

Got rid of O(N^2) conditions in _nextSibling and _previousSibling of where we were looking up self in the parent array of frames.

        * WebView.subproj/WebFrame.h: Added two new pointers, one for the previous kid and one for the next kid
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _addChild:]): Updates the previous frame and the next frame after this child
        (-[WebFrame _removeChild:]): ditto
        (-[WebFrame _nextSibling]): just return the pointer now
        (-[WebFrame _previousSibling]): ditto

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKit/ChangeLog
WebKit/WebView.subproj/WebFrame.h
WebKit/WebView.subproj/WebFrame.m