Commit Graph

27929 Commits

Author SHA1 Message Date
Jim Van Verth
e7e1d9d039 Fix up shadows in raster.
* Re-enable shadow blurs for raster circles and rrects
* Fix up the tessellation as much as possible to remove skinny triangles

Bug: skia:6425
Change-Id: I6548055084bc8596a052bcd3cec852766e084ba2
Reviewed-on: https://skia-review.googlesource.com/14943
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-05-02 14:25:28 +00:00
Greg Daniel
207282eb5a Make GrBackendTexture take Gr*Info refs in ctor, and copy them.
Bug: skia:
Change-Id: Ic05d3384fa07560fc18c52bb8ae03541a72515f7
Reviewed-on: https://skia-review.googlesource.com/14374
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-05-02 14:08:28 +00:00
Brian Osman
f6782442ba Remove declaration of SkTextureImageSetTexture, which does not exist
Bug: skia:
Change-Id: Ifb7edcae491ef48fbc69324d9dfb97a298104db9
Reviewed-on: https://skia-review.googlesource.com/15073
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-05-02 14:04:08 +00:00
Adrienne Walker
6a280a50ed Expose resetForNextPicture in SkNoDrawCanvas
SkRecorder has some private Skia behavior with the way it handles an
SkNoDrawCanvas that is not exposed.  In particular, it's able to create
an arbitrary SkIRect device clip at construction time.

This is a performance optimization when reusing SkNoDrawCanvas across
multiple recordings instead of reconstructing a new canvas every time.

https://codereview.chromium.org/2768143002 is trying to implement
another version of SkPictureBuilder/SkRecorder and so wants to be able
to use similar SkNoDrawCanvas behavior.

Change-Id: I0ac5f0eef8f0548cefd7354062311667cf448b07
Reviewed-on: https://skia-review.googlesource.com/11320
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-02 13:52:09 +00:00
Matt Sarett
687cc6c033 colorspaceinfo tool: Add flag to indicate that the input is an icc profile
Bug: skia:
Change-Id: Ieb5cff92bae1aa64df5bc7f3a398514fe5b20f77
Reviewed-on: https://skia-review.googlesource.com/14956
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-05-02 13:22:20 +00:00
Matt Sarett
ab865b0883 Remove legacy pixelref flag from bzl
NOTRY=true

Bug: skia:6535
Change-Id: I29d786cef240aaeaca829b4a9a25ff1a8f078588
Reviewed-on: https://skia-review.googlesource.com/15000
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-05-02 12:38:25 +00:00
Ben Wagner
d271ba2688 Revert "Remove copyTo() legacy API flag from bzl"
This reverts commit 65083e444c.

Reason for revert: Causes build failures.

Original change's description:
> Remove copyTo() legacy API flag from bzl
> 
> NOTRY=true
> 
> Bug: skia:6464
> Change-Id: Ia3935998960054df9e54cfb2aead66549c629c04
> Reviewed-on: https://skia-review.googlesource.com/15001
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
> 

TBR=msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I9d82c7b699e106238981e32553e975c91e42cfb8
Reviewed-on: https://skia-review.googlesource.com/15021
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-05-02 01:19:18 +00:00
Matt Sarett
1fa986c95a Added A2B support to colorspaceinfo tool
Tool now parses A2B images/profiles.
Tool can now display a cross-section based visualization for the color
look-up tables in A2B profiles.

BUG=skia:

Change-Id: I68abb3e947b080c533e283783d7859feea8d35d6
Reviewed-on: https://skia-review.googlesource.com/6119
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-05-01 22:10:58 +00:00
Matt Sarett
65083e444c Remove copyTo() legacy API flag from bzl
NOTRY=true

Bug: skia:6464
Change-Id: Ia3935998960054df9e54cfb2aead66549c629c04
Reviewed-on: https://skia-review.googlesource.com/15001
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-05-01 22:05:38 +00:00
Mike Klein
b34ab04884 Revert "Revert "SaveLayerRec::fClipMask -> raw pointer""
This reverts commit 3354969a4a.

