| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN/builds/3798/steps/dm/logs/stdio
BUG=skia:
Review URL: https://codereview.chromium.org/1510903005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1512533003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make NVPR a GL context option instead of a GL context.
This may enable NVPR to be run with command buffer
interface.
No functionality change in DM or nanobench. NVPR can
only be run with normal GL APIs.
BUG=skia:2992
Committed: https://skia.googlesource.com/skia/+/eeebdb538d476c1bfc8b63a946094ca1b505ecd1
Committed: https://skia.googlesource.com/skia/+/64492c43c3faee7ab0f69b1c84e0267616f85e52
Review URL: https://codereview.chromium.org/1448883002
|
|
|
|
|
|
|
|
|
|
|
| |
Use the pseudo-extension CHROMIUM_framebuffer_mixed_samples when
run with Chromium command buffer. The extension exposes
NV_framebuffer_mixed_samples subset that Skia needs in order to
use NV_path_rendering with mixed samples.
BUG=506765
Review URL: https://codereview.chromium.org/1507373004
|
|
|
|
|
|
|
|
|
|
| |
Populate the NV_path_rendering functions provided by
CHROMIUM_path_rendering when the tools are being run with
command buffer API.
BUG=skia:2992
Review URL: https://codereview.chromium.org/1510163003
|
|
|
|
|
|
| |
BUG=chromium:477684
Review URL: https://codereview.chromium.org/1517573002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1507973005
|
|
|
|
|
|
| |
BUG=skia:2733
Review URL: https://codereview.chromium.org/1504333007
|
|
|
|
|
|
|
|
|
| |
Extend the ends of hairline and haircurve segments when the paint is set to square or round, and the line or curve is at the start or end of a contour.
R=reed@google.com
BUG=skia:4599
Review URL: https://codereview.chromium.org/1491843006
|
|
|
|
|
|
|
|
|
|
|
|
| |
We just did the same for libpng (see crrev.com/1512043002), so we
might as well do this here.
SkImageDecoder is deprecated, and SkCodec already has a way to turn
off its messages.
BUG=skia:1649
Review URL: https://codereview.chromium.org/1505953007
|
|
|
|
|
|
|
|
|
|
| |
left was -16
I didn't see any warning about fTop, but seems simplest to fix that too.
BUG=skia:
Review URL: https://codereview.chromium.org/1505993007
|
|
|
|
|
|
|
|
|
|
|
| |
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN/builds/3787/steps/dm/logs/stdio
dst is null.
TBR=herb@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1507113007
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1509023004
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1504723004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old code says
runs += x + 1;
alpha += x + 1;
x = 0;
lastAlpha += x; // we don't want the +1
The last line does nothing. Remove this unnecessary line.
BUG=skia:401
Review URL: https://codereview.chromium.org/1506253002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1512043002
|
|
|
|
|
|
|
|
|
|
|
| |
Use an inline function that does a normal shift. When built for the sanitizer, add casts so that the shift is unsigned.
Also make a few fixes to do unsigned shifts or avoid the shift altogether; and add an argument spec to some macros.
R=reed@google.com,mtklein@google.com
BUG=skia:4633
Review URL: https://codereview.chromium.org/1503423003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1505333002
|
|
|
|
|
|
| |
BUG=chromium:477684
Review URL: https://codereview.chromium.org/1517483002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1510253002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make each filter responsible for expanding its destination
bounds. Previously, we were using a union of all
intermediate bounds sizes via join() calls in many image
filters' computeFastBounds(), due to the fact that those
filters could only produce bitmaps the same size as their
inputs. Now, we compute optimal bounds for each filter as
follows:
1) Pass the (unmodified) clip bounds to the root node
of the DAG in the first recursive call to onFilterImage()
as the Context's fClipBounds.
2) Reverse-map the clip: when recursing up the DAG in
filterInput[GPU](), apply filter-specific expansion to the
clip by calling calling onFilterNodeBounds(... kReverse).
This allows upstream nodes to have a clip that respects the
current node's requirements. This is done via helper
function mapContext().
3) Forward-map the source bitmap: just prior to applying
the crop rect in applyCropRect(), we determine the filter's
preferred bounds by mapping the source bitmap bounds
forwards via onFilterNodeBounds(..., kForward).
NOTE: GMs affected by this change:
fast_slow_blurimagefilter: fast and slow paths now produce the same result
spritebitmap: drawSprite() and drawBitmap() paths now produce the same result
filterfastbounds: fast bounds are optimized; all drop-shadow results now appear
apply-filter: snug and not-snug cases give same results
dropshadowimagefilter: drawSprite() results now show shadows
draw-with-filter: no artifacts on erode edges; blur edges no longer clipped
displacement, imagefiltersbase, imagefiltersclipped, imagefilterscropexpand, imagefiltersscaled, matriximagefilter,
resizeimagefilter, localmatriximagefilter, testimagefilters: fixed incorrect clipping
imagefilterstransformed, morphology: no artifacts on erode edges
BUG=skia:1062,skia:3194,skia:3939,skia:4337,skia:4526
Review URL: https://codereview.chromium.org/1308703007
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Errors this should fix:
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN/builds/3779/steps/dm/logs/stdio
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN/builds/3779/steps/nanobench/logs/stdio
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot
TBR=reed@google.com
No API changes.
BUG=skia:
Review URL: https://codereview.chromium.org/1504313005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1513723002
|
|
|
|
|
|
|
|
| |
BUG=555779
Committed: https://skia.googlesource.com/skia/+/624c59a1c7af38eb83e803f345a6f3e225475a08
Review URL: https://codereview.chromium.org/1513483002
|
|
|
|
|
|
| |
R=reed@google.com
Review URL: https://codereview.chromium.org/1510673002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
#1 id:1 of https://codereview.chromium.org/1513483002/ )
Reason for revert:
Broke build
Original issue's description:
> Boost GrGLConicEffect's variables to all high precision
>
> BUG=555779
>
> Committed: https://skia.googlesource.com/skia/+/624c59a1c7af38eb83e803f345a6f3e225475a08
TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=555779
Review URL: https://codereview.chromium.org/1514553002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
id:160001 of https://codereview.chromium.org/1448883002/ )
Reason for revert:
"Could not create surface" on Linux GTX660 bots
Original issue's description:
> Make NVPR a GL context option instead of a GL context
>
> Make NVPR a GL context option instead of a GL context.
> This may enable NVPR to be run with command buffer
> interface.
>
> No functionality change in DM or nanobench. NVPR can
> only be run with normal GL APIs.
>
> BUG=skia:2992
>
> Committed: https://skia.googlesource.com/skia/+/eeebdb538d476c1bfc8b63a946094ca1b505ecd1
>
> Committed: https://skia.googlesource.com/skia/+/64492c43c3faee7ab0f69b1c84e0267616f85e52
TBR=mtklein@google.com,bsalomon@google.com,jvanverth@google.com,scroggo@google.com,kkinnunen@nvidia.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:2992
Review URL: https://codereview.chromium.org/1513703002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1508853005
|
|
|
|
|
|
| |
BUG=555779
Review URL: https://codereview.chromium.org/1513483002
|
|
|
|
|
|
| |
TBR=
Review URL: https://codereview.chromium.org/1510103002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1507123002/ )
Reason for revert:
I was overconfident.
Original issue's description:
> default SkPixelSerializer
>
> Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
>
> Add SkImageEncoder::CreatePixelSerializer() to return a
> PixelSerializer that calls into SkImageEncoder::EncodeData.
>
> SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
>
> Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
>
> Committed: https://skia.googlesource.com/skia/+/808ce2886d732b1055f89c8fb0f1b11b47fcb0ce
TBR=reed@google.com,scroggo@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1511183002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use correct config variable in command buffer gl context.
Before, the fConfig was errorneously used to initialize the
local variable. eglChooseConfig would update the local variable
and the fConfig member variable would never be updated.
Also add error checks to all initialization function calls.
BUG=skia:
Review URL: https://codereview.chromium.org/1505233002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
Add SkImageEncoder::CreatePixelSerializer() to return a
PixelSerializer that calls into SkImageEncoder::EncodeData.
SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
Review URL: https://codereview.chromium.org/1507123002
|
|
|
|
|
|
|
|
|
|
| |
* run count
* glyph count (per run)
* run paint (per run)
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/1507033003
|
|
|
|
|
|
|
| |
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1509913003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Update SkCodec's dox to point out that some of the data must be
read twice in order to decode
- Add an accessor that reports how much is needed for reading twice
- Make SkCodec default to use peek()
If an input stream supports peek()ing, peek() instead of reading.
This way the stream need not implement rewind()
- Make SkCodec use read() + rewind() as a backup
So that streams without peek() implemented can still function
properly (assuming they can rewind).
- read everything we may need to determine the format once
In SkCodec::NewFromStream, peek()/read() 14 bytes, which is enough
to read all of the types we support. Pass the buffer to each subtype,
which will have enough info to determine whether it is the right
type. This simplifies the code and results in less reading and
rewinding.
- NOTE: SkWbmpCodec needs the following number of bytes for the header
+ 1 (type)
+ 1 (reserved)
+ 3 (width - bytes needed to support up to 0xFFFF)
+ 3 (height - bytes needed to support up to 0xFFFF)
= 8
- in SkWebpCodec, support using read + rewind as a backup if peek does
not work.
A change in Android will add peek() to JavaInputStreamAdapter.
BUG=skia:3257
Review URL: https://codereview.chromium.org/1472123002
|
|
|
|
|
|
| |
BUG=skia:4542
Review URL: https://codereview.chromium.org/1506203002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's undefined behavior to pass null as src or dst to memcpy, even if len is 0.
This currently triggers -fsanitize=attribute-nonnull warnings, but also can
lead to very unexpected code generation with GCC.
sk_careful_memcpy() checks len first before calling memcpy(),
which prevents that weird undefined situation.
This allows me to mark all sanitizers as no-recover, i.e. make-the-bots-red fatal.
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot
BUG=skia:4641
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/1510683002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1507123002/ )
Reason for revert:
Breaking DEPS roll (linker error)
Original issue's description:
> default SkPixelSerializer
>
> Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
>
> Add SkImageEncoder::CreatePixelSerializer() to return a
> PixelSerializer that calls into SkImageEncoder::EncodeData.
>
> SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
>
> Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
TBR=scroggo@google.com,halcanary@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1505203003
|
|
|
|
|
|
| |
when tiling)
Review URL: https://codereview.chromium.org/1510903002
|
|
|
|
|
|
|
|
|
|
| |
Batches together path range draws whose view matrices differ by a
simple translation by pre-translating the individual path transforms
during the copy.
BUG=skia:
Review URL: https://codereview.chromium.org/1507203002
|
|
|
|
|
|
|
|
| |
color vertices, even when we can't batch across color changes
BUG=skia:
Review URL: https://codereview.chromium.org/1502253003
|
|
|
|
|
|
|
|
|
|
|
| |
Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
Add SkImageEncoder::CreatePixelSerializer() to return a
PixelSerializer that calls into SkImageEncoder::EncodeData.
SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
Review URL: https://codereview.chromium.org/1507123002
|
|
|
|
|
|
|
|
|
|
| |
Replaces drawPathsFromRange with a more general drawPathBatch method.
While this still isn't perfect, it's a step in the right direction that
removes the need for path range draws to fit in a public API.
BUG=skia:
Review URL: https://codereview.chromium.org/1506823004
|
|
|
|
|
|
|
|
| |
In the repro case the conic in question has a replicated control point at the end. These points end up being slightly different by the time they get to convert_noninflect_cubic_to_quads so the initial checks for a zero vector don't fire. The following checks, in the constrainWithinTangents path, do fire however leading to a premature termination of conversion to quads.
BUG=skia:4611
Review URL: https://codereview.chromium.org/1504983003
|
|
|
|
|
|
|
|
|
|
| |
Check to see if the point is preceeded or followed
by a line with a computable tangent before adding the join.
R=reed@google.com
BUG=566075
Review URL: https://codereview.chromium.org/1504043002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make NVPR a GL context option instead of a GL context.
This may enable NVPR to be run with command buffer
interface.
No functionality change in DM or nanobench. NVPR can
only be run with normal GL APIs.
BUG=skia:2992
Committed: https://skia.googlesource.com/skia/+/eeebdb538d476c1bfc8b63a946094ca1b505ecd1
Review URL: https://codereview.chromium.org/1448883002
|
|
|
|
|
|
|
|
|
|
|
|
| |
When using NVPR, sometimes paths must be stroked by Skia and then drawn
with fill using NVPR. In these cases, use the fill type and bounds of
the stroked path, not the original path.
Fixes degeneratesegments for nvprmsaa backends.
BUG=skia:4608
Review URL: https://codereview.chromium.org/1504753003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1506663002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1503213003
|