Commit Graph

25569 Commits

Author SHA1 Message Date
Joe Gregorio
87da4efd63 docs: Use the new floating ment on skpaint.md
Screenshot:
  https://screenshot.googleplex.com/C3E0hpuNwdu.png
  https://screenshot.googleplex.com/vdfQMRc24Nv.png

BUG=skia:

NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=5757

Change-Id: I00b1bb01cab05592d19f020f3190576bf7907aa2
Reviewed-on: https://skia-review.googlesource.com/5757
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2016-12-09 16:43:56 +00:00
Hal Canary
3489b2b727 SkImageEncoder::* going away
Approval from https://review.skia.org/5006
TBR=reed@google.com

Change-Id: Ib5fb1b624594598e2316f9247069ecd207d7a974
Reviewed-on: https://skia-review.googlesource.com/5751
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2016-12-09 16:13:42 +00:00
Florin Malita
7d529881c4 [SVGDom] Clipped clipPath support
ClipPaths can be clipped too, e.g.:

  <clipPath id="clip1" clip-path="url(#clip2)">...</clipPath>

Since we're not really drawing clips but resolving their geometry,
asPath() needs to take composed clipping into account (and intersect as
needed).

R=reed@google.com,robertphillips@google.com,stephana@google.com

Change-Id: I25959e22fe50f72042147cfe6b416b6b9ac20cd4
Reviewed-on: https://skia-review.googlesource.com/5720
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2016-12-09 16:06:25 +00:00
Mike Klein
67702f6322 update Win/Android toolchain setup after rolling GN
The new GN doesn't like "ar = ar + ...", etc.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-Clang-arm64-Release-Android

Change-Id: Ib131ee367c4af144f8ffb8562fc26b67675e4f45
Reviewed-on: https://skia-review.googlesource.com/5726
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-09 16:01:58 +00:00
Derek Sollenberger
923c082133 Don't compile the Skia tools for PDK builds.
Change-Id: I9d64a065bf05d76e131b2d0ab73d136ebbae263f
Reviewed-on: https://skia-review.googlesource.com/5746
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2016-12-09 15:31:40 +00:00
Hal Canary
a2ca8ed771 Commit Queue: Add NoGPU build bot.
BUG=skia:6040

Change-Id: Iaf0684b844234c6331f6ca8d97769abf566c18d7
Reviewed-on: https://skia-review.googlesource.com/5749
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2016-12-09 15:29:55 +00:00
Leon Scroggins III
4993b95f53 Do not create SkGifCodec if true size is not known
If there is enough data in the stream to read the reported canvas size,
but not enough to read the first image's header, we do not know the
true canvas size, since we may expand it to fit the first frame. In
that case, return nullptr from NewFromStream.

Add a test.

SkGifCodec.cpp:
Correct a comment - parse returns false if there is a fatal error.
parse() returning true does not guarantee that the size was found.
Instead of checking the width and height, check to see whether the
first frame exists and has its header defined. If not, we do not yet
know the true canvas size. Assert that the canvas size is non-zero,
which is a fatal error from parse.

SkGifImageReader.cpp:
Move the code to set the header defined before the SkGIFSizeQuery exit
condition. This allows SkGifCodec to check the first frame's header to
determine whether the size is known.

GifTest.cpp:
Add a test which truncates the file just before the image header (and
after the global header). Prior to the other changes, this would create
an SkCodec. For an image that needs its canvas size expanded, the
SkCodec would have an incorrect size.

CodecPartialTest.cpp:
randPixels.gif now needs more than half of its data to create an
SkCodec, so set a minimum for test_partial.

Change-Id: I40482f524128b2f1fe59b8f27dd64c7cbe793079
Reviewed-on: https://skia-review.googlesource.com/5701
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2016-12-09 15:04:06 +00:00
Robert Phillips
92a895e663 Revert "Revert "Add antialiasing to SkDropShadowImageFilter's shadow draw""
This reverts commit 45aac57ac6.

Reason for revert:

Pixel test suppression has landed in Chrome:
https://codereview.chromium.org/2559213002 (Add suppression for GPU Pixel test in preparation for Skia CL)

