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

Unified Diff: cc/output/software_renderer.cc

Issue 21154002: Add support for converting cc::FilterOperations into an SkImageFilter (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix cc_messages Created 7 years, 3 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/output/software_renderer.cc
diff --git a/cc/output/software_renderer.cc b/cc/output/software_renderer.cc
index 77c44eadc3d2e62c70ef9080d8bac02d47c4109a..1554aec67c415ab6d97d4584986c01233c382de1 100644
--- a/cc/output/software_renderer.cc
+++ b/cc/output/software_renderer.cc
@@ -11,6 +11,7 @@
#include "cc/output/compositor_frame_metadata.h"
#include "cc/output/copy_output_request.h"
#include "cc/output/output_surface.h"
+#include "cc/output/render_surface_filters.h"
#include "cc/output/software_output_device.h"
#include "cc/quads/checkerboard_draw_quad.h"
#include "cc/quads/debug_border_draw_quad.h"
@@ -433,9 +434,11 @@ void SoftwareRenderer::DrawRenderPassQuad(const DrawingFrame* frame,
shader->setLocalMatrix(content_mat);
current_paint_.setShader(shader.get());
- SkImageFilter* filter = quad->filter.get();
- if (filter)
- current_paint_.setImageFilter(filter);
+ if (quad->filters.HasReferenceFilter()) {
ajuma 2013/09/09 17:35:36 I'm checking for a reference filter here just to m
Stephen White 2013/09/09 18:51:01 IIRC, the software renderer only ever used setFilt
danakj 2013/09/09 22:04:50 I think you should drop this if statement. It's no
ajuma 2013/09/10 21:17:58 Done.
danakj 2013/09/10 21:22:38 Do you know how the foreground filter test fails?
+ skia::RefPtr<SkImageFilter> filter = RenderSurfaceFilters::BuildImageFilter(
+ quad->filters, content_texture->size());
+ current_paint_.setImageFilter(filter.get());
+ }
if (quad->mask_resource_id) {
ResourceProvider::ScopedReadLockSoftware mask_lock(resource_provider_,

Powered by Google App Engine
This is Rietveld 408576698