Reason for revert: not the problem?

Original change's description:
> Revert "SaveLayerRec::fClipMask -> raw pointer"
> 
> This reverts commit a6b72cb572.
> 
> Reason for revert: red bots
> 
> Original change's description:
> > SaveLayerRec::fClipMask -> raw pointer
> > 
> > Use raw pointers for optional clip mask plumbing, to match the backdrop
> > API.
> > 
> > Change-Id: I7eb0ee5896faf34cc05789ba0703f35a4ab6a4f2
> > Reviewed-on: https://skia-review.googlesource.com/14901
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> > 
> 
> TBR=fmalita@chromium.org,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: I4387620cdc3410018af9cef221e5cf8d09015380
> Reviewed-on: https://skia-review.googlesource.com/14955
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> 

TBR=mtklein@chromium.org,reviews@skia.org,fmalita@chromium.org,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I6dde9e0441928f7a7423139a5c39f520f892f4b5
Reviewed-on: https://skia-review.googlesource.com/14958
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-01 21:36:43 +00:00
Mike Klein
cea615b497 Revert "Add a clip mask bench"
This reverts commit c59a38d12d.

Reason for revert: whoops, sorry, this one must have been the problem.

Original change's description:
> Add a clip mask bench
> 
> Change-Id: I230729492fc23e290136f7d62610abe5ca51c067
> Reviewed-on: https://skia-review.googlesource.com/14941
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> 

TBR=fmalita@chromium.org,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ifbd74a8985ebaa95e54032aaaa2891b0f1b67940
Reviewed-on: https://skia-review.googlesource.com/14957
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-01 21:34:00 +00:00
Mike Klein
3354969a4a Revert "SaveLayerRec::fClipMask -> raw pointer"
This reverts commit a6b72cb572.

Reason for revert: red bots

Original change's description:
> SaveLayerRec::fClipMask -> raw pointer
> 
> Use raw pointers for optional clip mask plumbing, to match the backdrop
> API.
> 
> Change-Id: I7eb0ee5896faf34cc05789ba0703f35a4ab6a4f2
> Reviewed-on: https://skia-review.googlesource.com/14901
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> 

TBR=fmalita@chromium.org,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I4387620cdc3410018af9cef221e5cf8d09015380
Reviewed-on: https://skia-review.googlesource.com/14955
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-01 21:31:40 +00:00
Florin Malita
c59a38d12d Add a clip mask bench
Change-Id: I230729492fc23e290136f7d62610abe5ca51c067
Reviewed-on: https://skia-review.googlesource.com/14941
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-05-01 21:27:00 +00:00
Florin Malita
a6b72cb572 SaveLayerRec::fClipMask -> raw pointer
Use raw pointers for optional clip mask plumbing, to match the backdrop
API.

Change-Id: I7eb0ee5896faf34cc05789ba0703f35a4ab6a4f2
Reviewed-on: https://skia-review.googlesource.com/14901
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-05-01 21:26:01 +00:00
Mike Klein
5664e65eb1 finish up constants
For whatever reason, if I swap the condition in the if_then_else tests
from < to >= and swap the then/else values, I can use constants in
hsl_to_rgb.  Still don't understand why, but I'll take it.  I suspect it
has something to do with SSE, IEEE, and NaN, but I don't care enough to
speculate any more concretely.

This does that, removes C() and _f, updates some comments, and adds a
guard in build_stages.py to yell if it sees trouble like LCPI40_4...

This reminds me to try -ffast-math soon.  I think that was mostly held
back by constants.

Change-Id: I3f8a37a4d4642f77422ce3261b750061e9e604a3
Reviewed-on: https://skia-review.googlesource.com/14942
Reviewed-by: Herb Derby <herb@google.com>
2017-05-01 20:59:45 +00:00
Mike Klein
879a08ac14 refactor hsl_to_rgb a touch
This rewrites the existing logic to expose more of the symmetries,
and especially to make them clearly identical subexpressions.

