Index: content/renderer/child_frame_compositing_helper.h |
diff --git a/content/renderer/child_frame_compositing_helper.h b/content/renderer/child_frame_compositing_helper.h |
index 0700d9cc24f6f57195c730be6e1a0225ececae59..dd822c0cf324cb743ced44b1e0982d30de7b4f56 100644 |
--- a/content/renderer/child_frame_compositing_helper.h |
+++ b/content/renderer/child_frame_compositing_helper.h |
@@ -20,9 +20,13 @@ class SharedMemory; |
} |
namespace cc { |
+struct SurfaceId; |
+struct SurfaceSequence; |
+ |
class CompositorFrame; |
class Layer; |
class SolidColorLayer; |
+class SurfaceLayer; |
class DelegatedFrameProvider; |
class DelegatedFrameResourceCollection; |
class DelegatedRendererLayer; |
@@ -66,6 +70,10 @@ class CONTENT_EXPORT ChildFrameCompositingHelper |
uint32 output_surface_id, |
int host_id, |
base::SharedMemoryHandle handle); |
+ void OnSetSurface(const cc::SurfaceId& surface_id, |
+ const gfx::Size& frame_size, |
+ float scale_factor, |
+ const cc::SurfaceSequence& sequence); |
void UpdateVisibility(bool); |
void ChildFrameGone(); |
@@ -98,6 +106,15 @@ class CONTENT_EXPORT ChildFrameCompositingHelper |
float device_scale_factor, |
cc::Layer* layer); |
void SendReturnedDelegatedResources(); |
+ static void SatisfyCallback(base::WeakPtr<ChildFrameCompositingHelper> helper, |
+ cc::SurfaceSequence sequence); |
+ static void RequireCallback(base::WeakPtr<ChildFrameCompositingHelper> helper, |
+ cc::SurfaceId id, |
+ cc::SurfaceSequence sequence); |
+ |
+ base::WeakPtr<ChildFrameCompositingHelper> GetWeakPtr() { |
+ return weak_factory_.GetWeakPtr(); |
+ } |
int host_routing_id_; |
int last_route_id_; |
@@ -117,11 +134,16 @@ class CONTENT_EXPORT ChildFrameCompositingHelper |
scoped_refptr<cc::DelegatedFrameResourceCollection> resource_collection_; |
scoped_refptr<cc::DelegatedFrameProvider> frame_provider_; |
+ // For cc::Surface support. |
+ scoped_refptr<cc::SurfaceLayer> surface_layer_; |
+ |
scoped_refptr<cc::SolidColorLayer> background_layer_; |
scoped_refptr<cc::DelegatedRendererLayer> delegated_layer_; |
scoped_ptr<blink::WebLayer> web_layer_; |
blink::WebFrame* frame_; |
+ base::WeakPtrFactory<ChildFrameCompositingHelper> weak_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(ChildFrameCompositingHelper); |
}; |