Index: content/browser/renderer_host/render_widget_host_impl.h |
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h |
index 65fa860df34c83ce8756c018e0a420fcf8e352fb..47e65e04aad1b72e88df14571c4d3534fcb23837 100644 |
--- a/content/browser/renderer_host/render_widget_host_impl.h |
+++ b/content/browser/renderer_host/render_widget_host_impl.h |
@@ -192,6 +192,11 @@ class CONTENT_EXPORT RenderWidgetHostImpl |
virtual void AccessibilityHitTest(const gfx::Point& point) OVERRIDE; |
virtual void AccessibilityFatalError() OVERRIDE; |
+ // Forces redraw in the renderer and when the update reaches the browser |
+ // grabs snapshot from the compositor. Returns PNG-encoded snapshot. |
+ void GetSnapshotFromBrowser( |
+ const base::Callback<void(const unsigned char*,size_t)> callback); |
+ |
const NativeWebKeyboardEvent* GetLastKeyboardEvent() const; |
// Notification that the screen info has changed. |
@@ -693,8 +698,18 @@ class CONTENT_EXPORT RenderWidgetHostImpl |
// which may get in recursive loops). |
void DelayedAutoResized(); |
+ void WindowOldSnapshotReachedScreen(int snapshot_id); |
+ |
void WindowSnapshotReachedScreen(int snapshot_id); |
+ void OnSnapshotDataReceived(int snapshot_id, |
+ const unsigned char* png, |
+ size_t size); |
+ |
+ void OnSnapshotDataReceivedAsync( |
+ int snapshot_id, |
+ scoped_refptr<base::RefCountedBytes> png_data); |
+ |
// Send a message to the renderer process to change the accessibility mode. |
void SetAccessibilityMode(AccessibilityMode AccessibilityMode); |
@@ -862,6 +877,11 @@ class CONTENT_EXPORT RenderWidgetHostImpl |
int64 last_input_number_; |
+ int next_browser_snapshot_id_; |
+ typedef std::map<int, |
+ base::Callback<void(const unsigned char*, size_t)> > PendingSnapshotMap; |
+ PendingSnapshotMap pending_browser_snapshots_; |
+ |
DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostImpl); |
}; |