Original change's description:
> Revert "Add antialiasing to SkDropShadowImageFilter's shadow draw"
> 
> This reverts commit 78e8165ec3.
> 
> Reason for revert: Chrome pixel test
> 
> Original change's description:
> > Add antialiasing to SkDropShadowImageFilter's shadow draw
> > 
> > A BW draw in the SkDropShadowImageFilter can lead to unexpected popping of the shadow when the dest rect lies on half pixel boundaries.
> > 
> > Change-Id: Ibc59dacc79bca8955981ec2889e79facd7d2de83
> > Reviewed-on: https://skia-review.googlesource.com/5669
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
> > 
> 
> TBR=bsalomon@google.com,robertphillips@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: I0b0073cd8d9f1502daaa452c2153af029c11e52a
> Reviewed-on: https://skia-review.googlesource.com/5652
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I7d844c486fd6db57d3df60a32c12699f2d85ad16
Reviewed-on: https://skia-review.googlesource.com/5747
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2016-12-09 14:39:48 +00:00
Mike Reed
c1f7774e8d Revert[2] "remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS"
This reverts commit a129dfef2a.

BUG=skia:

Change-Id: I717de6e5fcd4516aa684b014b1414b0f82ac2b91
Reviewed-on: https://skia-review.googlesource.com/5722
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2016-12-09 14:33:41 +00:00
Mike Klein
374e04acfa Roll GN
Mostly to get
    5d7f4ce [GN] Fix generate Xcode project for macOS to work with Xcode 8.

After this lands, gclient sync && python bin/fetch-gn to get the new GN.

Change-Id: I3e1a186996b1db69ef767922a5b9efff173b950c
Reviewed-on: https://skia-review.googlesource.com/5723
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-09 14:30:12 +00:00
Mike Reed
a129dfef2a Revert "remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS"
This reverts commit 8e7432b7f9.

Reason for revert: <INSERT REASONING HERE>

external/skia/bench/../tools/android/SkAndroidSDKCanvas.h:103:36: error: C++ requires a type specifier for all declarations
    void onClipRect(const SkRect&, ClipOp, ClipEdgeStyle) override;

Original change's description:
> remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS
> 
> 
> switch over to SkClipOps now that SK_SUPPORT_LEGACY_CLIP_REGIONOPS is gone
> 
> BUG=skia:
> 
> Change-Id: Ifdc8b3746d508348a40cc009a4e529a1cb3c405d
> Reviewed-on: https://skia-review.googlesource.com/5714
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> 

TBR=reed@google.com,reviews@skia.org
BUG=skia:
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: If26ea91d7464615e43c1d3d2f726e337ff56b55c
Reviewed-on: https://skia-review.googlesource.com/5721
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-12-09 13:14:41 +00:00
Herb Derby
76073c1104 Add the ability to use different mallocs.
gn gen --args='malloc="tcmalloc"'
gn gen --args='malloc="jemalloc"'

or if the library is in a non-standard directory
gn gen --args='malloc="tcmalloc" extra_ldflags="-L<path-to-library>"'

Change-Id: Icacd837d11392a1971f298ccddd69a5a6781f6cf
Reviewed-on: https://skia-review.googlesource.com/5629
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-09 01:21:28 +00:00
Cary Clark
59ed482af7 fix fuzzers
Two crashes and a hang. Abort and return false
in these cases.

TBR=kjlubick@google.com
BUG=skia:5983

Change-Id: I41ac3e56d47ee423b634b2f4886085b9caada76b
Reviewed-on: https://skia-review.googlesource.com/5716
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2016-12-08 22:22:12 +00:00
Mike Reed
8e7432b7f9 remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS
switch over to SkClipOps now that SK_SUPPORT_LEGACY_CLIP_REGIONOPS is gone

BUG=skia:

Change-Id: Ifdc8b3746d508348a40cc009a4e529a1cb3c405d
Reviewed-on: https://skia-review.googlesource.com/5714
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-12-08 21:45:27 +00:00
Joe Gregorio
6a4cdb6ba9 Remove documentation about emboss.
BUG=skia:

NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=5708

Change-Id: Iac133df3778061509f5754aa6a742cebc2ab6ba6
Reviewed-on: https://skia-review.googlesource.com/5708
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2016-12-08 21:07:46 +00:00
Cary Clark
7eb01e00b1 simplify bug
The path contains a cubic with a very tight curve.
Split the cubic into pieces so that the individual
curves are better behaved.

Use both inflections and max curvature to 
potentially split cubics. Since this may require
a bit of work, preflight to ignore cubics that
monotonically change in x and y.

Only one of the three tests referred to by the bug
below repro'd. Use path.dumpHex() instead of 
path.dump() to capture the crashing data.

TBR=reed@google.com
BUG=skia:6041

Change-Id: I29a264f87242cacc7c421e7685b90aca81621c74
Reviewed-on: https://skia-review.googlesource.com/5702
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2016-12-08 20:29:37 +00:00
Mike Reed
9bbfb65760 remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS flag
BUG=skia:

