Commit Graph

19524 Commits

Author SHA1 Message Date
Florin Malita
cbcf4743db Remove unused BW mask blitters
Change-Id: I59593e84945633f505d034bea01f6d0b51c5b837
Reviewed-on: https://skia-review.googlesource.com/121663
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-04-16 20:18:00 +00:00
Mike Reed
888fc05ef0 optimize fast/simple case in raster tiling
1. We want to avoid as much overhead as possible in the tiler setup, so do a quick check before handling bounds
2. Compare against current clipbounds instead of devicesize, which may eliminate looping sometimes

Follow-on to https://skia-review.googlesource.com/c/skia/+/119570

Bug: 818693
Bug: 820245
Bug: 820470
Change-Id: If34721c7e467d1ab9e879f25e7b86af6732ca384
Reviewed-on: https://skia-review.googlesource.com/121329
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
2018-04-16 19:09:50 +00:00
Yuqian Li
945918714b Simplify the operation on atomic fIsFinishing
Bug: skia:
Change-Id: I7ffe9bc11d211b0c1a4873b28ad4d0f574a6148b
Reviewed-on: https://skia-review.googlesource.com/121326
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-16 19:06:40 +00:00
Yuqian Li
575c21bf74 Let SkCoverageDeltaList store width and use it during blitting
Otherwise, out/Debug/viewer -m complexclip_bw_invert may crash using
the threaded backend because the clip in the initFn may be wider
than the clip in the drawFn.

Bug: skia:
Change-Id: I3b3ddc9a912fcc155bd30a6bc1f87e24739d1ca6
Reviewed-on: https://skia-review.googlesource.com/121327
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-16 19:01:20 +00:00
Yuqian Li
94bb0722b2 SkBlitter is not thread safe; make one for each thread.
Otherwise, GM fancy_gradients would be drawn incorrectly and TSAN
will issue alerts as SkARGB32_Shader_Blitter has its own memory
that may be written during blitting.

As we make one blitter for each thread, we also don't need to
send in a thread-alloc for blitCoverageDeltas

Bug: skia:
Change-Id: Ie4ee0886b88c797ab57c65674b0b7527501b164f
Reviewed-on: https://skia-review.googlesource.com/120641
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-16 18:53:10 +00:00
Yuqian Li
6b7b1dcc86 Snap the bitmap as it may be changed later
Bug: skia:
Change-Id: If06510f6fd3b64cce3440a543973c9c83913da10
Reviewed-on: https://skia-review.googlesource.com/120141
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-16 18:37:10 +00:00
Hal Canary
a16e1b6c00 SkPDF: use std::aligned_storage for typed union
Change-Id: I38e063cf7557aab1cffbaa126aea4dc7142d914c
Reviewed-on: https://skia-review.googlesource.com/121583
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-04-16 18:19:10 +00:00
Greg Daniel
e320486489 Don't allow ganesh to allocate mip maps for wrapped textures.
We will not allocate new mips on a wrapped texture but we will use mips
if the wrapped texture already has one. If we need mips for a draw this
will trigger a copy to occur.

Also some cleanup up of our InternalSurfaceFlags in general.

Bug: skia:7806
Change-Id: I7aa666478cc91bba6e0644b323825fcc9b49793a
Reviewed-on: https://skia-review.googlesource.com/121348
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-04-16 17:05:20 +00:00
Brian Salomon
45c92203ef Draw stroked circles with round caps analytically.
These draw as the butt cap version where the stroked circle is clipped by half planes. But then we add in coverage from circles at the caps.

Bug: skia:7793
Change-Id: I7c27a2a5f1f9c1645cc9042e68e787dd81ea28b8
Reviewed-on: https://skia-review.googlesource.com/120140
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-04-16 16:47:10 +00:00
Yuqian Li
cf1ac58e24 Reland "Cumulate deltas even if they're out of the clip"
This reverts commit ffbe932968.

Reason for revert: guard flag is now in