I think it's clear that the intent in hue_to_rgb is to wrap the t value
back into 0-1... that's t = fract(t).

No GM diffs.

Change-Id: I9d62d8f80bcb45711ee334f953d3f6410e068ce4
Reviewed-on: https://skia-review.googlesource.com/14940
Reviewed-by: Herb Derby <herb@google.com>
2017-05-01 20:59:45 +00:00
Ben Wagner
6ab223e0f0 Update Nexus6p to Android O developer release.
No-Try: true
Change-Id: I1b39d3548d0979385b24558170fdcd6d766a63bd
Reviewed-on: https://skia-review.googlesource.com/14900
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-05-01 19:54:00 +00:00
Mike Klein
b3665f0160 fix t / t2 confusion in hsl_to_rgb
I think the original[1] SkRasterPipeline_opts.h version had a typo that
I faithfully copied over to hsl_to_rgb.  In Hue2RGB[2], the scalar
equivalent of hue_to_rgb, we mutate t to keep it in 0-1 range[3].  In
the SkRasterPipeline_opts.h code we introduced a new value t2 instead,
and then used it everywhere, but accidentally typed 't' in the t < 1/6 case.

The expression "p + (q - p)*6.0f*t" should have been "p + (q - p)*6.0f*t2".

This fixes things by changing t in place, much like Hue2RGB does.

The GM doesn't change anywhere, which is troubling.

[1] https://skia-review.googlesource.com/c/7460/21/src/opts/SkRasterPipeline_opts.h#808
[2] https://skia-review.googlesource.com/c/7460/21/src/effects/SkHighContrastFilter.cpp#26
[3] I think this whole clamp should probably become "t = fract(t)".
    Will follow up.

Change-Id: I3dcc1a79ffae46830178d931844ee3113f8bdfd1
Reviewed-on: https://skia-review.googlesource.com/14910
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-01 19:30:46 +00:00
Mike Klein
fb11acdeef getting close on float constants
I think I'm now down to just the constants used in comparisons in
hsl_to_rgb... so weird.  I don't get what's special about this code.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win7-MSVC-Golo-CPU-AVX-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2

Change-Id: I398139f00371bdbc45281a49bca56d02ba59cba9
Reviewed-on: https://skia-review.googlesource.com/14909
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-01 18:52:53 +00:00
bungeman
7575bb1c38 SkFontMgr::matchFamily should not crash on nullptr.
While all systems can resolve a font from just a style request
(without a name) almost no systems specify a default font family.

BUG=skia:6574

Change-Id: If7c81808b62cd5d8212bce2eb4d9c476c45af80a
Reviewed-on: https://skia-review.googlesource.com/14902
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-05-01 18:13:02 +00:00
Mike Klein
fe560a8cc3 some float constants
Trying to go slowly to find where problems arise.
Weirdly, I think I got everything except hsl_to_rgb.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win7-MSVC-Golo-CPU-AVX-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2

Change-Id: I4d85a4c1f40bd87e7cb18fc9b5ce020812dc31db
Reviewed-on: https://skia-review.googlesource.com/14905
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-05-01 18:11:12 +00:00
Leon Scroggins III
2005d77c01 Blacklist SkImage_makeTextureImage on NVIDIA Win10 Vulkan
Bug: skia:6554
Change-Id: I7c1086ce6afff84c1b1463ec58c2c6a9949aaa2e
Reviewed-on: https://skia-review.googlesource.com/14907
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-05-01 17:58:42 +00:00
Greg Daniel
6125efd1fc Fix Creation of GrBackendRenderTarget from GrBackendRenderTargetDesc in GL
Bug: skia:
Change-Id: I970e7bc36ae799996f9b28e70f97cb7ce4382eb2
Reviewed-on: https://skia-review.googlesource.com/14906
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-05-01 17:41:12 +00:00
Matt Sarett
d170c0fb48 Only store width and height on SkPixelRef (last part)
Relanding https://skia-review.googlesource.com/c/14105/
in pieces to try to diagnose problems with the Chrome
roll.

