Index: components/plugins/renderer/loadable_plugin_placeholder.cc |
diff --git a/components/plugins/renderer/loadable_plugin_placeholder.cc b/components/plugins/renderer/loadable_plugin_placeholder.cc |
index 3719130a70f189e57fe16ef983c59acd1ee6a9e7..d259f79b495e88e359ad9ec14511e90cfe632eb0 100644 |
--- a/components/plugins/renderer/loadable_plugin_placeholder.cc |
+++ b/components/plugins/renderer/loadable_plugin_placeholder.cc |
@@ -329,6 +329,12 @@ void LoadablePluginPlaceholder::DidFinishLoadingCallback() { |
if (message_.length() > 0) |
UpdateMessage(); |
+ // Ensure that we force a layout and paint invalidation for the new |
+ // content. This will cause the container invalidation to be acted upon. |
+ blink::WebFrame* frame = GetFrame(); |
+ blink::WebView* view = frame->view(); |
+ view->setNeedsLayoutAndFullPaintInvalidation(); |
+ |
// Wait for the placeholder to finish loading to hide the premade plugin. |
// This is necessary to prevent a flicker. |
if (premade_throttler_ && !placeholder_was_replaced_) |