Original change's description:
> Revert "Cumulate deltas even if they're out of the clip"
> 
> This reverts commit 520e578b99.
> 
> Reason for revert: guard flag isn't in yet
> 
> Original change's description:
> > Cumulate deltas even if they're out of the clip
> > 
> > Otherwise, GM complexclip_aa_inverse will be drawn incorrectly
> > in t8888 mode.
> > 
> > Bug: skia:
> > Change-Id: I2fe9dd94f3219e3883f713ca95ea3c3d8a49c7ba
> > Reviewed-on: https://skia-review.googlesource.com/121261
> > Reviewed-by: Cary Clark <caryclark@google.com>
> > Commit-Queue: Yuqian Li <liyuqian@google.com>
> 
> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: If7fa2a8bd1ff3e9b55c3900cbba82a3e2562f502
> Reviewed-on: https://skia-review.googlesource.com/121424
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>

TBR=caryclark@google.com,liyuqian@google.com,reed@google.com

Change-Id: I4ec1fec53782a106407d1398c43cab748fd5f259
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/121600
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-16 16:28:11 +00:00
Yuqian Li
ffbe932968 Revert "Cumulate deltas even if they're out of the clip"
This reverts commit 520e578b99.

Reason for revert: guard flag isn't in yet

Original change's description:
> Cumulate deltas even if they're out of the clip
> 
> Otherwise, GM complexclip_aa_inverse will be drawn incorrectly
> in t8888 mode.
> 
> Bug: skia:
> Change-Id: I2fe9dd94f3219e3883f713ca95ea3c3d8a49c7ba
> Reviewed-on: https://skia-review.googlesource.com/121261
> Reviewed-by: Cary Clark <caryclark@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>

TBR=caryclark@google.com,liyuqian@google.com,reed@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: If7fa2a8bd1ff3e9b55c3900cbba82a3e2562f502
Reviewed-on: https://skia-review.googlesource.com/121424
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-16 16:14:30 +00:00
Chris Dalton
6fdbf6161b ccpr: Normalize the cubic inflection function instead of its roots
When solving for KLM, switches back to normalizing the cubic's
inflection function rather than both individual roots. Also performs
some general code clean up for SkClassifyCubic.

Bug: skia:
Change-Id: Id513e7e02c50a8709f3eccf92fad9e5134d73d83
Reviewed-on: https://skia-review.googlesource.com/121201
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-04-16 16:00:35 +00:00
Herb Derby
209a5f3bea Remove all notion of transport from the API - V2.
There is only a need to pass buffers in and out of the system.
All transport is external to the system.

BUG=skia:7515

Change-Id: Ie50cbc3fa1b9776e56dab8e49e91ce640e0b3954
Reviewed-on: https://skia-review.googlesource.com/119893
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-04-16 15:58:40 +00:00
Greg Daniel
7444c3c518 Revert "Delete getRenderTargetHandle call on SkSurface."
This reverts commit c828109ebd.

Reason for revert: Need to fix flutter

Original change's description:
> Delete getRenderTargetHandle call on SkSurface.
> 
> All clients and internal code should be switched (once changes land soon)
> to the new getBackendRenderTarget call instead.
> 
> Bug: skia:
> Change-Id: I6f490b6d26a72f37f97216be04e541483206510d
> Reviewed-on: https://skia-review.googlesource.com/121103
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: I571298f839757fcdedcd8117519e740ac7ef1344
Reviewed-on: https://skia-review.googlesource.com/121480
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-04-14 18:08:12 +00:00
Yuqian Li
520e578b99 Cumulate deltas even if they're out of the clip
Otherwise, GM complexclip_aa_inverse will be drawn incorrectly
in t8888 mode.

