Go to file
senorblanco 87e066ee80 Change saveLayer() semantics to take unfiltered bounds.
For optimizing saveLayer() offscreens, it is useful to know the
bounds of the primitive being drawn. Currently, the bounds passed to
saveLayer() are filtered, which makes it difficult to know the original
bounds of the primitive. This CL changes the semantics to accept
unfiltered bounds. This actually simplifies the callsites too. In
order to result in the correct pixels being produced, we then call
computeFastBounds() inside clipRectBounds().

The old behaviour is wrapped in #ifdef SK_SAVE_LAYER_BOUNDS_ARE_FILTERED,
until we can update Chrome's callsites (see
https://codereview.chromium.org/1316243002/).

This change will affect the following GMs:
testimagefilters: saveLayer bounds no longer cause clipping
imagefiltersbase: slight pixel diffs
resizeimagefilter: slight pixel diffs on the "high quality" test case
imagefilterscropexpand: displacement results are now correct
filterfastbounds: slight pixel diffs
matriximagefilter: slight pixel diffs

BUG=skia:3194 skia:4526

Review URL: https://codereview.chromium.org/1304883004
2015-10-28 11:23:36 -07:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Refactor SkBitmapRegionDecoderInterface for Android 2015-10-27 12:50:25 -07:00
bin Make bin/c and bin/compare work on Windows. 2015-10-28 09:45:44 -07:00
cmake CMake: exclude SkOSLibrary_posix.cpp on Windows too. 2015-10-26 08:41:10 -07:00
debugger Get debugger compiling again 2015-10-26 09:28:12 -07:00
dm Add missing include for sleep(). 2015-10-28 08:56:41 -07:00
example Move functions from SkGr to SkGrPriv.h 2015-10-09 13:36:42 -07:00
experimental Add test with GLFW framework 2015-10-09 13:27:34 -07:00
forth Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm Create GLSL base class for ProgramDataManager 2015-10-28 07:26:40 -07:00
gyp skia: Add ANGLE support on Mac 2015-10-28 08:42:29 -07:00
include move reinterpret_cast into SK_PREFETCH 2015-10-28 09:52:20 -07:00
infra Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
platform_tools Fix visualbench exiting on startup on android 2015-10-26 12:00:42 -07:00
resources SkPDF: fall back on paths for unembeddable fonts. 2015-10-12 13:05:04 -07:00
samplecode Flush GrContext between benchmark draw loops 2015-10-26 13:45:29 -07:00
site Add docs on how to install iOS test tools 2015-10-16 11:47:37 -07:00
src Change saveLayer() semantics to take unfiltered bounds. 2015-10-28 11:23:36 -07:00
tests Make SkTextBlob::RunIterator public. 2015-10-27 14:01:05 -07:00
third_party Update Android FreeType version. 2015-10-27 08:39:39 -07:00
tools Make DMSrcSink fail fatally when decodeRegion() fails for BRDSrcs 2015-10-27 13:28:25 -07:00
.gitignore android/apps: Add CanvasProof App; 2015-09-23 12:40:34 -07:00
AUTHORS Optimize RGB16 blitV functions with NEON for ARM platform. 2015-07-15 07:07:30 -07:00
BUILD.public Remove SkJpegCodec.cpp from Google3 BUILD due to differing libjpeg_turbo versions. 2015-10-27 09:14:29 -07:00
codereview.settings Automatically add a docs preview link and NOTRY=true when there are only docs changes. 2015-02-26 10:16:13 -08:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS skia: Roll latest angle 2015-10-27 13:34:31 -07:00
Doxyfile Documentation: SkCanvas API 2015-05-19 10:21:29 -07:00
gyp_skia Support SKIA_OUT on Mac and ChromeOS 2015-05-04 08:04:28 -07:00
gyp_skia.py Roll gyp deps from 1765 to 1796. 2013-11-21 18:11:14 +00:00
LICENSE Include resources directory in google3 sync. 2015-10-20 13:00:48 -07:00
make.bat Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
make.py Fix make.py: BUILDTYPE 2015-08-05 11:30:28 -04:00
Makefile Remove experimental/PdfViewer 2015-08-04 14:08:44 -07:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py Automatically add TSAN bots to the CQ for changes affecting SkAtomics.h 2015-10-07 11:49:00 -07:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
skia.gyp Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
SKP_VERSION Update SKP version 2015-10-25 00:29:20 -07:00
whitespace.txt Whitespace change to test CQ waiting for l-g-t-m 2015-10-13 04:44:40 -07:00

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

See full details, and build instructions, at https://skia.org.