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

Unified Diff: content/public/browser/render_widget_host_view_frame_subscriber.h

Issue 418283003: "Buttery Smooth" Tab Capture. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Un-inline some methods, plus REBASE. Created 6 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
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_mac.mm ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/public/browser/render_widget_host_view_frame_subscriber.h
diff --git a/content/public/browser/render_widget_host_view_frame_subscriber.h b/content/public/browser/render_widget_host_view_frame_subscriber.h
index 0b658595caf711cac5d267f99673871756331860..0b24ea1a9be252b5d974a700cf34c59d079a7aee 100644
--- a/content/public/browser/render_widget_host_view_frame_subscriber.h
+++ b/content/public/browser/render_widget_host_view_frame_subscriber.h
@@ -44,13 +44,14 @@ class RenderWidgetHostViewFrameSubscriber {
bool /* frame_captured */)> DeliverFrameCallback;
// Called when a new frame is going to be presented at time
- // |present_time|. Implementation can decide whether the current frame should
- // be captured or not.
+ // |present_time| with |damage_rect| being the region of the frame that has
+ // changed since the last frame. The implementation decides whether the
+ // current frame should be captured or not.
//
// Return true if the current frame should be captured. If so, |storage|
- // should will be set to hold an appropriately sized and allocated buffer
- // into which to copy the frame. The platform presenter will perform scaling
- // and color space conversion to fit into the output frame.
+ // will be set to hold an appropriately sized and allocated buffer into which
+ // to copy the frame. The platform presenter will perform scaling and color
+ // space conversion to fit into the output frame.
//
// Destination format is determined by |storage|, currently only
// media::VideoFrame::YV12 is supported. Platform layer will perform color
@@ -60,7 +61,8 @@ class RenderWidgetHostViewFrameSubscriber {
// platform layer to decide when to deliver a captured frame.
//
// Return false if the current frame should not be captured.
- virtual bool ShouldCaptureFrame(base::TimeTicks present_time,
+ virtual bool ShouldCaptureFrame(const gfx::Rect& damage_rect,
+ base::TimeTicks present_time,
scoped_refptr<media::VideoFrame>* storage,
DeliverFrameCallback* callback) = 0;
};
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_mac.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698