Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(288)

Unified Diff: content/browser/browser_plugin/browser_plugin_host_helper.h

Issue 10735010: 3D Compositing in <browser>, first draft. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Major changes to clean up deadlock & other issues Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/browser_plugin/browser_plugin_host_helper.h
diff --git a/content/browser/browser_plugin/browser_plugin_host_helper.h b/content/browser/browser_plugin/browser_plugin_host_helper.h
index cdcac5b7f9b4ddd95b09836c56b0522ff39058b8..df41e43ad9e0789314c536ef4f3e347a81284a47 100644
--- a/content/browser/browser_plugin/browser_plugin_host_helper.h
+++ b/content/browser/browser_plugin/browser_plugin_host_helper.h
@@ -8,6 +8,7 @@
#include <string>
#include "base/compiler_specific.h"
+#include "content/common/browser_plugin_info.h"
#include "content/public/browser/render_view_host_observer.h"
#include "ipc/ipc_channel_handle.h"
#include "ipc/ipc_sync_message.h"
@@ -19,6 +20,7 @@ namespace gfx {
class Size;
}
+struct BrowserPlugin_SwapInfo;
struct BrowserPluginHostMsg_ResizeGuest_Params;
struct ViewHostMsg_UpdateRect_Params;
@@ -34,15 +36,19 @@ class BrowserPluginHost;
class BrowserPluginHostHelper : public RenderViewHostObserver {
public:
BrowserPluginHostHelper(BrowserPluginHost* browser_plugin_host,
- RenderViewHost* render_view_host);
+ RenderViewHost* render_view_host,
+ const BrowserPluginHostMsg_Surface_Params& params);
virtual ~BrowserPluginHostHelper();
// Make it public for sync IPCs.
virtual bool Send(IPC::Message* message) OVERRIDE;
private:
- void OnNavigateOrCreateGuest(int instance_id,
- long long frame_id,
- const std::string& src);
+ void OnNavigateOrCreateGuest(
+ int instance_id,
+ long long frame_id,
+ const std::string& src,
+ const BrowserPluginHostMsg_Surface_Params& params);
+ void OnSwapBuffersACK(const BrowserPlugin_SwapInfo& info, uint32 sync_point);
void OnResizeGuest(int instance_id,
const BrowserPluginHostMsg_ResizeGuest_Params& params);
void OnUpdateRectACK(int instance_id,
@@ -65,6 +71,10 @@ class BrowserPluginHostHelper : public RenderViewHostObserver {
BrowserPluginHost* browser_plugin_host_;
+ BrowserPluginHostMsg_Surface_Params surface_params_;
scshunt 2012/08/12 01:42:45 Why are these being stored on both the Host and th
scshunt 2012/08/17 17:30:28 Answer: Because the host needs to store them to gi
+
+ friend class BrowserPluginCompositingDelegate;
+
DISALLOW_COPY_AND_ASSIGN(BrowserPluginHostHelper);
};

Powered by Google App Engine
This is Rietveld 408576698