summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--webkit/glue/webframeloaderclient_impl.cc2
-rw-r--r--webkit/glue/webplugin_impl.cc9
2 files changed, 6 insertions, 5 deletions
diff --git a/webkit/glue/webframeloaderclient_impl.cc b/webkit/glue/webframeloaderclient_impl.cc
index cd4aca0..e531972 100644
--- a/webkit/glue/webframeloaderclient_impl.cc
+++ b/webkit/glue/webframeloaderclient_impl.cc
@@ -1432,7 +1432,7 @@ Widget* WebFrameLoaderClient::createPlugin(const IntSize& size, // TODO(erikkay)
Widget* result = WebPluginImpl::Create(gurl, argn, argv, argc, element,
webframe_, plugin_delegate,
- load_manually, actual_mime_type);
+ load_manually, my_mime_type);
DeleteToArray(argn);
DeleteToArray(argv);
diff --git a/webkit/glue/webplugin_impl.cc b/webkit/glue/webplugin_impl.cc
index 5bf2f72..4064a27 100644
--- a/webkit/glue/webplugin_impl.cc
+++ b/webkit/glue/webplugin_impl.cc
@@ -1319,9 +1319,6 @@ bool WebPluginImpl::ReinitializePluginForResponse(
widget_ = container_widget;
webframe_ = web_frame;
- // Turn off the load_manually flag as we are going to hand data off to the
- // plugin.
- load_manually_ = false;
WebViewDelegate* webview_delegate = web_view->GetDelegate();
std::string actual_mime_type;
@@ -1345,7 +1342,7 @@ bool WebPluginImpl::ReinitializePluginForResponse(
delete[] arg_values;
if (!init_ok) {
- SetContainer(NULL);
+ widget_ = NULL;
// TODO(iyengar) Should we delete the current plugin instance here?
return false;
}
@@ -1356,6 +1353,10 @@ bool WebPluginImpl::ReinitializePluginForResponse(
// visible.
widget_->frameRectsChanged();
delegate_->FlushGeometryUpdates();
+ // The plugin move sequences accumulated via DidMove are sent to the browser
+ // whenever the renderer paints. Force a paint here to ensure that changes
+ // to the plugin window are propagated to the browser.
+ widget_->invalidateRect(widget_->frameRect());
return true;
}