Change-Id: I57871d008d3e630369edcef5473a1f1d1f0c0822
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/5715
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2016-12-08 20:06:48 +00:00
Mike Reed
df8599ac24 remove SK_SUPPORT_LEGACY_REFENCODEDDATA_NOCTX flag
BUG=skia:

Change-Id: I51b7778db8b596b2633b6be9488af984cee2af70
Reviewed-on: https://skia-review.googlesource.com/5713
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2016-12-08 19:25:49 +00:00
raftias
fc6d9e9540 Removed non-Identity matrix in non-PCSXYZ Input check for ICC profiles
The presence seems to be disallowed in the specs (10.8/10.9), but two
test images on the ICC website have them, and fail if we abort. Replaced
the failure with a print warning.

BUG=skia:

Change-Id: I463f1a8861eaa0eb62081c3213017dba9012c890
Reviewed-on: https://skia-review.googlesource.com/5658
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Robert Aftias <raftias@google.com>
2016-12-08 18:09:16 +00:00
Brian Salomon
419d81eed4 Revert "Remove antialiasing control from GrPaint."
This reverts commit 9f549358b3.

Reason for revert: hitting asserts

Change-Id: I542d34edc05ecf72b7646263f25736a0950c78e7
Reviewed-on: https://skia-review.googlesource.com/5707
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2016-12-08 17:11:46 +00:00
Mike Klein
a92c383e2f libviewer.so on Android, delete hello_skia_app
This spins off parts of 5620 to bake while we work through how to do the rest of libviewer.so -> viewer.apk.

Change-Id: I1cbf135cc952eeb7593e80a5a752dcadaa2dbb00
Reviewed-on: https://skia-review.googlesource.com/5656
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-08 16:35:25 +00:00
Brian Salomon
9f549358b3 Remove antialiasing control from GrPaint.
This adds an additional param (of new enum type GrAA) to draws that can antialias and a new enum GrAAType to indicate the AA technique (none, fragment shader computed coverage, msaa).

Some GMs change due to this:
1) In some places we weren't disabling MSAA when the draw was supposed to be unantialiased.
2) Some bounding rect draws that use GrFragmentProcessors were unnecessarily turning on antialiasing, by disabling it a very small number of pixel LSBs change.

Change-Id: I7d8d8793dda70bcd373d09055beb9949c1a8a4d0
Reviewed-on: https://skia-review.googlesource.com/5608
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2016-12-08 16:27:44 +00:00
Mike Klein
978ccebd8a On mips64el, use -B instead of linking .o manually.
These .o are only appropriate for linking executables; others would be used if we link an .so.

-B turns out to be the flag we really wanted here anyway, adding that directory to the search path for all these .o files, letting Clang pick the right one.  The existing comment is now correct for both the lib_dirs and ldflags +=.

Change-Id: I66d9aada12477756142726828cf66c142ca76a48
Reviewed-on: https://skia-review.googlesource.com/5657
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-08 16:13:12 +00:00
raftias
e8ea07a612 Added some named gamma recognition to lutnType ICC profile parsing
Most CMYK images I tested had linear gamma specified as tables, which
is easily recognized and when present allows an entire SkRasterPipeline
stage to be avoided for every single channel. This is likely due to the
fact that gamma tables are required in lutntype A2B0 profiles.

BUG=skia:

Change-Id: I82b65848c4099035d61098abb66e9afe0b080930
Reviewed-on: https://skia-review.googlesource.com/5388
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Robert Aftias <raftias@google.com>
2016-12-08 16:02:55 +00:00
Matt Sarett
a9da22df96 Fix bitmap-image srgb gm
This changed behavior when asLegacyBitmap() was modified to always
initiate a decode in legacy mode.

This fixes the gm to work as originally intended.

BUG=skia:

Change-Id: I34d35f6f445bd4606c6e28f83905702ec0b36bbb
Reviewed-on: https://skia-review.googlesource.com/5696
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2016-12-08 15:40:15 +00:00
raftias
2979b1a7ea Added clamps in SkRasterPipeline's gamma stages.
Clamping stages were also removed from SkColorSpace_A2B as they are now
not needed.

BUG=skia:

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Change-Id: I24e2e411e12b463854e980cb10c0e6bafb4a7c42
Reviewed-on: https://skia-review.googlesource.com/5546
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Robert Aftias <raftias@google.com>
2016-12-08 15:24:19 +00:00
Ben Wagner
ee6c368a6d Roll third_party/externals/freetype 4d3f7ca8cedb..ffd8f622360
4d3f7ca8ce..ffd8f62236

