There are only a handful of SkFlattenables that are not flattenable. That
there are any seems highly illogical. To make this look less like a normal
thing, this removes both macros that marked SkFlattenables as non-flattenable
(in slightly different ways).
The handful of SkFlattenables in our codebase that can't be flattened now
assert violently that they can't be flattened. They're internal or
part of animator... places where we'll never actually flatten them.
TestLooper and DummyRasterizer were so trivial that I just made them flattenable.
BUG=skia:
Review URL: https://codereview.chromium.org/841753002
In 32 bits, it's possible that multiplying 2 32b values might overflow a size_t, which could be 32b unsigned in that context, so I added a check for size_t overflow.
BUG=445831
Review URL: https://codereview.chromium.org/836733005
Make all fields of inspector view (details tab, clipstack tab, geometry
view) update the correct info when user selects a draw command. Also
update the info regardless if the painting is paused or not.
Current clip and matrix will not update consistently even after this
patch, as they depend on stateful debug canvas draw (may be fixed
later).
Review URL: https://codereview.chromium.org/835903002
- use std tolerance in edgebuilder, since the path has not been scaled-up to its super-sample size (that happens in the builder methods.
- off-by-1 fix for pathops when using the output of the conicquadder
BUG=skia:
Review URL: https://codereview.chromium.org/837023002
The SkDebugCanvas can be (or is currently) being used to draw to multiple
different canvases. If this use-case is intended, then storing draw
-related state in the canvas causes bugs.
Remove draw window size state form SkDebugCanvas. Instead, use the canvas
base layer size as the window size to clip to. This is consistent with
the current use in debugger.
This is part of work trying to remove bugs in debugger that result from
replaying one SkDrawCanvas to two different canvases. Currently the
SkDrawCanvas stores state that can only be valid if it is used for one
canvas.
Review URL: https://codereview.chromium.org/835113002
kkinnunen@ has been seeing compiler warnings on GrScratchKey::GenerateResourceType (https://codereview.chromium.org/833913002/ - Cast the scratch resource key in order to fix a warning)(presumably due to the unsigned/signed comparison in kInvalidResourceType == type). This CL limits the returned id to its effective range to, hopefully, clarify the whole int32_t -> uint32_t conversion & wrapping problem.
Review URL: https://codereview.chromium.org/827923006
Update the picture view in the debugger when the first command is
selected. DebugCanvas::drawTo(index) draws up to and including the index.
Review URL: https://codereview.chromium.org/837483002
When both edges of a thin (sub-unit) stroke fall within the same pixel, we compute the wrong coverage and also blit the same line twice.
To avoid these issues, tweak the inner/outer hulls to ensure one of the edges is always pixel-aligned.
BUG=skia:3278
R=reed@google.com
Review URL: https://codereview.chromium.org/819253003
This is achieved but chopping up conics into quads.
With this change conics should be ready to be used on the gpu side of things
BUG=skia:3258
Review URL: https://codereview.chromium.org/825443002
This is intended to provide additional information for a flaky assertion failure on ChromeOS Daisy.
BUG=skia:3282
Review URL: https://codereview.chromium.org/821683002
This program takes a list of Skia Picture (SKP) files and
renders each as a multipage PDF, then prints out the MD5
checksum of the PDF file. This can be used to verify that
changes to the PDF backend will not change PDF output.
Review URL: https://codereview.chromium.org/832403002
This removes the SkRecords::Clear struct and everything that refers to it.
Notice there is nothing actually creating a Clear, which means this is all
dead code.
Now that all ops obey the clip, I don't think we need the weird
inflate-empty-to-epsilon hack for BBH queries.
BUG=skia:
Review URL: https://codereview.chromium.org/835813002