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

Unified Diff: cc/resources/tile_manager.cc

Issue 454843002: cc: Do bitmap conversion for RasterBuffer in the worker thread. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 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
Index: cc/resources/tile_manager.cc
diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc
index 452d9b45ccfa5e65bdc444bdb3c3f36cc616f429..8e97c2024737ca266480b9a0757b6a05a170815a 100644
--- a/cc/resources/tile_manager.cc
+++ b/cc/resources/tile_manager.cc
@@ -93,6 +93,7 @@ class RasterTaskImpl : public RasterTask {
void AnalyzeAndRaster(PicturePileImpl* picture_pile) {
DCHECK(picture_pile);
DCHECK(canvas_);
+ DCHECK(canvas_->GetSkCanvas());
if (analyze_picture_) {
Analyze(picture_pile);
@@ -101,6 +102,8 @@ class RasterTaskImpl : public RasterTask {
}
Raster(picture_pile);
+
+ canvas_->Flush();
}
void Analyze(PicturePileImpl* picture_pile) {
@@ -141,7 +144,7 @@ class RasterTaskImpl : public RasterTask {
default:
NOTREACHED();
}
- canvas_->setDrawFilter(draw_filter.get());
+ canvas_->GetSkCanvas()->setDrawFilter(draw_filter.get());
base::TimeDelta prev_rasterize_time =
rendering_stats_->impl_thread_rendering_stats().rasterize_time;
@@ -154,7 +157,7 @@ class RasterTaskImpl : public RasterTask {
tile_resolution_ == HIGH_RESOLUTION ? rendering_stats_ : NULL;
DCHECK(picture_pile);
picture_pile->RasterToBitmap(
- canvas_, content_rect_, contents_scale_, stats);
+ canvas_->GetSkCanvas(), content_rect_, contents_scale_, stats);
if (rendering_stats_->record_rendering_stats()) {
base::TimeDelta current_rasterize_time =
@@ -180,7 +183,7 @@ class RasterTaskImpl : public RasterTask {
bool analyze_picture_;
RenderingStatsInstrumentation* rendering_stats_;
const base::Callback<void(const PicturePileImpl::Analysis&, bool)> reply_;
- SkCanvas* canvas_;
+ RasterCanvas* canvas_;
DISALLOW_COPY_AND_ASSIGN(RasterTaskImpl);
};

Powered by Google App Engine
This is Rietveld 408576698