Index: chrome/renderer/webplugin_delegate_proxy.cc |
diff --git a/chrome/renderer/webplugin_delegate_proxy.cc b/chrome/renderer/webplugin_delegate_proxy.cc |
index b98b728443d91d6edeac7f824b965f95e2370237..068a7a1b4ddac90a1678db0d5523a70ac2bac5ed 100644 |
--- a/chrome/renderer/webplugin_delegate_proxy.cc |
+++ b/chrome/renderer/webplugin_delegate_proxy.cc |
@@ -331,6 +331,12 @@ void WebPluginDelegateProxy::InstallMissingPlugin() { |
void WebPluginDelegateProxy::OnMessageReceived(const IPC::Message& msg) { |
IPC_BEGIN_MESSAGE_MAP(WebPluginDelegateProxy, msg) |
IPC_MESSAGE_HANDLER(PluginHostMsg_SetWindow, OnSetWindow) |
+#if defined(OS_LINUX) |
+ IPC_MESSAGE_HANDLER(PluginHostMsg_CreatePluginContainer, |
+ OnCreatePluginContainer) |
+ IPC_MESSAGE_HANDLER(PluginHostMsg_DestroyPluginContainer, |
+ OnDestroyPluginContainer) |
+#endif |
#if defined(OS_WIN) |
IPC_MESSAGE_HANDLER(PluginHostMsg_SetWindowlessPumpEvent, |
OnSetWindowlessPumpEvent) |
@@ -634,17 +640,26 @@ int WebPluginDelegateProxy::GetProcessId() { |
return channel_host_->peer_pid(); |
} |
-void WebPluginDelegateProxy::OnSetWindow(gfx::NativeViewId window_id) { |
-#if defined(OS_WIN) |
- gfx::NativeView window = gfx::NativeViewFromId(window_id); |
- windowless_ = window == NULL; |
+void WebPluginDelegateProxy::OnSetWindow(gfx::PluginWindowHandle window) { |
+ windowless_ = window == static_cast<gfx::PluginWindowHandle>(0); |
if (plugin_) |
plugin_->SetWindow(window); |
-#else |
- NOTIMPLEMENTED(); |
-#endif |
} |
+#if defined(OS_LINUX) |
+void WebPluginDelegateProxy::OnCreatePluginContainer( |
+ gfx::PluginWindowHandle* container) { |
+ RenderThread::current()->Send(new ViewHostMsg_CreatePluginContainer( |
+ render_view_->routing_id(), container)); |
+} |
+ |
+void WebPluginDelegateProxy::OnDestroyPluginContainer( |
+ gfx::PluginWindowHandle container) { |
+ RenderThread::current()->Send(new ViewHostMsg_DestroyPluginContainer( |
+ render_view_->routing_id(), container)); |
+} |
+#endif |
+ |
#if defined(OS_WIN) |
void WebPluginDelegateProxy::OnSetWindowlessPumpEvent( |
HANDLE modal_loop_pump_messages_event) { |