| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
| |
This relies on https://codereview.chromium.org/1414503003/ (Add SkTTopoSort) landing first.
BUG=skia:4094
Review URL: https://codereview.chromium.org/1414773002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change updates feSpotLight to match the spec via two changes:
1) specularExponent is ignored if the spotlight has no coneAngle (GPU
bug only). This change updates the GPU path so that it matches the
CPU path and the spec in this regard.
2) specularExponent is clamped to the 1-128 range. The spec does not
specify a clamp for the specularExponent attribute of feSpotLight.
Note that the spec *does* specify this clamp for the
specularExponent attribute of feSpecularLighting. It looks like we
incorrectly applied this to both specularExponent attributes.
This change (along with a parallel change in Blink) allows us to pass
the SVG filter effects conformance test here:
http://www.w3.org/Graphics/SVG/Test/20110816/harness/htmlObject/filters-light-01-f.html
Additionally, this brings our behavior in line with Safari and Edge’s
behavior on this filter.
Two new cases were added to gm/lighting.cpp to catch these issues:
- The existing spotlight case exercised the path where our specular
exponent was between 1-128 and had a limiting cone angle.
- The first new spotlight case exercises the path where our specular
exponent is between 1-128 and we do not have a limiting cone angle.
- The second new spotlight case exercises the path where the specular
exponent is not within the 1-128 range, to ensure that we don’t
incorrectly clip to this range.
BUG=472849
Review URL: https://codereview.chromium.org/1403403003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
premultiplied colors, however the flag for whether or not to do this,
which is present in their parent filters, is dropped when creating the
GL implementations. This change adds logic to forward the value from
the parent filter to the GL implementation.
This makes GPU behavior match software and fixes a WebKit
LayoutTest. See referenced bug.
BUG=473186
Review URL: https://codereview.chromium.org/1410553002
|
|
|
|
|
|
|
|
|
|
|
| |
Misc only has data in the first 10 bytes of its 12 byte layout.
We need to stop hashing at 10 bytes.
C.f. http://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind/builds/581
BUG=skia:
Review URL: https://codereview.chromium.org/1409273006
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1413973002
|
|
|
|
|
|
| |
BUG=skia:4094
Review URL: https://codereview.chromium.org/1414503003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1411353002 .
|
|
|
|
|
|
|
|
| |
texture size
BUG=skia:
Review URL: https://codereview.chromium.org/1411323002 .
|
|
|
|
|
|
|
|
|
|
|
| |
Drawing with SkRect::MakeLargest() isn't actually working.
This appears to work correctly, and even be correct.
(It's a case explicitly handled by SkCanvas::onDrawPath).
BUG=skia:
Review URL: https://codereview.chromium.org/1411303002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1410333003
|
|
|
|
|
|
| |
TBR=caryclark@google.com
Review URL: https://codereview.chromium.org/1417553002 .
|
|
|
|
|
|
| |
BUG=skia:2860
Review URL: https://codereview.chromium.org/1395693011
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1409993003
|
|
|
|
|
|
|
|
|
|
| |
The result is that the set of "generic" imagefilters (e.g. SkColorFilterImageFilter) that use drawing commands to return their results will now stay in the same domain as their src (i.e. gpu-src --> gpu-dst).
ApplyFilterGM exercises this, and now asserts this same-domain invariant.
BUG=skia:4467
Review URL: https://codereview.chromium.org/1401053003
|
|
|
|
|
|
|
|
| |
GPU object a say in what copying needs to be done.
Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
Review URL: https://codereview.chromium.org/1409163002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1416523003
|
|
|
|
|
|
|
|
| |
imgblur is intended to establish a ground truth for debugging mask blur issues. It performs a brute force (non-separable) Gaussian blur of the provided image.
The blur code itself is in sk_tools_utils so it can be more easily used programmatically in other places (e.g., blur unit tests).
Review URL: https://codereview.chromium.org/1384203002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For whatever reason, on the Mac, the command buffer is reporting
ARB_draw_instanced as a valid extension. This is probably a bug in the
command buffer and I'll look into this later.
In Skia, we don't check for ARB_draw_instanced in GLES2 when building
the interface, but during the validate, we do, so we ended up failing
the validation.
Looking a bit further at the specs, ARB_draw_instanced is GL only,
whereas EXT_draw_instanced is both GL and GLES. I've updated the code
to reflect this.
See:
https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/specs/ARB/draw_instanced.txt
https://www.opengl.org/registry/specs/EXT/draw_instanced.txt
Everything above also applies to ARB/EXT_instanced_arrays
https://www.khronos.org/registry/gles/extensions/EXT/EXT_instanced_arrays.txt
https://www.opengl.org/registry/specs/ARB/instanced_arrays.txt
Review URL: https://codereview.chromium.org/1409053003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1412013002
|
|
|
|
|
|
|
|
|
| |
Automatic commit by the RecreateSKPs bot.
TBR=
NO_MERGE_BUILDS
Review URL: https://codereview.chromium.org/1410283002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1409273004
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1410223002
|
|
|
|
|
|
|
|
|
| |
This will get us gathering GM images.
I will set up ignores on gold.skia.org so no one's bothered.
BUG=skia:
Review URL: https://codereview.chromium.org/1414563002
|
|
|
|
|
|
| |
BUG=skia:4094
Review URL: https://codereview.chromium.org/1413673002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1409253003
|
|
|
|
|
|
|
|
|
| |
It's only used by Cache and Client.
This moves it to SkRemote.cpp, where they live.
BUG=skia:
Review URL: https://codereview.chromium.org/1409273002
|
|
|
|
|
|
|
|
|
|
|
| |
TBR=msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4478
Review URL: https://codereview.chromium.org/1410953002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and give GPU object a say in what… (patchset #4 id:60001 of https://codereview.chromium.org/1409163002/ )
Reason for revert:
breaking nanobench
Original issue's description:
> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
>
> Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
TBR=reed@google.com,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1409923003
|
|
|
|
|
|
| |
GPU object a say in what copying needs to be done.
Review URL: https://codereview.chromium.org/1409163002
|
|
|
|
|
|
| |
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1403293004
|
|
|
|
|
|
|
|
| |
BUG=skia:
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1413653002
Review URL: https://codereview.chromium.org/1413653002
|
|
|
|
|
|
|
|
|
|
| |
(analog of CPU version here: https://codereview.chromium.org/1404743005/)
No change in behaviour; this is a straight refactoring.
BUG=skia:3194
Review URL: https://codereview.chromium.org/1393283008
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now, that we are subsetting, fX0 is not necessarily less than
fSrcWidth (since fSrcWidth is really the subset width).
Ex: We may want a 10 pixel subset starting twenty pixels from the
left edge. In that case, fX0=20 and fSrcWidth=10.
Let's rename the width as fSubsetWidth to avoid confusion
and remove the check.
BUG=skia:
Review URL: https://codereview.chromium.org/1407603003
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1391023005
|
|
|
|
|
|
| |
BUG=skia:4094
Review URL: https://codereview.chromium.org/1406173003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Iterating through the 903K skps that represent the
imagable 1M top web pages triggers a number of
bugs, some of which are addressed here.
Some web pages trigger intersecting cubic
representations of arc with their conic
counterparts. This exposed a flaw in coincident
detection that caused an infinite loop. The loop
alternatively extended the coincident section and,
determining the that the bounds of the curve pairs
did not overlap, deleted the extension.
Track the number of times the coincident detection
is called, and if it exceeds an empirically found
limit, assume that the curves are coincident and
force it to be so.
The loop count limit can be determined by enabling
DEBUG_T_SECT_LOOP_COUNT and running all tests. The
largest count is reported on completion.
Another class of bugs was caused by concident
detection duplicating nearly identical points that
had been merged earlier. To track these bugs, the
'handle coincidence' code was duplicated as a
const debug variety that reported if one of a
dozen or so irregularities are present; then it is
easier to see when a block of code that fixes one
irregularity regresses another.
Creating the debug const code version exposed some
non-debug code that could be const, and some that
was experimental and could be removed. Set
DEBUG_COINCIDENCE to track coincidence health and
handling.
For running on Chrome, DEBUG_VERIFY checks the
result of pathops against the same operation
using SkRegion to verify that the results are
nearly the same.
When visualizing the pathops work using
tools/pathops_visualizer.htm, set
DEBUG_DUMP_ALIGNMENT to see the curves after
they've been aligned for coincidence.
Other bugs fixed include detecting when a
section of a pair of curves have devolved into
lines and are coincident.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1394503003
|
|
|
|
|
|
| |
This was never that well justified.
Review URL: https://codereview.chromium.org/1405383002
|
|
|
|
|
|
|
|
| |
Use an SkImage generator/shader instead.
R=reed@google.com
Review URL: https://codereview.chromium.org/1405103003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1409663002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow up to:
https://codereview.chromium.org/1401283003/
Supply separate flags for onBuildTileIndex
Since png and jpeg's implementations of onBuildTileIndex rely on
modifications to their underlying libraries, rather than whether we are
running on Android, use separate flags that can be disabled
independently.
This will allow us to easily turn off the feature. It also is a step
towards building and running on other platforms for testing (e.g.
valgrind/ASAN to find memory leaks etc).
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/fc06e9c0e621744654e231ae6fa4460d88c0e27e
Review URL: https://codereview.chromium.org/1402783008
|
|
|
|
|
|
|
|
| |
Passing &SkGoodHash to SkTHashMap and SkTHashSet doesn't guarantee that it's actually instantiated. Using a functor does.
BUG=skia:
Review URL: https://codereview.chromium.org/1405053002
|
|
|
|
|
|
|
|
|
|
| |
function.
No change in behaviour; this is a straight refactoring.
BUG=skia:3194
Review URL: https://codereview.chromium.org/1404743005
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1403313003
|
|
|
|
|
|
|
|
|
|
| |
This is required to build Chromium's ui_base target with -fmodules, but it
seems like a good change regardless. Including a header in a namespace is
weird.
BUG=chromium:543704
Review URL: https://codereview.chromium.org/1398843007
|
|
|
|
|
|
|
|
| |
BUG=skia:
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1399533005
Review URL: https://codereview.chromium.org/1399533005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1409603004
|
|
|
|
|
|
|
|
|
|
|
| |
Follow up to https://codereview.chromium.org/1400343005
This warning only triggers on a few configs, like the coverage bot.
TBR=msarett@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1407833002
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUILD file changes are in google3 cl/105413829.
Fix blaze compilation errors. The default compilation options for blaze require that the initialization list must list fields in initialization order. Also deal with differing versions of libjpeg.
The BUILD changes were started by melanielc in google3 cl/102860957.
BUG=skia:
Review URL: https://codereview.chromium.org/1401883005
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1404823005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove --images '' to renable image benchmarking
- Add a flag to disable testing JPEG's buildTileIndex, since it also leaks memory
- Do not run images on GPU
- Do not run large interlaced images on 32 bit bots
- When buildTileIndex is not being used in the subset benches, do not use it for BRD
BUG=skia:3418
BUG=skia:4469
BUG=skia:4471
BUG=skia:4360
Review URL: https://codereview.chromium.org/1396113002
|