[Webkit-unassigned] [Bug 33520] Mapping from local to container coord space is O(N^2)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Feb 3 14:44:39 PST 2010


https://bugs.webkit.org/show_bug.cgi?id=33520





--- Comment #18 from James Robinson <jamesr at chromium.org>  2010-02-03 14:44:38 PST ---
Here is what I shall attempt to do:

*) When a RenderLayer and all of its ancestors have no transforms, store the
x/y offset to the root layer directly on the RenderLayer so that coordinate
mapping to the root layer is O(1).  This will have to be recalculated whenever
a layer or any of its parents move - I'll have to figure out how to detect that
through trial and error - although I think doing this in updateLayerPosition()
should be good enough.

*) Special-case mapping to the root layer in convertToLayerCoords() to just use
these offsets, assuming no transforms.  Mapping to layers other than the root
or mapping through anything with transforms will still use the same (fairly
slow) codepath.

*) If this all works out, see if it's reasonable to ditch the RenderLayer's x/y
offset to its parent RenderLayer.

This should speed up the position:relative test page and the pages in the wild
that are super slow.  Transforms make the world much more complicated than I
can probably handle :)

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list