summaryrefslogtreecommitdiffstats
path: root/content/common/browser_plugin/browser_plugin_messages.h
diff options
context:
space:
mode:
authorkenrb@chromium.org <kenrb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-03 22:21:55 +0000
committerkenrb@chromium.org <kenrb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-03 22:21:55 +0000
commit95d3182359968c2ede57e70e05b80d93ccdf2bf5 (patch)
tree896a720387bb30a39756d151575049a13a8e652a /content/common/browser_plugin/browser_plugin_messages.h
parent9e9ae7296cfed7bfc612b0e3eeef7ad0c936b1ba (diff)
downloadchromium_src-95d3182359968c2ede57e70e05b80d93ccdf2bf5.zip
chromium_src-95d3182359968c2ede57e70e05b80d93ccdf2bf5.tar.gz
chromium_src-95d3182359968c2ede57e70e05b80d93ccdf2bf5.tar.bz2
Adding RenderWidgetHostViewChildFrame for OOPIF view.
RenderWidgetHostViewChildFrame becomes the view class for child frames being rendered in a different process from their parent. CrossProcessFrameConnector is a supporting class for that, encapsulating state specific to the parent/child frame relationship. RenderWidgetHostViewGuest is made a subclass of RenderWidgetHostViewChildFrame in order to keep them synchronized. Gradually we will move all functionality from RWHVGuest to RWHVChildFrame and then get rid of RWHVGuest altogether. TBR=sadrul BUG=325803 Review URL: https://codereview.chromium.org/100473010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242942 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/common/browser_plugin/browser_plugin_messages.h')
-rw-r--r--content/common/browser_plugin/browser_plugin_messages.h55
1 files changed, 20 insertions, 35 deletions
diff --git a/content/common/browser_plugin/browser_plugin_messages.h b/content/common/browser_plugin/browser_plugin_messages.h
index c85b229..be34c7b 100644
--- a/content/common/browser_plugin/browser_plugin_messages.h
+++ b/content/common/browser_plugin/browser_plugin_messages.h
@@ -15,6 +15,7 @@
#include "content/common/content_export.h"
#include "content/common/content_param_traits.h"
#include "content/common/edit_command.h"
+#include "content/common/frame_param_macros.h"
#include "content/public/common/browser_plugin_permission_type.h"
#include "content/public/common/common_param_traits.h"
#include "content/public/common/drop_data.h"
@@ -85,14 +86,6 @@ IPC_STRUCT_BEGIN(BrowserPluginMsg_Attach_ACK_Params)
IPC_STRUCT_MEMBER(std::string, name)
IPC_STRUCT_END()
-IPC_STRUCT_BEGIN(BrowserPluginMsg_BuffersSwapped_Params)
- IPC_STRUCT_MEMBER(gfx::Size, size)
- IPC_STRUCT_MEMBER(gfx::Rect, damage_rect)
- IPC_STRUCT_MEMBER(std::string, mailbox_name)
- IPC_STRUCT_MEMBER(int, route_id)
- IPC_STRUCT_MEMBER(int, host_id)
-IPC_STRUCT_END()
-
IPC_STRUCT_BEGIN(BrowserPluginMsg_UpdateRect_Params)
// The sequence number of the damage buffer used by the browser process.
IPC_STRUCT_MEMBER(uint32, damage_buffer_sequence_id)
@@ -228,29 +221,11 @@ IPC_MESSAGE_ROUTED2(BrowserPluginHostMsg_NavigateGuest,
int /* instance_id*/,
std::string /* src */)
-// Acknowledge that we presented a HW buffer and provide a sync point
-// to specify the location in the command stream when the compositor
-// is no longer using it.
-IPC_MESSAGE_ROUTED5(BrowserPluginHostMsg_BuffersSwappedACK,
- int /* instance_id */,
- int /* route_id */,
- int /* gpu_host_id */,
- std::string /* mailbox_name */,
- uint32 /* sync_point */)
-
IPC_MESSAGE_ROUTED3(BrowserPluginHostMsg_CopyFromCompositingSurfaceAck,
int /* instance_id */,
int /* request_id */,
SkBitmap);
-// Acknowledge that we presented an ubercomp frame.
-IPC_MESSAGE_ROUTED5(BrowserPluginHostMsg_CompositorFrameACK,
- int /* instance_id */,
- int /* route_id */,
- uint32 /* output_surface_id */,
- int /* renderer_host_id */,
- cc::CompositorFrameAck /* ack */)
-
// Notify the guest renderer that some resources given to the embededer
// are not used any more.
IPC_MESSAGE_ROUTED5(BrowserPluginHostMsg_ReclaimCompositorResources,
@@ -389,21 +364,31 @@ IPC_MESSAGE_CONTROL2(BrowserPluginMsg_UpdatedName,
std::string /* name */)
// Guest renders into an FBO with textures provided by the embedder.
-// When HW accelerated buffers are swapped in the guest, the message
-// is forwarded to the embedder to notify it of a new texture
-// available for compositing.
+// BrowserPlugin shares mostly the same logic as out-of-process RenderFrames but
+// because BrowserPlugins implement custom a second level of routing logic,
+// the IPCs need to be annotated with an extra instance_id. These messages
+// provide that extra id.
IPC_MESSAGE_CONTROL2(BrowserPluginMsg_BuffersSwapped,
int /* instance_id */,
- BrowserPluginMsg_BuffersSwapped_Params)
+ FrameMsg_BuffersSwapped_Params /* params */)
-IPC_MESSAGE_CONTROL5(BrowserPluginMsg_CompositorFrameSwapped,
+IPC_MESSAGE_CONTROL2(BrowserPluginMsg_CompositorFrameSwapped,
int /* instance_id */,
- cc::CompositorFrame /* frame */,
- int /* route_id */,
- uint32 /* output_surface_id */,
- int /* renderer_host_id */)
+ FrameMsg_CompositorFrameSwapped_Params /* params */)
// Forwards a PointerLock Unlock request to the BrowserPlugin.
IPC_MESSAGE_CONTROL2(BrowserPluginMsg_SetMouseLock,
int /* instance_id */,
bool /* enable */)
+
+// See comment about BrowserPluginMsg_BuffersSwapped and
+// BrowserPluginMsg_CompositorFrameSwapped for how these related
+// to the FrameHostMsg variants.
+IPC_MESSAGE_ROUTED2(BrowserPluginHostMsg_BuffersSwappedACK,
+ int /* instance_id */,
+ FrameHostMsg_BuffersSwappedACK_Params /* params */)
+
+// Acknowledge that we presented an ubercomp frame.
+IPC_MESSAGE_ROUTED2(BrowserPluginHostMsg_CompositorFrameSwappedACK,
+ int /* instance_id */,
+ FrameHostMsg_CompositorFrameSwappedACK_Params /* params */)