diff options
Diffstat (limited to 'chrome/browser/renderer_host/render_widget_host.h')
-rw-r--r-- | chrome/browser/renderer_host/render_widget_host.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host.h b/chrome/browser/renderer_host/render_widget_host.h index e96eae7..f1b402e 100644 --- a/chrome/browser/renderer_host/render_widget_host.h +++ b/chrome/browser/renderer_host/render_widget_host.h @@ -38,6 +38,7 @@ class RenderProcessHost; class RenderWidgetHostView; class RenderWidgetHostPaintingObserver; class TransportDIB; +class VideoLayer; class WebCursor; struct ViewHostMsg_ShowPopup_Params; struct ViewHostMsg_UpdateRect_Params; @@ -220,6 +221,9 @@ class RenderWidgetHost : public IPC::Channel::Listener, // renderer to send another paint. void DonePaintingToBackingStore(); + // Returns the video layer if it exists, NULL otherwise. + VideoLayer* const video_layer() { return video_layer_.get(); } + // Checks to see if we can give up focus to this widget through a JS call. virtual bool CanBlur() const { return true; } @@ -427,6 +431,9 @@ class RenderWidgetHost : public IPC::Channel::Listener, void OnMsgClose(); void OnMsgRequestMove(const gfx::Rect& pos); void OnMsgUpdateRect(const ViewHostMsg_UpdateRect_Params& params); + void OnMsgCreateVideo(const gfx::Size& size); + void OnMsgUpdateVideo(TransportDIB::Id bitmap, const gfx::Rect& bitmap_rect); + void OnMsgDestroyVideo(); void OnMsgInputEventAck(const IPC::Message& message); void OnMsgFocus(); void OnMsgBlur(); @@ -476,6 +483,12 @@ class RenderWidgetHost : public IPC::Channel::Listener, void ScrollBackingStoreRect(int dx, int dy, const gfx::Rect& clip_rect, const gfx::Size& view_size); + // Paints the entire given bitmap into the current video layer, if it exists. + // |bitmap_rect| specifies the destination size and absolute location of the + // bitmap on the backing store. + void PaintVideoLayer(TransportDIB::Id bitmap, + const gfx::Rect& bitmap_rect); + // Called by OnMsgInputEventAck() to process a keyboard event ack message. void ProcessKeyboardEventAck(int type, bool processed); @@ -613,6 +626,9 @@ class RenderWidgetHost : public IPC::Channel::Listener, // changed. bool suppress_next_char_events_; + // Optional video YUV layer for used for out-of-process compositing. + scoped_ptr<VideoLayer> video_layer_; + DISALLOW_COPY_AND_ASSIGN(RenderWidgetHost); }; |