Bug: skia:
Change-Id: I2fe9dd94f3219e3883f713ca95ea3c3d8a49c7ba
Reviewed-on: https://skia-review.googlesource.com/121261
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-14 01:35:01 +00:00
Ethan Nicholas
43f6d4516b fix sksl standalone build error
Bug: skia:
Change-Id: I7de6d46a5774b5820bb6468a418be7c56da8510b
Reviewed-on: https://skia-review.googlesource.com/121421
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-04-13 21:37:37 +00:00
Mike Reed
408ee9fecd remove unused virtual onNotifyPixelsChanged
Bug: skia:
Change-Id: I993701a1059d7d309991b06147bd0cc4a1a4fe93
Reviewed-on: https://skia-review.googlesource.com/121350
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-04-13 21:23:07 +00:00
Brian Osman
584b501816 Support downscaling to max texture size when making cross-context images
This is one solution to https://github.com/flutter/flutter/issues/16454

Change-Id: Iacd59f07e1bf87b6caccb64df16ab8827dfc78b1
Reviewed-on: https://skia-review.googlesource.com/121342
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-04-13 20:41:12 +00:00
Yuqian Li
460b1cd45a Clone the xpos array in drawPosText
It was a mistake to miss it...

This fixes GM bigtext and almost every GM that uses drawPosText
in the t8888 mode.

Bug: skia:
Change-Id: I32d6cc1fd1cde5c8b7caaad9eb3ba6a1706c22a6
Reviewed-on: https://skia-review.googlesource.com/121328
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-13 20:21:12 +00:00
Ethan Nicholas
eab2baa8a4 added sk_LastFragColor
Bug: skia:
Change-Id: If64d8281beb8b7687db629eef2e956974ee9a979
Reviewed-on: https://skia-review.googlesource.com/121343
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-04-13 20:09:12 +00:00
Robert Phillips
28a142f213 Don't try to readback from the GPU for small blur sigmas
This should revert Ganesh's small sigma handling behavior to back before:  https://skia-review.googlesource.com/c/skia/+/52400 (Reorganize blur filter to insert new implementation)

BUG=skia:7787
BUG=skia:7751
BUG=832838

Change-Id: I0ce6b888be534afb60336abf561e97741fa34684
Reviewed-on: https://skia-review.googlesource.com/121331
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2018-04-13 19:14:42 +00:00
Cary Clark
d4228473a5 path is rect bug number nine
This variation exploits a sequence which uses a zero
length line to note that lines have been recorded, but
no rectangle edge has been encountered.

R=robertphillips@google.com

Docs-Preview: https://skia.org/?cl=121282
Bug: 824145,skia:7792
Change-Id: I652e9482b2867c3d7da30d5f5df2aecbfd0d716d
Reviewed-on: https://skia-review.googlesource.com/121282
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
2018-04-13 14:01:32 +00:00
Yuqian Li
22e601f8c3 Limit our IsBadForDAA for stroke width > 0 and <= 2
Now, according to our gold, we probably are overkilling the DAA.
That could be bad for performance.

Bug: skia:6886 chromium:821353
Change-Id: I92bb4cbedb106f7fbd7e01e8107773d413e2da52
Reviewed-on: https://skia-review.googlesource.com/121260
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-13 00:01:44 +00:00
Chris Dalton
50f77daf97 ccpr: Actually blacklist ANGLE
It helps to assign it true instead of false...

TBR=bsalomon@google.com

Bug: skia:
Change-Id: I535333d12a79a3fbc82d68e05cf4c2541fa39fa0
Reviewed-on: https://skia-review.googlesource.com/121247
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-04-12 23:23:31 +00:00
Mike Reed
59af19f620 can't abort looper loop, as saveCount won't be balanced
This is triggered by a recent change to clear the looper from the paint we return.
That change made the call to nothingToDraw() return true, which in turn meant
we didn't get the balancing call to restore in the looper's next() call.

Follow-up to https://skia-review.googlesource.com/c/skia/+/121062

