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

Unified Diff: content/port/browser/render_widget_host_view_port.h

Issue 12277023: Define frame subscription interface and implementation on Mac (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: no change Created 7 years, 10 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/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

Powered by Google App Engine
This is Rietveld 408576698