[Webkit-unassigned] [Bug 10745] New: SVG layout needs to move out of DOM and into rendering tree during layout() call
bugzilla-daemon at opendarwin.org
bugzilla-daemon at opendarwin.org
Wed Sep 6 00:50:56 PDT 2006
http://bugzilla.opendarwin.org/show_bug.cgi?id=10745
Summary: SVG layout needs to move out of DOM and into rendering
tree during layout() call
Product: WebKit
Version: 420+ (nightly)
Platform: Macintosh
OS/Version: Mac OS X 10.4
Status: NEW
Severity: normal
Priority: P4
Component: SVG
AssignedTo: webkit-unassigned at opendarwin.org
ReportedBy: macdome at opendarwin.org
SVG layout needs to move out of DOM and into rendering tree during layout()
call
Right now SVG does all of it's viewport-releative length calculations
(percentages) during creation and "update" (notifyAttributeChanged) time. This
is wrong for a host of reasons. Mostly, it's just inefficient.
In order to correct this, several things need to be done.
1. SVGLength needs to lose it's m_context pointer.
2. SVGLength::value() should be passed a viewportElement pointer
3. toPathData() and other calculations related to layout should be moved from
creation/update time to layout() time. (This means no
newRenderPath->setPath(toPathData()) at creation time.)
4. DOM elements should have a needsLayoutOnViewportChange() function which
checks to see if any of the values (SVGLengths) on the element are viewport
relative (percentage values). This could allow us to avoid unnecessary layouts
on those elements. (We should probably talk to hyatt a bit more about this
flag.)
I think that's it. There are probably other little tweaks I've forgotten
however. This isn't super hard, but will take a little while to get right.
Implementing this will be a huge win for speed.
--
Configure bugmail: http://bugzilla.opendarwin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the webkit-unassigned
mailing list