The new test is disabled by default, as it's quite slow.
We can run it if we suspect problems by passing -x to DM.
This test would have been failing before the bug fix, and now is passing.
Assuming the Priv on the end means it's not considered public API...
TBR=reed@google.com
BUG=skia:4052
Review URL: https://codereview.chromium.org/1228333003
Convert the Mac-specific font text statically into
paths so that they draw the same on all platforms.
Add drawing portable text using the fake bold paint
setting so that the code path is tested everywhere
and but draws the same thing.
R=reed@google.com
Review URL: https://codereview.chromium.org/1234463006
There is nothing left in the SkFontMgr_android.cpp which is specific
to Android, so allow it to be built and used on *nix platforms. This
allows for easier development and testing.
The only reason to limit to *nix platforms are the dependencies on
Expat and FreeType. This should be buildable and runnable on other
platforms when these dependencies are also available.
Review URL: https://codereview.chromium.org/1228833003
Put font glyph data in test as path
instead of getting data from the Mac
font. THe font may change, and is
not available on most platforms.
Also remove unreachable code.
R=reed@google.com
Review URL: https://codereview.chromium.org/1230703005
The multicolored font that funster enables
only draws and measures on some platforms.
Removing it from the dcshader gm allows
the layout to be uniform on all devices,
making it easier to compare the output
in gold.
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/1231853004
The fixes are in the updated libjpeg-turbo repository
pulled in by DEPS. The fixes are detailed in the linked
skia bug. To summarize briefly, we now use calloc()
instead of malloc().
BUG=skia:4030
Review URL: https://codereview.chromium.org/1237213004
Define SK_SUPPORT_LEGACY_ONDRAWIMAGERECT when building for the
Android framework, since SkiaCanvasProxy overrides the old version
of the method.
Fixes master-skia build.
NOTRY=True
Review URL: https://codereview.chromium.org/1237903002
The problem turns out to be not over- or underflow like I thought, but that I used different math for x*y/255 for alphas and colors, sometimes resulting in colors where alpha was one less than the maximum color component, which is not a valid SkPMColor.
To be safe, I've switched over all four of these similar complex modes to use exact math everywhere. They now match the byte-by-byte code in SkXfermode.cpp exactly.
This will slow down Darken and Lighten by about 2x. I plan to follow up with a CL to see if I can eek out some speed there, and another CL to add asserts that Sk4px code always writes valid SkPMColors.
BUG=skia:4052
Review URL: https://codereview.chromium.org/1241683003
and are treated as convex when they are not.
Allow the SkPath::Iter to leave degenerate path
segments unmolested by passing an additional exact
bool to next().
Treat any non-zero length as significant in addPt().
R=reed@google.com,robertphillips@google.com
BUG=493450
Review URL: https://codereview.chromium.org/1228383002
Implement support for path rendering in Chromium through
CHROMIUM_path_rendering pseudo extension.
The extension defines a new pseudo-gl function,
BindFragmentInputLocation. This behaves similarly to the
BindUniformLocation pseudo-gl function. The idea is to assign fragment
input location to a fragment input before linking the program.
BUG=chromium:344330
Committed: https://skia.googlesource.com/skia/+/eeef46d181f9f8db388ecea81df699fc1b3c9280
Review URL: https://codereview.chromium.org/1192663002
While investigating my bug (skia:4052) I saw this TODO and figured
it'd make me feel better about an otherwise unsuccessful investigation.
This speeds up HardLight and Overlay (same code) by about 15% with SSE, mostly
by rewriting the logic from 1 cheap comparison and 2 expensive div255() calls
to 2 cheap comparisons and 1 expensive div255().
NEON speeds up by a more modest ~3%.
BUG=skia:
Review URL: https://codereview.chromium.org/1230663005
This was causing the 3 xfermodes that use floats and conditionals
to draw wrong when SKNX_NO_SIMD was defined.
BUG=skia:4051
Review URL: https://codereview.chromium.org/1229013003
When only the left or top edge of a crop rect is given, the
right and bottom should be computed based on the incoming width
and height, not based on the crop rect's width & height. This
complies more accurately with SVG semantics.
BUG=240827
Review URL: https://codereview.chromium.org/1232873002
Fuse AutoRestoreFragmentProcessors and AutoRestoreProcessorDataManager into new AutoRestoreFragmentProcessorState class
BUG=skia:
Review URL: https://codereview.chromium.org/1228763005