Re-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
Review URL: https://codereview.chromium.org/596773002
git-svn-id: svn://svn.chromium.org/blink/trunk@182868 bbb929c8-8fbe-4397-9dbb-9b2b20218538
6 files changed