Change-Id: Ia9d8af09253d0aff343c2310f5eb8c934b2ebbda
Reviewed-on: https://skia-review.googlesource.com/5685
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2016-12-08 15:22:37 +00:00
Brian Salomon
b4a24e57c0 Add .clang-format file to include/gpu src/gpu
Change-Id: Ie686f043f4b3a0a2bbd7ab38cf6bab53bb825a79
Reviewed-on: https://skia-review.googlesource.com/5651
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2016-12-08 15:19:15 +00:00
Florin Malita
ce8840e384 [SVGDom] ClipPath support
* clip-path attribute handling
  * clipPath container element
  * asPath() SkSVGNode virtual for capturing subtree geometry

R=robertphillips@google.com,stephana@google.com

Change-Id: I9597534fe3047b631da6309eafac055dff5696e9
Reviewed-on: https://skia-review.googlesource.com/5650
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2016-12-08 15:00:18 +00:00
Leon Scroggins III
c5a8366d99 Add fuzzing for decoding animated images
Add a new mode to decode all frames of an animated image. Use
incremental decoding, rather than getPixels, since the primary client
uses incremental decoding.

Do not decode animated as index 8, which is only supported for the
first frame.

Change-Id: I5d7ed1a81c1ef37df3701c483486d4beff0f62a7
Reviewed-on: https://skia-review.googlesource.com/5679
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2016-12-08 14:43:21 +00:00
Mike Klein
64d8be00b8 Make sure all the convolve functions are defined.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Ubuntu-GCC-x86_64-Release-Fast,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD


Change-Id: I5ae1fdee957f796d8051bbb0eca9e037aef9b2c9
Reviewed-on: https://skia-review.googlesource.com/5655
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-08 03:18:41 +00:00
Mike Klein
019be7b472 add missing []
BUG=skia:6039

NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=5653

Change-Id: I8bb0e0fec71cea99a9804cc855371fd153b52ce1
Reviewed-on: https://skia-review.googlesource.com/5653
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-12-08 02:13:01 +00:00
xiangze.zhang
4adac2e32a Add AVX2 version of ConvolveVertically
ConvolveVertically time is reduced about 60% using haswell cpu.
Nanobench results:
                             before    after
bitmap_scale_filter_64_256    611us    302us
bitmap_scale_filter_80_90     101us    64.9us
bitmap_scale_filter_30_90    82.3us    51.4us
bitmap_scale_filter_10_90    73.6us    42.4us

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2526733002
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Review-Url: https://codereview.chromium.org/2526733002
2016-12-07 17:54:04 -08:00
Robert Phillips
45aac57ac6 Revert "Add antialiasing to SkDropShadowImageFilter's shadow draw"
This reverts commit 78e8165ec3.

Reason for revert: Chrome pixel test

Original change's description:
> Add antialiasing to SkDropShadowImageFilter's shadow draw
> 
> A BW draw in the SkDropShadowImageFilter can lead to unexpected popping of the shadow when the dest rect lies on half pixel boundaries.
> 
> Change-Id: Ibc59dacc79bca8955981ec2889e79facd7d2de83
> Reviewed-on: https://skia-review.googlesource.com/5669
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I0b0073cd8d9f1502daaa452c2153af029c11e52a
Reviewed-on: https://skia-review.googlesource.com/5652
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2016-12-08 00:16:39 +00:00
Brian Salomon
742e31de15 Rename GrBatchFlushState to GrOpFlushState
Change-Id: I1a8052c61d7624929caf45ba44e2a465cd0dc1c2
Reviewed-on: https://skia-review.googlesource.com/5649
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2016-12-07 23:36:31 +00:00
Brian Salomon
42521e8910 Rename GrRTC::drawBatch to addDrawOp and local vars in GrRTC.cpp
Change-Id: Ic8b896d7779844de5f82f9f0e630508578a8f61d
Reviewed-on: https://skia-review.googlesource.com/5647
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2016-12-07 22:38:42 +00:00
Mike Reed
02b7349af7 no need for SK_SUPPORT_LEGACY_CANVAS_IS_REFCNT anymore
BUG=skia:

Change-Id: If0aa01beb8be9bd7d9a3a5b23c795223b02f02d3
Reviewed-on: https://skia-review.googlesource.com/5690
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-12-07 22:28:04 +00:00
Mike Reed
867812e2ef remove SK_SUPPORT_LEGACY_CANVAS_IS_REFCNT from android
BUG=skia:

Change-Id: I78db77832431d1847cef7de1f74613bfe6b87c7d
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/5691
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-12-07 22:02:27 +00:00
Hal Canary
58a769490a SkBitmap::ComputeIsOpaque -> SkPixmap::computeIsOpaque
Motivation:  Twice internal Skia clients have to do something awkward like this:

    bool ComputeIsOpaque(const SkPixmap& pixmap) {
      SkBitmap bm;
      return bm.installPixels(pixmap) && SkBitmap::ComputeIsOpaque(bm);
    }

