Chromium Code Reviews| 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 f80ea2408fb818973ab2b97fe7ba93d554f18eb8..0d1653d1611ab6ce498f0aa54d1abff0e2cc07cf 100644 |
| --- a/content/port/browser/render_widget_host_view_port.h |
| +++ b/content/port/browser/render_widget_host_view_port.h |
| @@ -42,6 +42,7 @@ struct WebScreenInfo; |
| namespace content { |
| class BackingStore; |
| +class RenderWidgetHostViewFrameSubscriber; |
| class SmoothScrollGesture; |
| struct NativeWebKeyboardEvent; |
| @@ -188,6 +189,19 @@ class CONTENT_EXPORT RenderWidgetHostViewPort : public RenderWidgetHostView { |
| // IsSurfaceAvailableForCopy() and HasAcceleratedSurface(). |
| virtual bool CanCopyToVideoFrame() const = 0; |
| + // Begin subscribing for presentation events and captured frames. |
|
ncarter (slow)
2013/02/16 02:45:22
My familiarity with the render_(view|widget).* cod
|
| + // |subscriber| is now owned by this object, it will be called on the |
| + // presentation thread which might not be the UI thread. |
|
ncarter (slow)
2013/02/16 02:45:22
It feels somewhat unstructured, that the code to i
Alpha Left Google
2013/02/20 21:34:50
No we can't guarantee that we can make the decisio
|
| + // |
| + // TODO(hclam): Implement this API on all platforms. |
|
ncarter (slow)
2013/02/16 02:45:22
How does the user of this mechanism know whether B
Alpha Left Google
2013/02/20 21:34:50
I added CanSubscribeFrame().
|
| + virtual void BeginFrameSubscription( |
| + RenderWidgetHostViewFrameSubscriber* subscriber) {} |
| + |
| + // End subscribing for frame presentation events. |subscriber| will be |
| + // deleted after this call. |
| + virtual void EndFrameSubscription( |
| + RenderWidgetHostViewFrameSubscriber* subscriber) {} |
|
ncarter (slow)
2013/02/16 02:45:22
If ownership of |subscriber| passes to the RWHVP,
Alpha Left Google
2013/02/20 21:34:50
The ownership is transferred but WCVCD should keep
|
| + |
| // Called when accelerated compositing state changes. |
| virtual void OnAcceleratedCompositingStateChange() = 0; |
| // |params.window| and |params.surface_id| indicate which accelerated |