Go to file
senorblanco@chromium.org 6776b82d46 Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway.
To do this, this patch changes the "offset/loc" parameter in filterImage() / onFilterImage() from an inout-param to an out-param only, so that the calling filter can know how much the input filter wants its result offset (and doesn't include the original primitive position). This offset can then be applied to the current filter's crop rect. (I've renamed the parameter "offset" in all cases to make this clear.) This makes the call sites in SkCanvas/SkGpuDevice responsible for applying the resulting offset to the primitive's position, which is actually a fairly small change.

This change also fixes SkTileImageFilter and SkOffsetImageFilter to correctly handle an input offset, which they weren't before. This required modifying the GM's, since they assumed the broken behaviour.

NOTE: this will require rebaselining the imagefiltersgraph test, since it has a new test case.

NOTE: this will "break" the Blink layout tests css3/filters/effect-reference-subregion-chained-hw.html and css3/filters/effect-reference-subregion-hw.html, but it actually makes them give correct results. It should be suppressed on the skia roll, and I'll rebaseline it.

R=reed@google.com

Review URL: https://codereview.chromium.org/112803004

git-svn-id: http://skia.googlecode.com/svn/trunk@12895 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-03 21:48:22 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Sanitizing source files in Housekeeper-Nightly 2014-01-02 07:01:35 +00:00
debugger deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients 2013-12-17 19:22:07 +00:00
dm Make tests output spin on the same line by default. 2014-01-02 16:19:53 +00:00
expectations Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway. 2014-01-03 21:48:22 +00:00
experimental Allow multiple concurrent timers. 2013-12-20 15:56:52 +00:00
forth Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway. 2014-01-03 21:48:22 +00:00
gyp Add SkPreConfig.h to core.gypi 2014-01-03 17:25:52 +00:00
include Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway. 2014-01-03 21:48:22 +00:00
platform_tools Support MSAA4 and (non-ES) OpenGL in Android SampleApp 2013-12-10 20:37:41 +00:00
resources Added five small images to the resources/encoding. 2013-12-17 17:40:13 +00:00
samplecode Add Options to SkDecodingImageGenerator, simplify API. 2014-01-02 13:15:13 +00:00
src Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway. 2014-01-03 21:48:22 +00:00
tests Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway. 2014-01-03 21:48:22 +00:00
third_party Remove the comments settings for vim tab width and expansion variables. 2013-12-02 22:23:03 +00:00
tools take 2: create simple 'skpmaker' tool to generate SKP files for testing 2014-01-02 19:42:15 +00:00
trybots_to_run/chrome Deleting the hardcoded list of compile bots in trybots_to_run. 2013-04-09 11:59:42 +00:00
.gitignore Add a canvas object with drawRect() and inval(). 2013-12-10 14:13:03 +00:00
codereview.settings Removing blank lines from codereview.settings. 2013-02-26 16:01:21 +00:00
DEPS Try another GYP DEPS 2013-12-12 20:55:00 +00:00
Doxyfile Pointing to http://skia-autogen.googlecode.com/svn/docs/html/index.html in Doxyfile 2012-07-03 11:35:07 +00:00
gyp_skia Fix ninja build on Android 2013-10-01 15:31:54 +00:00
gyp_skia.py Roll gyp deps from 1765 to 1796. 2013-11-21 18:11:14 +00:00
LICENSE Manually update copyright notices in files that defied the automated process 2011-07-28 14:24:55 +00:00
make.bat Make make.bat and gyp_skia work with VS 2012. 2013-05-07 19:31:20 +00:00
make.py Use SKIA_OUT variable in make.py 2013-07-23 15:45:50 +00:00
Makefile pathops work in progress 2013-11-01 17:36:03 +00:00
Makefile.old Replace GR_*_BUILD by their SK_BUILD_FOR_* equivalents. 2013-09-25 20:57:51 +00:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py If any change is made to the public API then make sure there is an LGTM from an owner. 2013-08-12 14:51:20 +00:00
README whitespace commit to trigger buildbot 2011-07-15 14:11:58 +00:00
README.chromium add root files from chrome 2013-08-13 19:11:15 +00:00
skia.gyp Remove the comments settings for vim tab width and expansion variables. 2013-12-02 22:23:03 +00:00
whitespace.txt Refreshed SKPs to version 17. Triggering rebuilds. 2013-12-16 17:14:02 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at http://code.google.com/p/skia/wiki/DocRoot