Bug: skia:
Change-Id: I3ba7d487e4193103fb1d223d34c9c6eb486eca09
Reviewed-on: https://skia-review.googlesource.com/121220
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-04-12 22:02:11 +00:00
Greg Daniel
92cbf3fc01 Don't create lazy proxys if their width/height is greater than max tex size
Bug: skia:
Change-Id: I53508c4e3bbd4c315be4b29a66716e0c5e7f25bf
Reviewed-on: https://skia-review.googlesource.com/121161
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-04-12 21:40:11 +00:00
Cary Clark
88ba9710b5 son of path is rect bug
This variation tricks SkPath::isRect by exploiting
that the implementation resets the point pointer to
process the close verb, and using the reset pointer
to walk over a series of points that don't move.

In addition to fixing this, rename variables to
make the line creation more obvious, since left,
right, and friends, are not the left and right.

R=robertphillips@google.com

Bug: 824145,skia:7792
Change-Id: If8ebbc3eedd270652670d6e111a5bc02e61f0eec
Reviewed-on: https://skia-review.googlesource.com/121122
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
2018-04-12 20:45:32 +00:00
Ethan Nicholas
b809efbbfa workaround for buggy macOS GLSL shader compiler
Bug: skia:
Change-Id: Ib77e11d80f93f76e65eac6119dbf2bd03523aaf9
Reviewed-on: https://skia-review.googlesource.com/117626
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-04-12 20:26:51 +00:00
Greg Daniel
c828109ebd Delete getRenderTargetHandle call on SkSurface.
All clients and internal code should be switched (once changes land soon)
to the new getBackendRenderTarget call instead.

Bug: skia:
Change-Id: I6f490b6d26a72f37f97216be04e541483206510d
Reviewed-on: https://skia-review.googlesource.com/121103
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-04-12 19:41:10 +00:00
Mike Reed
632de605a3 check for non-finite values output by clipper
Bug: oss-fuzz:7452
Change-Id: Id1b9bd1ad9245f32d69b7ce97544955fcde5670f
Reviewed-on: https://skia-review.googlesource.com/121102
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-04-12 18:11:00 +00:00
Brian Osman
875f7851f6 Fail fast when trying to make a texture that's too large
This saves us from doing lots of throwaway decoding work if the image
can't be uploaded.

This is based on -- but doesn't entirely fix --
https://github.com/flutter/flutter/issues/16454

Change-Id: I4025f31f1334b715a04b4503aeb4f857851b5772
Reviewed-on: https://skia-review.googlesource.com/121104
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-04-12 18:09:10 +00:00
Yuqian Li
9438790b66 Reland "Add private fIsBadForDAA bit to SkPath"
This reverts commit ed5e069dbb.

Reason for revert: add the guard flag

Original change's description:
> Revert "Add private fIsBadForDAA bit to SkPath"
> 
> This reverts commit 54aefc7410.
> 
> Reason for revert: Forget the guard flag. Pixel tests would fail.
> 
> Original change's description:
> > Add private fIsBadForDAA bit to SkPath
> > 
> > Bug: chromium:821353
> > Change-Id: Ic6585e76df692bb1853d0990d75f0e8d1dee22f4
> > Reviewed-on: https://skia-review.googlesource.com/120201
> > Commit-Queue: Yuqian Li <liyuqian@google.com>
> > Reviewed-by: Mike Reed <reed@google.com>
> 
> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com
> 
> Change-Id: I2fe7cfcc3a80a51415f72d656da95a894a3240a4
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:821353
> Reviewed-on: https://skia-review.googlesource.com/120505
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>

TBR=caryclark@google.com,liyuqian@google.com,reed@google.com

Change-Id: Iebf7caf9ca74f305dec25b1b6512e93cb41cc8ec
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:821353
Reviewed-on: https://skia-review.googlesource.com/120620
Commit-Queue: Yuqian Li <liyuqian@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
2018-04-12 16:24:40 +00:00
Mike Reed
2dc50cc92a add conservative bounds to raster tiling
This allows the tiler to optimally visit only the tiles that might intersect
the drawing. Not all call-sites can cheaply compute their bounds, so for those
we just pass nullptr, which tells the tiler to visit all of the tiles.

