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

Unified Diff: remoting/client/frame_consumer.h

Issue 1236663002: Allow shaped-desktop hosts to send shape only when it changes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix Pepper 2D renderer build Created 5 years, 5 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 | « no previous file | remoting/client/frame_consumer_proxy.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/client/frame_consumer.h
diff --git a/remoting/client/frame_consumer.h b/remoting/client/frame_consumer.h
index 0996332accd5353c80f61e725e2b024921e7ae27..ab6f16e4960a17a56c2d8a3ad25ef57e8f06d58f 100644
--- a/remoting/client/frame_consumer.h
+++ b/remoting/client/frame_consumer.h
@@ -26,19 +26,20 @@ class FrameConsumer {
FORMAT_RGBA, // Used for Android's Bitmap class.
};
- // Accepts a buffer to be painted to the screen. The buffer's dimensions and
- // relative position within the frame are specified by |clip_area|. Only
- // pixels falling within |region| and the current clipping area are painted.
- // The function assumes that the passed buffer was scaled to fit a window
- // having |view_size| dimensions.
+ // Paints the contents of |buffer| into the area of the view identified
+ // by |clip_area|. |view_size| specifies the full-frame dimensions to which
+ // the |buffer|/|clip_area| portion was scaled. Implementations may be
+ // optimized to only paint pixels within the intersection of |region| and
+ // |clip_area|. If |shape| is non-NULL then it specifies the complete shape
+ // of the frame, otherwise the frame is un-shaped.
//
- // N.B. Both |clip_area| and |region| are in output coordinates relative to
- // the frame.
+ // N.B. |clip_area|, |region| and |shape| should be provided in output view
+ // coordinates.
virtual void ApplyBuffer(const webrtc::DesktopSize& view_size,
const webrtc::DesktopRect& clip_area,
webrtc::DesktopFrame* buffer,
const webrtc::DesktopRegion& region,
- const webrtc::DesktopRegion& shape) = 0;
+ const webrtc::DesktopRegion* shape) = 0;
// Accepts a buffer that couldn't be used for drawing for any reason (shutdown
// is in progress, the view area has changed, etc.). The accepted buffer can
« no previous file with comments | « no previous file | remoting/client/frame_consumer_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698