| Index: content/renderer/browser_plugin/browser_plugin_manager_impl.cc
|
| diff --git a/content/renderer/browser_plugin/browser_plugin_manager_impl.cc b/content/renderer/browser_plugin/browser_plugin_manager_impl.cc
|
| index a9d9e4598d27fa40b7d865ffb5c0d50f6aef75ee..5e6fddf1f2e113a890b839807e9a75734584f20f 100644
|
| --- a/content/renderer/browser_plugin/browser_plugin_manager_impl.cc
|
| +++ b/content/renderer/browser_plugin/browser_plugin_manager_impl.cc
|
| @@ -15,6 +15,7 @@ namespace content {
|
| BrowserPluginManagerImpl::BrowserPluginManagerImpl(
|
| RenderViewImpl* render_view)
|
| : BrowserPluginManager(render_view) {
|
| + RegisterBrowserPluginMessages();
|
| }
|
|
|
| BrowserPluginManagerImpl::~BrowserPluginManagerImpl() {
|
| @@ -36,25 +37,20 @@ bool BrowserPluginManagerImpl::Send(IPC::Message* msg) {
|
|
|
| bool BrowserPluginManagerImpl::OnMessageReceived(
|
| const IPC::Message& message) {
|
| + if (browser_plugin_messages_.count(message.type()) > 0) {
|
| + int instance_id = 0;
|
| + PickleIterator iter(message);
|
| + bool success = iter.ReadInt(&instance_id);
|
| + DCHECK(success);
|
| + BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| + if (plugin && plugin->OnMessageReceived(message))
|
| + return true;
|
| + }
|
| +
|
| bool handled = true;
|
| IPC_BEGIN_MESSAGE_MAP(BrowserPluginManagerImpl, message)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_UpdateRect, OnUpdateRect)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_GuestGone, OnGuestGone)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_AdvanceFocus, OnAdvanceFocus)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_GuestContentWindowReady,
|
| - OnGuestContentWindowReady)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_ShouldAcceptTouchEvents,
|
| - OnShouldAcceptTouchEvents)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_LoadStart, OnLoadStart)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_LoadAbort, OnLoadAbort)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_LoadRedirect, OnLoadRedirect)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_LoadCommit, OnLoadCommit)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_LoadStop, OnLoadStop)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_SetCursor, OnSetCursor)
|
| IPC_MESSAGE_HANDLER(BrowserPluginMsg_PluginAtPositionRequest,
|
| OnPluginAtPositionRequest);
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_GuestUnresponsive, OnGuestUnresponsive)
|
| - IPC_MESSAGE_HANDLER(BrowserPluginMsg_GuestResponsive, OnGuestResponsive)
|
| IPC_MESSAGE_UNHANDLED(handled = false)
|
| IPC_END_MESSAGE_MAP()
|
| return handled;
|
| @@ -88,101 +84,20 @@ void BrowserPluginManagerImpl::OnPluginAtPositionRequest(
|
| local_position));
|
| }
|
|
|
| -void BrowserPluginManagerImpl::OnUpdateRect(
|
| - int instance_id,
|
| - int message_id,
|
| - const BrowserPluginMsg_UpdateRect_Params& params) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->UpdateRect(message_id, params);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnGuestGone(int instance_id,
|
| - int process_id,
|
| - int status) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->GuestGone(process_id, static_cast<base::TerminationStatus>(status));
|
| +void BrowserPluginManagerImpl::RegisterBrowserPluginMessages() {
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_UpdateRect::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_GuestGone::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_AdvanceFocus::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_GuestContentWindowReady::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_ShouldAcceptTouchEvents::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_LoadStart::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_LoadAbort::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_LoadRedirect::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_LoadCommit::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_LoadStop::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_SetCursor::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_GuestUnresponsive::ID);
|
| + browser_plugin_messages_.insert(BrowserPluginMsg_GuestResponsive::ID);
|
| }
|
|
|
| -void BrowserPluginManagerImpl::OnAdvanceFocus(int instance_id, bool reverse) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->AdvanceFocus(reverse);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnGuestContentWindowReady(int instance_id,
|
| - int guest_routing_id) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->GuestContentWindowReady(guest_routing_id);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnShouldAcceptTouchEvents(int instance_id,
|
| - bool accept) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->SetAcceptTouchEvents(accept);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnLoadStart(int instance_id,
|
| - const GURL& url,
|
| - bool is_top_level) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->LoadStart(url, is_top_level);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnLoadCommit(
|
| - int instance_id,
|
| - const BrowserPluginMsg_LoadCommit_Params& params) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->LoadCommit(params);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnLoadStop(int instance_id) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->LoadStop();
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnLoadAbort(int instance_id,
|
| - const GURL& url,
|
| - bool is_top_level,
|
| - const std::string& type) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->LoadAbort(url, is_top_level, type);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnLoadRedirect(int instance_id,
|
| - const GURL& old_url,
|
| - const GURL& new_url,
|
| - bool is_top_level) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->LoadRedirect(old_url, new_url, is_top_level);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnSetCursor(int instance_id,
|
| - const WebCursor& cursor) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->SetCursor(cursor);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnGuestUnresponsive(int instance_id,
|
| - int process_id) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->GuestUnresponsive(process_id);
|
| -}
|
| -
|
| -void BrowserPluginManagerImpl::OnGuestResponsive(int instance_id,
|
| - int process_id) {
|
| - BrowserPlugin* plugin = GetBrowserPlugin(instance_id);
|
| - if (plugin)
|
| - plugin->GuestResponsive(process_id);
|
| -}
|
| } // namespace content
|
|
|