Index: content/port/browser/render_widget_host_view_port.h |
diff --git a/content/port/browser/render_widget_host_view_port.h b/content/port/browser/render_widget_host_view_port.h |
index 05470af40017ecdf764b275a8d176d5a8e7e6f61..8907d1da25b06bb62a3093853dee763815951fc0 100644 |
--- a/content/port/browser/render_widget_host_view_port.h |
+++ b/content/port/browser/render_widget_host_view_port.h |
@@ -47,6 +47,7 @@ struct WebScreenInfo; |
namespace content { |
class BackingStore; |
+class RenderWidgetHostViewFrameSubscriber; |
class SmoothScrollGesture; |
struct NativeWebKeyboardEvent; |
@@ -198,6 +199,19 @@ class CONTENT_EXPORT RenderWidgetHostViewPort : public RenderWidgetHostView, |
// IsSurfaceAvailableForCopy() and HasAcceleratedSurface(). |
virtual bool CanCopyToVideoFrame() const = 0; |
+ // Return true if frame subscription is supported on this platform. |
+ virtual bool CanSubscribeFrame() const = 0; |
+ |
+ // Begin subscribing for presentation events and captured frames. |
+ // |subscriber| is now owned by this object, it will be called only on the |
+ // UI thread. |
+ virtual void BeginFrameSubscription( |
+ RenderWidgetHostViewFrameSubscriber* subscriber) = 0; |
+ |
+ // End subscribing for frame presentation events. FrameSubscriber will be |
+ // deleted after this call. |
+ virtual void EndFrameSubscription() = 0; |
+ |
// Called when accelerated compositing state changes. |
virtual void OnAcceleratedCompositingStateChange() = 0; |
// |params.window| and |params.surface_id| indicate which accelerated |