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

Side by Side Diff: content/port/browser/render_widget_host_view_port.h

Issue 174323003: Expose locks for CopyFromCompositingSurface/CopyFromBackingStore API (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: reworded and added comments Created 6 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_PORT_BROWSER_RENDER_WIDGET_HOST_VIEW_PORT_H_ 5 #ifndef CONTENT_PORT_BROWSER_RENDER_WIDGET_HOST_VIEW_PORT_H_
6 #define CONTENT_PORT_BROWSER_RENDER_WIDGET_HOST_VIEW_PORT_H_ 6 #define CONTENT_PORT_BROWSER_RENDER_WIDGET_HOST_VIEW_PORT_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 // be initialized even on failure. 177 // be initialized even on failure.
178 // A smaller region than |src_subrect| may be copied if the underlying surface 178 // A smaller region than |src_subrect| may be copied if the underlying surface
179 // is smaller than |src_subrect|. 179 // is smaller than |src_subrect|.
180 // NOTE: |callback| is called asynchronously. 180 // NOTE: |callback| is called asynchronously.
181 virtual void CopyFromCompositingSurface( 181 virtual void CopyFromCompositingSurface(
182 const gfx::Rect& src_subrect, 182 const gfx::Rect& src_subrect,
183 const gfx::Size& dst_size, 183 const gfx::Size& dst_size,
184 const base::Callback<void(bool, const SkBitmap&)>& callback, 184 const base::Callback<void(bool, const SkBitmap&)>& callback,
185 const SkBitmap::Config config) = 0; 185 const SkBitmap::Config config) = 0;
186 186
187 // Instructs the view to not drop the surface even when the view is hidden.
188 virtual void LockSurfaceForCopy() = 0;
189 virtual void UnlockSurfaceForCopy() = 0;
190
187 // Copies a given subset of the compositing surface's content into a YV12 191 // Copies a given subset of the compositing surface's content into a YV12
188 // VideoFrame, and invokes a callback with a success/fail parameter. |target| 192 // VideoFrame, and invokes a callback with a success/fail parameter. |target|
189 // must contain an allocated, YV12 video frame of the intended size. If the 193 // must contain an allocated, YV12 video frame of the intended size. If the
190 // copy rectangle does not match |target|'s size, the copied content will be 194 // copy rectangle does not match |target|'s size, the copied content will be
191 // scaled and letterboxed with black borders. The copy will happen 195 // scaled and letterboxed with black borders. The copy will happen
192 // asynchronously. This operation will fail if there is no available 196 // asynchronously. This operation will fail if there is no available
193 // compositing surface. 197 // compositing surface.
194 virtual void CopyFromCompositingSurfaceToVideoFrame( 198 virtual void CopyFromCompositingSurfaceToVideoFrame(
195 const gfx::Rect& src_subrect, 199 const gfx::Rect& src_subrect,
196 const scoped_refptr<media::VideoFrame>& target, 200 const scoped_refptr<media::VideoFrame>& target,
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
346 350
347 // Returns an HWND that's given as the parent window for windowless Flash to 351 // Returns an HWND that's given as the parent window for windowless Flash to
348 // workaround crbug.com/301548. 352 // workaround crbug.com/301548.
349 virtual gfx::NativeViewId GetParentForWindowlessPlugin() const = 0; 353 virtual gfx::NativeViewId GetParentForWindowlessPlugin() const = 0;
350 #endif 354 #endif
351 }; 355 };
352 356
353 } // namespace content 357 } // namespace content
354 358
355 #endif // CONTENT_PORT_BROWSER_RENDER_WIDGET_HOST_VIEW_PORT_H_ 359 #endif // CONTENT_PORT_BROWSER_RENDER_WIDGET_HOST_VIEW_PORT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698