Bug: 818693
Bug: 820245
Bug: 820470
Change-Id: I8bda668a99bcdb2a9a74a8278ec0cf1004acba6e
Reviewed-on: https://skia-review.googlesource.com/119570
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-04-12 16:22:30 +00:00
Mike Reed
dd8ae14528 always clear the looper when we're unrolling it, to not confused devices
Discovered by https://skia-review.googlesource.com/c/skia/+/119570

Bug: skia:
Change-Id: I18c13052c5eb410a46ab16e2f1015861948678af
Reviewed-on: https://skia-review.googlesource.com/121062
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-04-12 15:41:50 +00:00
Cary Clark
31608c02c2 another rect is path fix
This addresses comment #17 of skbug.com/7792.

The bug overshoots the end and exploits that the
first point tracked by close isn't the first
point in the rectangle.

Fixing this slightly regresses the example
in comment #14; before it was treated as a filled
rect but now it is not; this conservative approach
doesn't cause any other regressions.

bug7792 in pathfill.cpp verifies that all paths
in the bug draw correctly by comparing CPU and GPU.

R=robertphillips@google.com

Bug: 824145,skia:7792
Change-Id: I55bea023d2ad7456c8c3ebd9d1df95fe34e0a0d4
Reviewed-on: https://skia-review.googlesource.com/120996
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-04-12 15:05:40 +00:00
Robert Phillips
ba375a8884 Add SK_SUPPORT_LEGACY_BACKEND_OBJECTS
This relies on the Chrome CL: https://chromium-review.googlesource.com/c/chromium/src/+/999796 (Add SK_SUPPORT_LEGACY_BACKEND_OBJECTS to SkUserConfig.h) landing first.

Change-Id: Ie0a2b7b84cc02e46957765a0a7d6444a5320769d
Reviewed-on: https://skia-review.googlesource.com/119140
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-04-12 14:56:10 +00:00
Chris Dalton
21f6437764 Implement Sk2f Load2
Bug: skia:
Change-Id: I7d37a76bcb9df9c5a1c22eb1b0277387816df7bb
Reviewed-on: https://skia-review.googlesource.com/120602
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-04-12 14:49:00 +00:00
Chris Dalton
516c292967 ccpr: Blacklist ANGLE again
Bug: skia:7805
Change-Id: I58290feeca649ffefb389052c127e01703025d61
Reviewed-on: https://skia-review.googlesource.com/120606
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-04-12 14:37:01 +00:00
Robert Phillips
a6aef2a975 Allow SkImage_Gpu to fail some requests in DDL mode
In particular, anything that forces an instantiation is forbidden.

Change-Id: I3cf83a6fdedb03105dda7d928b9c0f73315199cc
Reviewed-on: https://skia-review.googlesource.com/120421
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-04-12 14:35:10 +00:00
Chris Dalton
e3fda9310a Implement Sk4f min/max
Bug: skia:
Change-Id: Icf235dea81e9f125c1c8590ec87cb3591393036c
Reviewed-on: https://skia-review.googlesource.com/120281
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-04-12 14:29:00 +00:00
Yuqian Li
74e5937c18 Remove obsolete comment
Bug: skia:
Change-Id: I4a290e643275c4e41e7f42496ffc14a9a1abca82
TBR: reed@google.com, mtklein@google.com, herb@google.com
Reviewed-on: https://skia-review.googlesource.com/120560
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-12 14:23:57 +00:00
Florin Malita
c6c5eade82 Reland "Fix handling of MaskFilter matrices"
This reverts commit c64ee20e13.

Reason for revert: initial failures should be fixed in https://skia.googlesource.com/skia.git/+/8eaf64ae12696d4189d3cea9f023658494cf82b8

