Index: cc/output/gl_renderer.cc |
diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc |
index d1cbec3dd608ad8022206e35561eb73e2d63e10e..3b5d138fb5c7be7fb93c0e3e1bedc4958b5e74c3 100644 |
--- a/cc/output/gl_renderer.cc |
+++ b/cc/output/gl_renderer.cc |
@@ -515,6 +515,7 @@ static inline SkBitmap ApplyFilters(GLRenderer* renderer, |
} |
static SkBitmap ApplyImageFilter(GLRenderer* renderer, |
+ gfx::Rect rect, |
danakj
2013/08/19 21:09:08
better variable name than the type of the variable
|
SkImageFilter* filter, |
ScopedResource* source_texture_resource) { |
if (!filter) |
@@ -581,6 +582,7 @@ static SkBitmap ApplyImageFilter(GLRenderer* renderer, |
SkPaint paint; |
paint.setImageFilter(filter); |
canvas.clear(SK_ColorTRANSPARENT); |
+ canvas.translate(SkFloatToScalar(rect.x()), SkFloatToScalar(rect.y())); |
canvas.drawSprite(source, 0, 0, &paint); |
// Flush skia context so that all the rendered stuff appears on the |
@@ -777,8 +779,8 @@ void GLRenderer::DrawRenderPassQuad(DrawingFrame* frame, |
// in the compositor. |
use_color_matrix = true; |
} else { |
- filter_bitmap = |
- ApplyImageFilter(this, quad->filter.get(), contents_texture); |
+ filter_bitmap = ApplyImageFilter( |
+ this, quad->rect, quad->filter.get(), contents_texture); |
} |
} else if (!quad->filters.IsEmpty()) { |
FilterOperations optimized_filters = |