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

Unified Diff: cc/playback/raster_source.h

Issue 2160683003: Fix MultiPictureDraw issues with GpuImageDecodeController (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2785
Patch Set: Created 4 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 | « cc/layers/picture_layer_impl.cc ('k') | cc/playback/raster_source.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/playback/raster_source.h
diff --git a/cc/playback/raster_source.h b/cc/playback/raster_source.h
index c50c4a0f626a4bdf2e38864d3d910ccf65822b0e..e4da161c5382fb47f45fa74e80f49fd4e36883e4 100644
--- a/cc/playback/raster_source.h
+++ b/cc/playback/raster_source.h
@@ -116,7 +116,22 @@ class CC_EXPORT RasterSource : public base::RefCountedThreadSafe<RasterSource> {
// Image decode controller should be set once. Its lifetime has to exceed that
// of the raster source, since the raster source will access it during raster.
- void SetImageDecodeController(ImageDecodeController* image_decode_controller);
+ void set_image_decode_controller(
+ ImageDecodeController* image_decode_controller) {
+ DCHECK(image_decode_controller);
+ image_decode_controller_ = image_decode_controller;
+ }
+
+ // Returns the ImageDecodeController, currently only used by
+ // GpuRasterBufferProvider in order to create its own ImageHijackCanvas.
+ // Because of the MultiPictureDraw approach used by GPU raster, it does not
+ // integrate well with the use of the ImageHijackCanvas internal to this
+ // class. See gpu_raster_buffer_provider.cc for more information.
+ // TODO(crbug.com/628394): Redesign this to avoid exposing
+ // ImageDecodeController from the raster source.
+ ImageDecodeController* image_decode_controller() const {
+ return image_decode_controller_;
+ }
protected:
friend class base::RefCountedThreadSafe<RasterSource>;
« no previous file with comments | « cc/layers/picture_layer_impl.cc ('k') | cc/playback/raster_source.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698