Change-Id: I7263c06f754c1305ecb07c4c005d9cfb9d1f523d
Reviewed-on: https://skia-review.googlesource.com/5684
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2016-12-07 21:44:39 +00:00
Jim Van Verth
e1f29c7b3c Revert "Fix SDF generation for pixel-aligned paths"
This reverts commit 92964124c5.

Reason for revert: Causing roll failure. Need to find images to rebaseline

Change-Id: I09cad4c3a48fefcfc669fb1045613336c88cb33a
Reviewed-on: https://skia-review.googlesource.com/5686
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2016-12-07 21:24:59 +00:00
Hal Canary
02e65df343 fix build. tests/BitmapTest w/ nogpu
NOTRY=true
TBR=herb@google.com

Change-Id: I09d7bd262a805e109a0869a83dec05ae03cff747
Reviewed-on: https://skia-review.googlesource.com/5687
Reviewed-by: Hal Canary <halcanary@google.com>
2016-12-07 21:22:15 +00:00
Mike Reed
b92520df1d remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS for android
... to land *after* we land the change in master to use SkClipOps

BUG=skia:

Change-Id: I58d73866324aae9b9693afcd2a81aef503241a46
NOTRY=True
TBR=djsollen
Reviewed-on: https://skia-review.googlesource.com/5678
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-12-07 20:59:18 +00:00
Hal Canary
4cba3fe576 SkBitmap::ComputeIsOpaque and SkBitmap::eraseColor support F16
Also add a unit test.

Change-Id: I9b6635ce9dd504788ca36b3246eaac2b37c2f3a6
Reviewed-on: https://skia-review.googlesource.com/5443
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-12-07 20:43:26 +00:00
Brian Salomon
1e41f4a111 Rename batch->op in GrOpList and subclasses
Change-Id: I9c82483c4ac0dc140fb1e5e3650d6ff1e5917e99
Reviewed-on: https://skia-review.googlesource.com/5646
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2016-12-07 20:42:49 +00:00
Brian Salomon
5b7b49f6e1 Rework GrRenderTargetOpList::setupDstReadIfNecessary.
Move the necessary check to the caller. This removes the GrPipelineBuilder
param which makes this useable with future GrDrawOps that can be recorded without one.

Rename to setupDstTexture(). This only is involved in the texture method of getting the
destination color to the XP.

Change-Id: I1b781da3d42586534470a23a572805ec939cb730
Reviewed-on: https://skia-review.googlesource.com/5645
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2016-12-07 19:40:57 +00:00
Mike Reed
fd87be8ffa hide emboss from everyone (except android for now)
BUG=skia:

Change-Id: Ibd453b0a63948e3e4950f02459d7bc01a6ed26c5
Reviewed-on: https://skia-review.googlesource.com/5671
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2016-12-07 19:13:32 +00:00
Brian Osman
fc2e7e057d Add NarrowRGB gamut mode to SampleApp
Helpful for reproducing DM failures from this config, and
comparing the results of out-of-gamut colors between gpu
and raster.

BUG=skia:

Change-Id: I6f091ea47c40ac594bc9e1254bbdd01ac13796d2
Reviewed-on: https://skia-review.googlesource.com/5510
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-12-07 18:28:34 +00:00
brianosman
851c2386ba Skip the sRGB mip-map testing on command buffer
Chromium command buffer now has the sRGB decode extension, but it doesn't
make any guarantees about the interaction with glGenerateMipmap.

BUG=skia:

Review-Url: https://codereview.chromium.org/2557603006
2016-12-07 10:03:25 -08:00
Mike Klein
27eb22b994 gn_to_bp.py fixes
- no u"" strings
  - more pervasive sorting
  - include sources from optional Skia components (e.g. gpu, codec, pdf)
  - cosmetic nits

Change-Id: Ief0f293117dbfbc97584db185c067a8297067b74
Reviewed-on: https://skia-review.googlesource.com/5643
Reviewed-by: Leon Scroggins <scroggo@google.com>
2016-12-07 18:01:54 +00:00
Robert Phillips
78e8165ec3 Add antialiasing to SkDropShadowImageFilter's shadow draw
A BW draw in the SkDropShadowImageFilter can lead to unexpected popping of the shadow when the dest rect lies on half pixel boundaries.

Change-Id: Ibc59dacc79bca8955981ec2889e79facd7d2de83
Reviewed-on: https://skia-review.googlesource.com/5669
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2016-12-07 17:37:59 +00:00