Bug: skia:6535
Change-Id: Iefe4825b9ce9be999baeec8ab7ae6651f1caf451
Reviewed-on: https://skia-review.googlesource.com/14860
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-05-01 17:01:29 +00:00
Matt Sarett
6c50a2e9ba Blacklist testimgari.jpg on CG
Bug: skia:
Change-Id: I2c471d18f29bb6d0e8ac4a4d0afa1815788bb121
Reviewed-on: https://skia-review.googlesource.com/14825
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-05-01 16:19:50 +00:00
Florin Malita
25b37430e6 Restore legacy SaveLayerRec ctor
Let's not break existing clients.

Change-Id: I056fefefb49d46fb284597c5bcf0319470537524
Reviewed-on: https://skia-review.googlesource.com/14829
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-05-01 15:29:55 +00:00
Ben Wagner
489530e06c Fix merge conflict.
I accidentally caused a merged conflict between
https://skia-review.googlesource.com/14656 and
https://skia-review.googlesource.com/14821

No-Try: true
Change-Id: Ib00b293019fddc3951a5d413744b9d186dd103d8
Reviewed-on: https://skia-review.googlesource.com/14840
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-05-01 15:18:55 +00:00
Leon Scroggins III
8d9201a798 Remove unnecessary SkFILEStream::getMemoryBase
It overrides the SkStream:: version, but does the same thing.

Change-Id: I857f2119a85bb3f942707ab3cef58b45a2cf4b7a
Reviewed-on: https://skia-review.googlesource.com/14828
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-05-01 15:17:15 +00:00
Matt Sarett
f758311c73 Only store width and height on SkPixelRef (part 2)
Relanding https://skia-review.googlesource.com/c/14105/
in pieces to try to diagnose problems with the Chrome
roll.

Bug: skia:6535
Change-Id: Iada034fc41ef315f7f00984d8de9d9cc2f361ad2
Reviewed-on: https://skia-review.googlesource.com/14657
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-05-01 15:01:05 +00:00
Ben Wagner
38a56016b1 Omit shapes_mixed_10000_32x33 on GTX960 ANGLE Release
Bug: skia:6534
Change-Id: I5634b35c3a231da8b5714209889921933ca38962
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/14656
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-05-01 14:42:34 +00:00
Ben Wagner
bb3e7ffa3e Omit HalfFloatAlphaTextureTest on CommandBuffer bot.
Bug: chromium:697030
No-Try: true
Change-Id: Ib56c88c384e6b363aefe91c7027fa587d0b000b5
Reviewed-on: https://skia-review.googlesource.com/14648
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-05-01 14:37:49 +00:00
Ben Wagner
f835c22166 Add Swarming bot id and task id to recipe expectations.
No-Try: true
Change-Id: Idd748bf61ab3d6611b85472de5d3f3a25d4ae9ee
Reviewed-on: https://skia-review.googlesource.com/14821
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-05-01 14:37:29 +00:00
Greg Daniel
bcf612b5d0 Revert "Revert "Plumb the use of GrBackendRenderTarget throughout Skia""
This reverts commit e3bd422faf.

Reason for revert: Pre-req changes have all landed in other projects at this point.

Original change's description:
> Revert "Plumb the use of GrBackendRenderTarget throughout Skia"
> 
> This reverts commit fdd77daedb.
> 
> Reason for revert: Apparently I have a few more build files to update before this can land.
> 
> Original change's description:
> > Plumb the use of GrBackendRenderTarget throughout Skia
> > 
> > Bug: skia:
> > Change-Id: Ib99a58d9552f5c7b8d77c09dcc72fa88326c26aa
> > Reviewed-on: https://skia-review.googlesource.com/14148
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > 
> 
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: I984e1909870182474c4c3cce257f01b6a9d8581f
> Reviewed-on: https://skia-review.googlesource.com/14531
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> 

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Ib7ab94aada8a7cb80fe38f24daf32f9208c5b169
Reviewed-on: https://skia-review.googlesource.com/14826
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-05-01 14:14:50 +00:00
Florin Malita
53f77bd4fd Initial clip-mask-layer support
SkBitmapDevice-only implementation.

