Go to file
Mike Reed 749efb6ee2 Ensure Y->X ordering when building a region from a path
Our region-builder-blitter insists on being called in a Y->X sorted order,
which means (for example) if it is given a rect, then next blit call must
be below that rect.

However, we have helpers that blit rects "through" a region, and they iterate
through the region using Cliperator, which returns the minimum (mostly) number
of rects inside the region -- but these are not in strict Y->X order. Hence
the problem.

This CL avoids this by fixing it at the source. When we are asked to build a region
by drawing a path clipped to another region, we check if that clip is complex.
If it is, we first regionize the path against the clip's bounds (easy), and then
call a region-op to intersect that with the complex clip.

Bug: skia:7491
Change-Id: Ibf0a99e5bb38e369c4b263b0b07bfc04a572de63
Reviewed-on: https://skia-review.googlesource.com/113424
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-03-09 19:43:42 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Add GM configs that test rendering to a GL backend texture and render target 2018-03-09 16:32:10 +00:00
bin remove fetch-gn dependency on buildtools 2018-02-21 20:42:26 +00:00
debugger Revert "Revert "Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend."""""" 2018-02-03 01:59:59 +00:00
dm Add GPUSink getters to suppress unused field warnings in no gpu build. 2018-03-09 19:30:15 +00:00
docs work in imageinfo and phrase substitution 2018-03-05 18:48:15 +00:00
example Revert "Revert "Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend."""""" 2018-02-03 01:59:59 +00:00
experimental [skottie] Reduce parser verbosity 2018-03-07 22:34:20 +00:00
fuzz Fix a tiny typo 2018-03-01 14:52:04 +00:00
gm Make GrGpu::deleteTestingOnlyBackendTexture() take const GrBackendTexture& 2018-03-09 18:20:40 +00:00
gn Remove TLS glyph cache calls. 2018-03-09 19:32:22 +00:00
include Shim to enforce that canvas virtuals are overridden 2018-03-09 19:43:41 +00:00
infra Update SKP version 2018-03-09 17:18:10 +00:00
platform_tools Viewer/Amdroid: universal build, resources in APK 2018-03-06 22:52:10 +00:00
resources Avoid serializing to 'typ1' on Mac. 2018-03-09 15:03:20 +00:00
samplecode ccpr: Simplify triangle corners 2018-03-09 19:25:11 +00:00
site Reland "Reland "make SkJumper stages normal Skia code"" 2018-03-07 17:32:40 +00:00
src Ensure Y->X ordering when building a region from a path 2018-03-09 19:43:42 +00:00
tests Remove TLS glyph cache calls. 2018-03-09 19:32:22 +00:00
third_party Support pngs with incorrect CMF bytes 2018-02-28 21:46:03 +00:00
tools update tool to sniff images during deserialization 2018-03-09 19:12:50 +00:00
.clang-format Mark flatennable macros as block beginning/ending in .clang-format 2017-01-09 15:31:36 +00:00
.gitignore Ignore generated README.recipes.md 2017-10-26 18:07:27 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS Fix assert format string in GrContext_colorTypeSupportedAsImage test. 2018-02-26 17:02:38 +00:00
BUILD.gn Initial texture data is never flipped when uploaded. 2018-03-07 18:22:40 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00: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 Roll skia/third_party/externals/angle2/ e8a93c6ed..331404098 (1 commit) 2018-03-09 17:20:40 +00:00
Doxyfile Make the housekeeper upload doxygen to a newer bucket 2016-10-04 13:23:57 -07:00
LICENSE BUG=skia:5602 2016-09-02 11:19:34 -07:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py Presubmit that modified json files are valid json. 2018-02-12 16:32:12 +00:00
public.bzl Remove dm excludes from public.bzl. 2018-03-07 15:57:40 +00: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
whitespace.txt Test change 2018-02-15 17:46:19 +00:00

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

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