DescriptionRe-attach plugin renderers in the standard way.
When embedded content changes its source or type, it potential needs to
change its renderer. That was done by reattaching the renderer using a
combination of SubtreeStyleChange plus an explicit reattach in a custom
willRecalcStyle callback. This CL uses a standard lazy reattach instead.
Three svg tests changed their expected repaint rectangles due to the
following reason:
The reattach in willRecalcStyle did not re-attach any whitespace siblings
like the standard reattach does (certainly wrong, but I don't know if it
actually is observable as a display property change is necessary to affect
the whitespace renderers afaik). Moving to standard reattach makes
reattachment of a whitespace sibling do paint invalidation for the closest
block ancestor.
It's possible that we can improve whitespace re-attachment by:
1. Not invalidate block containers for whitespace renderers (will they ever
render anything?)
2. Detect if we need to reattach whitespace siblings before we do the actual
reattachment.
R=esprehn@chromim.org,leviw@chromium.org
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=182868
Patch Set 1 #Patch Set 2 : Rebased #
Created: 6 years, 2 months ago
Messages
Total messages: 13 (4 generated)
|