Description[SVG] Skip layout viewport change calculation when not needed.
SVGRenderSupport::layoutChildren() determines whether the size of the
nearest viewport has changed upfront, and then uses this information to
force a re-layout of relative-length children.
But the relative-length flag is always propagated up the ancestor chain
(see SVGElement::updateRelativeLengthsInformation), so we can
immediately tell whether there are any relative-length descendants. If
there aren't, we can skip the viewport change crawl and related logic.
R=pdr@chromium.org,schenney@chromium.org,fs@opera.com,ed@opera.com
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=180071
Patch Set 1 #Patch Set 2 : Drop forced resource inval of non-rel children #Patch Set 3 : Test + minor cleanup. #
Messages
Total messages: 7 (0 generated)
|