Will add A8 fast path specializations in a follow-up.

Change-Id: I2ccb1ffba3689e92ac90a23e94737471dfb121a1
BUG=skia:6005

Change-Id: I2ccb1ffba3689e92ac90a23e94737471dfb121a1
Reviewed-on: https://skia-review.googlesource.com/14183
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-05-01 14:07:10 +00:00
Jim Van Verth
57061eea44 Optimizations for analytic shadows.
Lots of changes here:
* Batch circle shadows with rrect shadows
* Avoid checking matrix and path conditions twice
* Remove lots of checks for 1/2 pixel radii
  (needed before to force the rrect through the
   regular GPU path)
* Fix scaling effect on ambient blur width
* Remove unused flags

Bug: skia:6119
Change-Id: If0eb78ec4d19d9f978b19bdbc3a7e558a4db2ed9
Reviewed-on: https://skia-review.googlesource.com/14654
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-05-01 14:03:10 +00:00
UpdateSKPs
0c5cf5d7a2 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: Ic3ced4cb5f518abc5d1d0611f68fce4b976f5082
Reviewed-on: https://skia-review.googlesource.com/14679
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>
2017-04-30 07:29:44 +00:00
Florin Malita
135c908812 Remove temporary_internal_describeTopLayer
Change-Id: I035b7db84b524be13fb675b75bc402bc9b733cb5
Reviewed-on: https://skia-review.googlesource.com/13803
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-04-28 20:44:44 +00:00
Cary Clark
2a475eae62 add drawString helper to canvas
Many tests and examples use drawText with
a guess of how long the text is in bytes,
or a call to strlen(). Add a helper to
SkCanvas to simplify these examples.

Add another helper for SkString.

R=reed@google.com

Change-Id: I0204a31e938f065606f08ee7cd9a6b36db791ee2
Reviewed-on: https://skia-review.googlesource.com/13642
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Cary Clark <caryclark@skia.org>
2017-04-28 20:41:04 +00:00
Matt Sarett
ec138b40ba Fix bitmap copy gms
Mark pixels as opaque so copying to 565 continues to work.

Bug: skia:
Change-Id: Id2b0a8c462fe35f7d1cc2ccc32ca10eda18981c8
Reviewed-on: https://skia-review.googlesource.com/14653
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-04-28 20:32:44 +00:00
Matt Sarett
a6e976aac8 Only store width and height on SkPixelRef (part 1)
Relanding https://skia-review.googlesource.com/c/14105/
in pieces to try to diagnose problems with the Chrome
roll.

Bug: skia:6535
Change-Id: Ic321c437ecd3cb7940a48fd73fc22b192804c67a
Reviewed-on: https://skia-review.googlesource.com/14650
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-04-28 20:14:55 +00:00
Brian Osman
dc87c95382 Combine GPU flush with semaphore API
Bug: skia:
Change-Id: I5f388760d43b19755b2767d95d32065f6d0f926e
Reviewed-on: https://skia-review.googlesource.com/14646
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-04-28 18:25:37 +00:00
Mike Reed
736a9cc88d remove unused yuv methods
Bug: skia:
Change-Id: Ie1e6c905d8989b49c2cf5c9e5fd1f383268f6480
Reviewed-on: https://skia-review.googlesource.com/14645
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-28 18:25:17 +00:00
Mike Reed
185ba21bff change drawAtlas to behave like drawVertices
Bug: skia:6571
Change-Id: If60c30755ec0548df0e9bdeca2f3af0bc87764ca
Reviewed-on: https://skia-review.googlesource.com/14642
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-28 17:38:53 +00:00
Ben Wagner
2fcd4a480d Revert "Only store width and height on SkPixelRef"
This reverts commit 2cbb6662e3.