Original change's description:
> Revert "Fix handling of MaskFilter matrices"
> 
> This reverts commit 2097fd03ff.
> 
> Reason for revert: This is breaking a lot of Windows bots (esp. on the shadermaskfilter_localmatrix)
> 
> Original change's description:
> > Fix handling of MaskFilter matrices
> > 
> > 1) extend GrFPArgs to track pre/post local matrices, add helpers for
> >    creating pre/post wrapper args
> > 
> > 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM
> >    sandwich logic.
> > 
> > 3) update call sites to use the above
> > 
> > 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to
> >    disambiguate vs. SkShader::makeWithLocalMatrix.
> > 
> > BUG=skia:7744
> > 
> > Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1
> > Reviewed-on: https://skia-review.googlesource.com/119330
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> 
> TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com
> 
> Change-Id: I918dbb95bf00b3122e6699b84566ec82dbb5fc5c
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:7744
> Reviewed-on: https://skia-review.googlesource.com/120340
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com

Change-Id: If194862a928d1abe22ed8fa968436c725d19a8fc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7744
Reviewed-on: https://skia-review.googlesource.com/120480
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-04-11 20:13:22 +00:00
Mike Reed
1f275851ec remove unused/dumb methods from SkRect
Bug: skia:
Change-Id: I407dc94256a347c7a9343b75a5af43c4294891d3
Reviewed-on: https://skia-review.googlesource.com/119360
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
2018-04-11 19:40:57 +00:00
Mike Reed
f441cfc5df Clean-up paints for drawImage (etc.) to enforce that we always
ignore stroking and patheffects.

Bug: skia:7804
Change-Id: I0b5f3a6734c5e4201a6e3a2bd5e398d213c8950e
Reviewed-on: https://skia-review.googlesource.com/120504
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-04-11 19:32:47 +00:00
Cary Clark
8540e110f9 more path is rect bugs
More edge cases found; clean up the logic a bit
to make more clear where the rectangle points
start and stop.

R=robertphillips@google.com,brianosman@google.com
Bug: 824145,skia:7792
Change-Id: Ie24dfd1519f30875f44ffac68e20d777490b00b9
Reviewed-on: https://skia-review.googlesource.com/120422
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-04-11 19:13:07 +00:00
Yuqian Li
ed5e069dbb Revert "Add private fIsBadForDAA bit to SkPath"
This reverts commit 54aefc7410.

Reason for revert: Forget the guard flag. Pixel tests would fail.

Original change's description:
> Add private fIsBadForDAA bit to SkPath
> 
> Bug: chromium:821353
> Change-Id: Ic6585e76df692bb1853d0990d75f0e8d1dee22f4
> Reviewed-on: https://skia-review.googlesource.com/120201
> Commit-Queue: Yuqian Li <liyuqian@google.com>
> Reviewed-by: Mike Reed <reed@google.com>

TBR=caryclark@google.com,liyuqian@google.com,reed@google.com

Change-Id: I2fe7cfcc3a80a51415f72d656da95a894a3240a4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:821353
Reviewed-on: https://skia-review.googlesource.com/120505
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-04-11 18:37:29 +00:00
Yuqian Li
54aefc7410 Add private fIsBadForDAA bit to SkPath
Bug: chromium:821353
Change-Id: Ic6585e76df692bb1853d0990d75f0e8d1dee22f4
Reviewed-on: https://skia-review.googlesource.com/120201
Commit-Queue: Yuqian Li <liyuqian@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-04-11 18:32:27 +00:00
Mike Reed
2b67005be0 no need to tile draws that don't involve paths
Bug: skia:
Change-Id: I2e974162982a81b1d2ac2505df809f15354ded07
Reviewed-on: https://skia-review.googlesource.com/120425
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-04-11 15:46:37 +00:00
Robert Phillips
dcf1fb482b Fix alpha threshold image filter GPU implementation
BUG=skia:7760
Change-Id: I674d705ce637c405361ecf45ea8604d1606f7af7
Reviewed-on: https://skia-review.googlesource.com/120203
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-04-11 13:44:56 +00:00
Greg Daniel
044b67d6c7 Remove guard around getBackendTexture/RenderTarget calls
Bug: skia:
Change-Id: Ia9ad987d4af183985724f32b022553af0fcb2b78
Reviewed-on: https://skia-review.googlesource.com/120124
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-04-11 13:38:26 +00:00