Reason for revert: Likely cause of Chromium DEPS roll failure; speculative revert.

Original change's description:
> Only store width and height on SkPixelRef
>
> Bug: skia:6535
> Change-Id: Id91e8d1e82f593be7d4b23ca5abde752f2666a77
> Reviewed-on: https://skia-review.googlesource.com/14105
> Commit-Queue: Matt Sarett <msarett@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
>

TBR=djsollen@google.com,msarett@google.com,reed@google.com,stani@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I12a024a71833f33432d5ea8cffdfc642b8b4240a
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/14644
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-04-28 17:06:23 +00:00
Matt Sarett
68b8e3d50d Revert "Revert "Delete copyTo(Allocator), hide copyTo() behind flag""
This reverts commit 0122af08f6.

Reason for revert: Fixed Android callsite

Original change's description:
> Revert "Delete copyTo(Allocator), hide copyTo() behind flag"
> 
> This reverts commit d4a338f4d0.
> 
> Reason for revert: Looks like I missed something I was supposed to delete in Android.
> 
> Original change's description:
> > Delete copyTo(Allocator), hide copyTo() behind flag
> > 
> > Replace uses of copyTo() in Skia.
> > 
> > Bug: skia:6464
> > Change-Id: I921dc53a1c29a5176d18f05741f7c0b5a008e548
> > Reviewed-on: https://skia-review.googlesource.com/14502
> > Commit-Queue: Matt Sarett <msarett@google.com>
> > Reviewed-by: Mike Reed <reed@google.com>
> > 
> 
> TBR=msarett@google.com,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: I4d252940cc6a2462b030007055ea6c229471fc6e
> Reviewed-on: https://skia-review.googlesource.com/14602
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
> 

TBR=msarett@google.com,reviews@skia.org,reed@google.com

Change-Id: I81659a820f79f1958fda23cb62513065b57db99d
Reviewed-on: https://skia-review.googlesource.com/14640
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-04-28 15:49:04 +00:00
Mike Reed
0acd7954a9 add helper makeShader for the common Clamp case
Bug: skia:
Change-Id: I22cac56f35fed16daede0cf1b3e34dfa6f5ae3ea
Reviewed-on: https://skia-review.googlesource.com/14625
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-28 15:36:14 +00:00
Jim Van Verth
b6069dfba7 Fix fast blur for shadow rrects.
* Handles case where blur is greater than
  corner radius.
* Speeds up shader by avoiding a divide.
* Tweaks shadow sample to be more MD-ish.

Bug: skia:
Change-Id: I2990357b39784c22f02a8e51872391fd68e8226a
Reviewed-on: https://skia-review.googlesource.com/14141
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-04-28 15:34:54 +00:00
Florin Malita
713b8ef374 Scrub DeviceCM
* remove unused fMatrix, fMatrixStorage
* fPaint  -> std::unique_ptr<>
* fDevice -> sk_sp<>

Change-Id: I790b54bfc4d8154216e620a8c1642f3955fe7be0
Reviewed-on: https://skia-review.googlesource.com/14624
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-04-28 15:21:22 +00:00
Ravi Mistry
d596c3f464 Testing permissions
Bug: skia:
Change-Id: I204a0956228de5afde9c5df02dc5afa12ab21bfd
Reviewed-on: https://skia-review.googlesource.com/14609
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2017-04-28 15:12:32 +00:00
Ben Wagner
1e9a30f944 Add non-Valgrind PreAbandonGpuContext bot.
This may help debug timeouts for
Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind_PreAbandonGpuContext

Also stop uploading *AbandonGpuContext results to Gold.

No-Try: true
Change-Id: Ifa10d47cf27f86424d3936f451d190ee34f5637d
Reviewed-on: https://skia-review.googlesource.com/14525
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-04-28 15:07:28 +00:00