platform/upstream/libSkiaSharp.git
8 years agoAdd tools/ubsan.supp.
Mike Klein [Wed, 5 Aug 2015 14:12:33 +0000 (10:12 -0400)]
Add tools/ubsan.supp.

Should unbreak TSAN bots.

BUG=skia:

Review URL: https://codereview.chromium.org/1272213003 .

8 years agoinit atomic bool in SkImage_Gpu
bsalomon [Wed, 5 Aug 2015 13:58:39 +0000 (06:58 -0700)]
init atomic bool in SkImage_Gpu

BUG=chromium:516860

TBR=reed@google.com

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/1269243004

8 years agoRevert of Break LCD and Bitmap text dependency on hardcoded atlas values (patchset...
joshualitt [Wed, 5 Aug 2015 13:46:09 +0000 (06:46 -0700)]
Revert of Break LCD and Bitmap text dependency on hardcoded atlas values (patchset #2 id:20001 of https://codereview.chromium.org/1271873002/ )

Reason for revert:
Breaks S3

Original issue's description:
> Break LCD and Bitmap text dependency on hardcoded atlas values
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/846b022f6b469cfde285372f26e0d5c593d122ac

TBR=jvanverth@google.com,bsalomon@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1271163003

8 years agoMove atlas creation to internal to GrResourceProvider
joshualitt [Wed, 5 Aug 2015 13:36:39 +0000 (06:36 -0700)]
Move atlas creation to internal to GrResourceProvider

BUG=skia:

Review URL: https://codereview.chromium.org/1260183006

8 years ago- allow for stepping through a picture with 'n' and 'p'
reed [Wed, 5 Aug 2015 01:46:38 +0000 (18:46 -0700)]
- allow for stepping through a picture with 'n' and 'p'
- save current slide as .skp with 'K'

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1272063002

8 years agoRevert of IWYU: 'core' target, files starting A-C. (patchset #5 id:80001 of https...
reed [Wed, 5 Aug 2015 01:44:56 +0000 (18:44 -0700)]
Revert of IWYU: 'core' target, files starting A-C. (patchset #5 id:80001 of https://codereview.chromium.org/1265033002/ )

Reason for revert:
revert to unblock DEPS roll

../../chrome/browser/chromeos/display/overscan_calibrator.cc:43:10: error: variable has incomplete type 'SkPath'
  SkPath base_path;

Original issue's description:
> IWYU: 'core' target, files starting A-C.
>
> TBR=reed@google.com
> Verbal lgtm, does not change API.
>
> Committed: https://skia.googlesource.com/skia/+/7403d87db8e43d4c2b5b25ac22a0ebc22bd09d69

TBR=reed@google.com,mtklein@google.com,bungeman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1273613002

8 years agoIWYU: 'core' target, files starting A-C.
bungeman [Tue, 4 Aug 2015 21:56:53 +0000 (14:56 -0700)]
IWYU: 'core' target, files starting A-C.

TBR=reed@google.com
Verbal lgtm, does not change API.

Review URL: https://codereview.chromium.org/1265033002

8 years agoWhitespace change to test Gerrit ACLs
borenet [Tue, 4 Aug 2015 21:23:48 +0000 (14:23 -0700)]
Whitespace change to test Gerrit ACLs

BUG=skia:
TBR=mtklein

Review URL: https://codereview.chromium.org/1255313004

8 years agoPort morphology to SkOpts.
mtklein [Tue, 4 Aug 2015 21:09:09 +0000 (14:09 -0700)]
Port morphology to SkOpts.

Nothing too fancy.

Direction enums become enum classes so they don't get all confused.  An
alternative is to create one single Direction enum that both blur and
morphology opts use.

BUG=skia:4117

Review URL: https://codereview.chromium.org/1267343004

8 years agoRemove experimental/PdfViewer
halcanary [Tue, 4 Aug 2015 21:08:42 +0000 (14:08 -0700)]
Remove experimental/PdfViewer

Motivation: maintaining this code doesn't seem worth the time,
since no one seems to be using it.  If someone wants to use it
in the future, just revert this CL.

Review URL: https://codereview.chromium.org/1266093003

8 years agoSkPictureImageGenerator
fmalita [Tue, 4 Aug 2015 20:53:14 +0000 (13:53 -0700)]
SkPictureImageGenerator

R=reed@google.com

Review URL: https://codereview.chromium.org/1240093004

8 years agoReorganize to keep similar code together.
Mike Klein [Tue, 4 Aug 2015 20:48:43 +0000 (16:48 -0400)]
Reorganize to keep similar code together.

This organizes memset16, memset32, and rsqrt the same way as the other code.  No functional change.

BUG=skia:4117
R=djsollen@google.com

Review URL: https://codereview.chromium.org/1264423002 .

8 years agowhitespace change to test whether I can commit
Eric Boren [Tue, 4 Aug 2015 20:38:38 +0000 (16:38 -0400)]
whitespace change to test whether I can commit

BUG=skia:

Review URL: https://codereview.chromium.org/1268663005 .

8 years agoRemove dead code.
Mike Klein [Tue, 4 Aug 2015 19:49:09 +0000 (15:49 -0400)]
Remove dead code.

BUG=skia:4117
R=mtklein@google.com

Review URL: https://codereview.chromium.org/1262213005 .

8 years agoImplement caching of filled paths in the tessellated path renderer.
senorblanco [Tue, 4 Aug 2015 17:01:58 +0000 (10:01 -0700)]
Implement caching of filled paths in the tessellated path renderer.

Paths are cached as tessellated triangle meshes in vertex buffers on the GPU. Stroked paths are not (yet) cached.

Paths containing no curved segments (linear paths) are reused at all scales. Paths containing curved segments are reused within a scale tolerance threshold.

In order to invalidate the cache when an SkPath is changed or deleted,
this required implementing genID change notification in SkPath. This is
modelled almost exactly on SkPixelRef::GenIDChangeListener.
However, It does not currently implement the check for unique genIDs,
so notifiers will fire when the first instance of an SkPathRef
using a given genID is destroyed.

Another caveat is that you cannot successfully add a change notifier
to an empty path, since it uses the "canonical" empty path which is
never modified or destroyed. For this reason, we prevent adding
listeners to it.

BUG=skia:4121,skia:4122, 497403
DOCS_PREVIEW= https://skia.org/?cl=1114353004

Committed: https://skia.googlesource.com/skia/+/468dfa72eb6694145487be17876804dfca3b7adb

Review URL: https://codereview.chromium.org/1114353004

8 years agoBreak LCD and Bitmap text dependency on hardcoded atlas values
joshualitt [Tue, 4 Aug 2015 16:40:02 +0000 (09:40 -0700)]
Break LCD and Bitmap text dependency on hardcoded atlas values

BUG=skia:

Review URL: https://codereview.chromium.org/1271873002

8 years agoCreate a scanline decoder without creating a codec
scroggo [Tue, 4 Aug 2015 16:24:45 +0000 (09:24 -0700)]
Create a scanline decoder without creating a codec

Prior to this CL, if a client wanted to decode scanlines, they had to
create an SkCodec in order to get an SkScanlineDecoder. This introduces
complications if input data is not easily shared between the two
objects.

Instead, add methods to SkScanlineDecoder for creating a new one from
input data, and remove the creation functions from SkCodec.

Update DM and tests.

Review URL: https://codereview.chromium.org/1267583002

8 years agoAdd cheat sheet to wrangler doc
joshualitt [Tue, 4 Aug 2015 16:24:30 +0000 (09:24 -0700)]
Add cheat sheet to wrangler doc

BUG=skia:
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1264313003
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1264313003

8 years agoPort SkBlurImage opts to SkOpts.
mtklein [Tue, 4 Aug 2015 15:49:21 +0000 (08:49 -0700)]
Port SkBlurImage opts to SkOpts.

+268 -535 lines

I also rearranged the code a little bit to encapsulate itself better,
mostly replacing static helper functions with lambdas.  This also
let me merge the SSE2 and SSE4.1 code paths.

BUG=skia:4117

Review URL: https://codereview.chromium.org/1264103004

8 years agoRevert "Implement caching of filled paths in the tessellated path renderer."
mtklein [Tue, 4 Aug 2015 15:46:16 +0000 (08:46 -0700)]
Revert "Implement caching of filled paths in the tessellated path renderer."
This reverts commit 468dfa72eb6694145487be17876804dfca3b7adb.

    This CL caused signficant GM diffs.

Revert "Fix resource cache test."
This reverts commit b001c41ed37d2018d38ce787b412ed741585d75d.
Revert "Fix SkData leaks at GrResourceKey::setCustomData() call sites."
This reverts commit c369348aa596d7be05c9ce0ca5d349e5d1903789.

    These CLs depend on the first one.

BUG=skia:
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1260363007

8 years agoupdate image bench to test gpu and cpu images against raster surface
reed [Tue, 4 Aug 2015 15:42:40 +0000 (08:42 -0700)]
update image bench to test gpu and cpu images against raster surface

BUG=513695
TBR=

Review URL: https://codereview.chromium.org/1261043003

8 years agocache private readback for gpu-images
reed [Tue, 4 Aug 2015 15:10:13 +0000 (08:10 -0700)]
cache private readback for gpu-images

Does not try to cache calls to readPixels at the moment:
- not triggered by drawing
- not clear if we want to perform any pixel transformations (that readPixels allows) on the GPU or CPU

Can consider that another time.

BUG=513695

Review URL: https://codereview.chromium.org/1262923003

8 years agoRemove IGNORE_ROT_AA_RECT_OPT flag
robertphillips [Tue, 4 Aug 2015 15:04:29 +0000 (08:04 -0700)]
Remove IGNORE_ROT_AA_RECT_OPT flag

It looks like the positive version was added (SHADER_AA_FILL_RECT) but the negative version wasn't removed.

Review URL: https://codereview.chromium.org/1271903003

8 years agoAdded registerChild; transforms, textures, glKey automatically handled.
wangyix [Tue, 4 Aug 2015 14:59:37 +0000 (07:59 -0700)]
Added registerChild; transforms, textures, glKey automatically handled.

BUG=skia:

Review URL: https://codereview.chromium.org/1266633003

8 years agoFix SkData leaks at GrResourceKey::setCustomData() call sites.
Stephen White [Tue, 4 Aug 2015 01:53:09 +0000 (21:53 -0400)]
Fix SkData leaks at GrResourceKey::setCustomData() call sites.

BUG=skia:
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1270103003 .

8 years agoRevert of SkCanvas::onDrawPicture() quick-reject (patchset #3 id:40001 of https:...
mtklein [Tue, 4 Aug 2015 01:08:29 +0000 (18:08 -0700)]
Revert of SkCanvas::onDrawPicture() quick-reject (patchset #3 id:40001 of https://codereview.chromium.org/1264133003/ )

Reason for revert:
webkit_unit_tests  :(

Original issue's description:
> SkCanvas::onDrawPicture() quick-reject
>
> R=reed@google.com,mtklein@google.com
>
> Committed: https://skia.googlesource.com/skia/+/48ed62b29d45e42b971aac8858da06781c93e6d7

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

Review URL: https://codereview.chromium.org/1273433002

8 years agoSkCanvas::onDrawPicture() quick-reject
fmalita [Mon, 3 Aug 2015 22:30:35 +0000 (15:30 -0700)]
SkCanvas::onDrawPicture() quick-reject

R=reed@google.com,mtklein@google.com

Review URL: https://codereview.chromium.org/1264133003

8 years agoremove flags that control no code
reed [Mon, 3 Aug 2015 21:44:32 +0000 (14:44 -0700)]
remove flags that control no code

BUG=skia:

Review URL: https://codereview.chromium.org/1259653004

8 years agoFix elliptical rrect clip shaders for large radii on devices with mediump
bsalomon [Mon, 3 Aug 2015 21:23:03 +0000 (14:23 -0700)]
Fix elliptical rrect clip shaders for large radii on devices with mediump

BUG=chromium:426217

Review URL: https://codereview.chromium.org/1256353004

8 years agoadd bench for gpu-image -> cpu-surface
reed [Mon, 3 Aug 2015 21:18:04 +0000 (14:18 -0700)]
add bench for gpu-image -> cpu-surface

BUG=513695
TBR=

Review URL: https://codereview.chromium.org/1261663004

8 years agoFix resource cache test.
Stephen White [Mon, 3 Aug 2015 20:30:23 +0000 (16:30 -0400)]
Fix resource cache test.

TBR=bsalomon@chromium.org

Review URL: https://codereview.chromium.org/1257253007 .

8 years agoImplement caching of filled paths in the tessellated path renderer.
senorblanco [Mon, 3 Aug 2015 20:04:03 +0000 (13:04 -0700)]
Implement caching of filled paths in the tessellated path renderer.

Paths are cached as tessellated triangle meshes in vertex buffers on the GPU. Stroked paths are not (yet) cached.

Paths containing no curved segments (linear paths) are reused at all scales. Paths containing curved segments are reused within a scale tolerance threshold.

In order to invalidate the cache when an SkPath is changed or deleted,
this required implementing genID change notification in SkPath. This is
modelled almost exactly on SkPixelRef::GenIDChangeListener.
However, It does not currently implement the check for unique genIDs,
so notifiers will fire when the first instance of an SkPathRef
using a given genID is destroyed.

Another caveat is that you cannot successfully add a change notifier
to an empty path, since it uses the "canonical" empty path which is
never modified or destroyed. For this reason, we prevent adding
listeners to it.

BUG=skia:4121,skia:4122, 497403
DOCS_PREVIEW= https://skia.org/?cl=1114353004

Review URL: https://codereview.chromium.org/1114353004

8 years agoremove getdevice guard for android
reed [Mon, 3 Aug 2015 18:45:34 +0000 (11:45 -0700)]
remove getdevice guard for android

BUG=skia:
NOTRY=True

Review URL: https://codereview.chromium.org/1266363002

8 years agoUse new API everywhere for GrDefaultGeoProcFactory
joshualitt [Mon, 3 Aug 2015 18:35:28 +0000 (11:35 -0700)]
Use new API everywhere for GrDefaultGeoProcFactory

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/801823b3d825d96baadeb9077c5ed1a8ada05cf2

Review URL: https://codereview.chromium.org/1261083003

8 years agoMissing overrides for Sinks in HWUI.
mtklein [Mon, 3 Aug 2015 17:20:28 +0000 (10:20 -0700)]
Missing overrides for Sinks in HWUI.

See crrev.com/1263113002

BUG=skia:4138

Review URL: https://codereview.chromium.org/1263143004

8 years agoAdd abliity to set textblob cache budget to GrContext
joshualitt [Mon, 3 Aug 2015 17:17:44 +0000 (10:17 -0700)]
Add abliity to set textblob cache budget to GrContext

BUG=skia:

Review URL: https://codereview.chromium.org/1264283002

8 years agoUpdate assert to allow config conversion effect for all configs when not premul/unpre...
bsalomon [Mon, 3 Aug 2015 17:15:25 +0000 (10:15 -0700)]
Update assert to allow config conversion effect for all configs when not premul/unpremuling

TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/1258763006

8 years agoRevert of Use new API everywhere for GrDefaultGeoProcFactory (patchset #5 id:80001...
joshualitt [Mon, 3 Aug 2015 16:32:36 +0000 (09:32 -0700)]
Revert of Use new API everywhere for GrDefaultGeoProcFactory (patchset #5 id:80001 of https://codereview.chromium.org/1261083003/)

Reason for revert:
breaking things

Original issue's description:
> Use new API everywhere for GrDefaultGeoProcFactory
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/801823b3d825d96baadeb9077c5ed1a8ada05cf2

TBR=robertphillips@google.com,bsalomon@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1264283004

8 years agoUse new API everywhere for GrDefaultGeoProcFactory
joshualitt [Mon, 3 Aug 2015 16:03:33 +0000 (09:03 -0700)]
Use new API everywhere for GrDefaultGeoProcFactory

BUG=skia:

Review URL: https://codereview.chromium.org/1261083003

8 years agoadd missing comma
Derek Sollenberger [Mon, 3 Aug 2015 15:41:53 +0000 (11:41 -0400)]
add missing comma

Review URL: https://codereview.chromium.org/1268483003 .

8 years agoUpdate NulCanvas so everything builds.
bungeman [Mon, 3 Aug 2015 14:56:16 +0000 (07:56 -0700)]
Update NulCanvas so everything builds.

SkNulCanvas.h is out of date, so the 'all' target fails.

Review URL: https://codereview.chromium.org/1270633004

8 years agoDocumentation: SkPathEffect
halcanary [Mon, 3 Aug 2015 13:55:20 +0000 (06:55 -0700)]
Documentation: SkPathEffect
NOTRY=true
DOCS_PREVIEW= https://skia.org/user/api/skpaint?cl=1269563008

Review URL: https://codereview.chromium.org/1269563008

8 years agofix tests for android framework build
djsollen [Mon, 3 Aug 2015 13:03:06 +0000 (06:03 -0700)]
fix tests for android framework build

Review URL: https://codereview.chromium.org/1263243003

8 years agoAdd BW masks to random scaler context
joshualitt [Sat, 1 Aug 2015 17:33:40 +0000 (10:33 -0700)]
Add BW masks to random scaler context

TBR=bsalomon@google.com
BUG=skia:

Committed: https://skia.googlesource.com/skia/+/a4a530614e9ba856aac3f16c29683e6a2a9153d9

Review URL: https://codereview.chromium.org/1270793003

8 years agoRevert of Add BW masks to random scaler context (patchset #1 id:1 of https://coderevi...
joshualitt [Sat, 1 Aug 2015 17:17:53 +0000 (10:17 -0700)]
Revert of Add BW masks to random scaler context (patchset #1 id:1 of https://codereview.chromium.org/1270793003/)

Reason for revert:
breaks mac

Original issue's description:
> Add BW masks to random scaler context
>
> TBR=bsalomon@google.com
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/a4a530614e9ba856aac3f16c29683e6a2a9153d9

TBR=joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1264843003

8 years agoAdd BW masks to random scaler context
joshualitt [Sat, 1 Aug 2015 16:36:02 +0000 (09:36 -0700)]
Add BW masks to random scaler context

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1270793003

8 years agoadding gm to use random scaler context
joshualitt [Sat, 1 Aug 2015 14:33:41 +0000 (07:33 -0700)]
adding gm to use random scaler context

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/853336c532504b3436d7dcbf252419f00c79066d

Review URL: https://codereview.chromium.org/1268853008

8 years agoremove now-dead flags
reed [Sat, 1 Aug 2015 14:03:20 +0000 (07:03 -0700)]
remove now-dead flags

BUG=skia:

Review URL: https://codereview.chromium.org/1258963005

8 years agoFix no-gpu debugger.
bungeman [Fri, 31 Jul 2015 22:46:03 +0000 (15:46 -0700)]
Fix no-gpu debugger.

Review URL: https://codereview.chromium.org/1262723005

8 years agoMove strike to subrun in GrAtlasTextContext
joshualitt [Fri, 31 Jul 2015 22:18:08 +0000 (15:18 -0700)]
Move strike to subrun in GrAtlasTextContext

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/77d89f7dd243a17452d3a5f16a98622993e6bdd9

Review URL: https://codereview.chromium.org/1257253005

8 years agoC API: remove dead code, simplify boilerplate
halcanary [Fri, 31 Jul 2015 22:16:23 +0000 (15:16 -0700)]
C API: remove dead code, simplify boilerplate

Review URL: https://codereview.chromium.org/1261953006

8 years agoRevert of adding gm to use random scaler context (patchset #4 id:60001 of https:...
joshualitt [Fri, 31 Jul 2015 22:10:31 +0000 (15:10 -0700)]
Revert of adding gm to use random scaler context (patchset #4 id:60001 of https://codereview.chromium.org/1268853008/)

Reason for revert:
breaking bots

Original issue's description:
> adding gm to use random scaler context
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/853336c532504b3436d7dcbf252419f00c79066d

TBR=bsalomon@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1259033004

8 years agodisable SkOpts on x86 iOS (simulator)
mtklein [Fri, 31 Jul 2015 21:47:25 +0000 (14:47 -0700)]
disable SkOpts on x86 iOS (simulator)

TBR=

BUG=skia:

Review URL: https://codereview.chromium.org/1266443006

8 years agoadding gm to use random scaler context
joshualitt [Fri, 31 Jul 2015 21:46:46 +0000 (14:46 -0700)]
adding gm to use random scaler context

BUG=skia:

Review URL: https://codereview.chromium.org/1268853008

8 years agoFix straggling SK_VIRTUAL_CONSTRAINT_TYPEs
scroggo [Fri, 31 Jul 2015 21:29:26 +0000 (14:29 -0700)]
Fix straggling SK_VIRTUAL_CONSTRAINT_TYPEs

These were removed with crrev.com/1239193002, but a few were missed
in files that are only build on Android framework.

Brings the Android build one step closer to building.

Review URL: https://codereview.chromium.org/1268603003

8 years agoRevert of Move strike to subrun in GrAtlasTextContext (patchset #3 id:40001 of https...
joshualitt [Fri, 31 Jul 2015 21:07:50 +0000 (14:07 -0700)]
Revert of Move strike to subrun in GrAtlasTextContext (patchset #3 id:40001 of https://codereview.chromium.org/1257253005/)

Reason for revert:
breaking bots

Original issue's description:
> Move strike to subrun in GrAtlasTextContext
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/77d89f7dd243a17452d3a5f16a98622993e6bdd9

TBR=bsalomon@google.com,robertphillips@google.com,jvanverth@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1266253002

8 years agoMove SkOpts.h back to src/core.
mtklein [Fri, 31 Jul 2015 21:02:36 +0000 (14:02 -0700)]
Move SkOpts.h back to src/core.

The Chrome opts targets (sse2, ssse3, sse41, etc) don't have include/private on
their include path.  This should unblock the roll.

TBR=reed@google.com

BUG=skia:4117

Review URL: https://codereview.chromium.org/1268853007

8 years agoSome cleanup in GrTextureProvider and GrResourceProvider.
bsalomon [Fri, 31 Jul 2015 20:59:30 +0000 (13:59 -0700)]
Some cleanup in GrTextureProvider and GrResourceProvider.

Review URL: https://codereview.chromium.org/1261643004

8 years agoMove strike to subrun in GrAtlasTextContext
joshualitt [Fri, 31 Jul 2015 20:58:27 +0000 (13:58 -0700)]
Move strike to subrun in GrAtlasTextContext

BUG=skia:

Review URL: https://codereview.chromium.org/1257253005

8 years agoC API: add sk_xfermode.h, impl, test
halcanary [Fri, 31 Jul 2015 20:38:06 +0000 (13:38 -0700)]
C API: add sk_xfermode.h, impl, test

Review URL: https://codereview.chromium.org/1242403005

8 years agoSpeculative fix for http://crbug.com/515966
bsalomon [Fri, 31 Jul 2015 19:15:50 +0000 (12:15 -0700)]
Speculative fix for http://crbug.com/515966

BUG=chromium:515966

Review URL: https://codereview.chromium.org/1268723005

8 years agoDocumentation spelling error
halcanary [Fri, 31 Jul 2015 19:02:18 +0000 (12:02 -0700)]
Documentation spelling error

BUG=skia:4157
NOTRY=true
TBR=

Review URL: https://codereview.chromium.org/1267843002

8 years agoDocumentation: SkXfermode::Mode
halcanary [Fri, 31 Jul 2015 18:58:13 +0000 (11:58 -0700)]
Documentation: SkXfermode::Mode

BUG=skia:4157
NOTRY=true
DOCS_PREVIEW= https://skia.org/user/api/skpaint?cl=1270643004

Review URL: https://codereview.chromium.org/1270643004

8 years agoAnother small fix to GrFontScaler
joshualitt [Fri, 31 Jul 2015 18:55:29 +0000 (11:55 -0700)]
Another small fix to GrFontScaler

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1261433006

8 years agoRemove unnecessary virtual destructor on SkTArray
bsalomon [Fri, 31 Jul 2015 18:53:11 +0000 (11:53 -0700)]
Remove unnecessary virtual destructor on SkTArray

Review URL: https://codereview.chromium.org/1259143006

8 years agoPort SkXfermode opts to SkOpts.h
mtklein [Fri, 31 Jul 2015 18:50:27 +0000 (11:50 -0700)]
Port SkXfermode opts to SkOpts.h

Renames Sk4pxXfermode.h to SkXfermode_opts.h,
and refactors it a tiny bit internally.

This moves xfermode optimization from being "compile-time everywhere but NEON"
to simply "runtime everywhere".  I don't anticipate any effect on perf or
correctness.

BUG=skia:4117

Review URL: https://codereview.chromium.org/1264543006

8 years agouse SkNextID::ImageID for android's stable id
reed [Fri, 31 Jul 2015 18:46:12 +0000 (11:46 -0700)]
use SkNextID::ImageID for android's stable id

BUG=skia:

Review URL: https://codereview.chromium.org/1263463003

8 years agoModifying TextBlobCacheTest to use SkRandomScalerContext
joshualitt [Fri, 31 Jul 2015 18:45:22 +0000 (11:45 -0700)]
Modifying TextBlobCacheTest to use SkRandomScalerContext

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/adcdca86ce425cf8c28bfad311cef028df756ee8

Review URL: https://codereview.chromium.org/1266003002

8 years agoMake ANGLE perf decisions be runtime rather than compile time
bsalomon [Fri, 31 Jul 2015 18:20:16 +0000 (11:20 -0700)]
Make ANGLE perf decisions be runtime rather than compile time

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/1268953002

8 years agoPort SkUtils opts to SkOpts.
mtklein [Fri, 31 Jul 2015 17:46:50 +0000 (10:46 -0700)]
Port SkUtils opts to SkOpts.

With this new arrangement, the benefits of inlining sk_memset16/32 have changed.

On x86, they're not significantly different, except for small N<=10 where the inlined code is significantly slower.
On ARMv7 with NEON, our custom code is still significantly faster for N>10 (up to 2x faster).  For small N<=10 inlining is still significantly faster.
On ARMv7 without NEON, our custom code is still ridiculously faster (up to 10x) than inlining for N>10, though for small N<=10 inlining is still a little faster.

We were not using the NEON memset16 and memset32 procs on ARMv8.  At first blush, that seems to be an oversight, but if so it's an extremely lucky one.  The ARMv8 code generation for our memset16/32 procs is total garbage, leaving those methods ~8x slower than just inlining the memset, using the compiler's autovectorization.

So, no need to inline any more on x86, and still inline for N<=10 on ARMv7.  Always inline for ARMv8.

BUG=skia:4117

Review URL: https://codereview.chromium.org/1270573002

8 years agoUpdate Android Testing apps to support release mode
djsollen [Fri, 31 Jul 2015 17:25:17 +0000 (10:25 -0700)]
Update Android Testing apps to support release mode

BUG=skia:4152

Review URL: https://codereview.chromium.org/1259123003

8 years agoRestore read pixels perf on ANGLE
bsalomon [Fri, 31 Jul 2015 16:34:24 +0000 (09:34 -0700)]
Restore read pixels perf on ANGLE

BUG=chromium:513797

Review URL: https://codereview.chromium.org/1265003002

8 years agoremove drawimagerect flags, as skia no longer respects them
reed [Fri, 31 Jul 2015 15:49:11 +0000 (08:49 -0700)]
remove drawimagerect flags, as skia no longer respects them

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1262333006

8 years agobump the size of the atlas id to 64 bits
joshualitt [Fri, 31 Jul 2015 15:25:07 +0000 (08:25 -0700)]
bump the size of the atlas id to 64 bits

BUG=skia:

Review URL: https://codereview.chromium.org/1253003005

8 years agoMake SkIsPow2 templated
bsalomon [Fri, 31 Jul 2015 15:22:17 +0000 (08:22 -0700)]
Make SkIsPow2 templated

Review URL: https://codereview.chromium.org/1271533002

8 years agoRevert of Modifying TextBlobCacheTest to use SkRandomScalerContext (patchset #3 id...
joshualitt [Fri, 31 Jul 2015 14:55:09 +0000 (07:55 -0700)]
Revert of Modifying TextBlobCacheTest to use SkRandomScalerContext (patchset #3 id:40001 of https://codereview.chromium.org/1266003002/)

Reason for revert:
breaking android

Original issue's description:
> Modifying TextBlobCacheTest to use SkRandomScalerContext
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/adcdca86ce425cf8c28bfad311cef028df756ee8

TBR=bungeman@google.com,bsalomon@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1267623004

8 years agoModifying TextBlobCacheTest to use SkRandomScalerContext
joshualitt [Fri, 31 Jul 2015 14:44:11 +0000 (07:44 -0700)]
Modifying TextBlobCacheTest to use SkRandomScalerContext

BUG=skia:

Review URL: https://codereview.chromium.org/1266003002

8 years agoAlso provides the ResourceProvider to onDrawPath which allows the DF PR to no longer...
bsalomon [Fri, 31 Jul 2015 13:48:27 +0000 (06:48 -0700)]
Also provides the ResourceProvider to onDrawPath which allows the DF PR to no longer require access to GrContext.

Review URL: https://codereview.chromium.org/1265763002

8 years agoDM: track a direct/indirect bit for each Sink too.
mtklein [Fri, 31 Jul 2015 13:43:04 +0000 (06:43 -0700)]
DM: track a direct/indirect bit for each Sink too.

The decoding tests can now veto indirect sinks like pipe-8888.

This moves Sink type detection from automatic to explicit; I can't think of any
way to automatically differentiate pipe-8888 from 8888 based only on the
output.  (They should ideally be identical, after all.)

BUG=skia:4138

Review URL: https://codereview.chromium.org/1263113002

8 years agoRemove unused field in micro cleanup
joshualitt [Fri, 31 Jul 2015 13:37:50 +0000 (06:37 -0700)]
Remove unused field in micro cleanup

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1268893002

8 years agoFix repeat builds with Android.
bungeman [Fri, 31 Jul 2015 13:33:21 +0000 (06:33 -0700)]
Fix repeat builds with Android.

Currently the SampleApp and VisualBench builds for Android don't work
for rebuilds. The code is re-built, but the apks are not. This
results from the use of a directory as 'output' and the action to
build the apk not depending on the copied libraries.

Review URL: https://codereview.chromium.org/1270643005

8 years agoTweak the MaskFormat in one more place in GrBatchFontCache
joshualitt [Fri, 31 Jul 2015 12:51:45 +0000 (05:51 -0700)]
Tweak the MaskFormat in one more place in GrBatchFontCache

BUG=510931

Review URL: https://codereview.chromium.org/1268743002

8 years agoAddress some SkLightingShader TODOs
robertphillips [Fri, 31 Jul 2015 12:17:24 +0000 (05:17 -0700)]
Address some SkLightingShader TODOs

This CL:
  switches the light colors to be 3 scalars (SkColor3f)
  adds some dox

Review URL: https://codereview.chromium.org/1265983003

8 years agoAdd android_run_app.go
borenet [Fri, 31 Jul 2015 11:13:38 +0000 (04:13 -0700)]
Add android_run_app.go

Launches an app, pipes its output, and exits when the app exits.

Loosely based on the old buildbot code in python:
https://skia.googlesource.com/buildbot/+/ac0663c599a443a4958c8cad5aefd25eb09eff58/slave/skia_slave_scripts/utils/android_utils.py

BUG=skia:4093

Review URL: https://codereview.chromium.org/1256353002

8 years agoImplement support for dual source blending in ES
kkinnunen [Fri, 31 Jul 2015 05:47:04 +0000 (22:47 -0700)]
Implement support for dual source blending in ES

Use EXT_blend_func_extended to implement dual source blending in OpenGL
ES. The extension is the ES version of ARB_blend_func_extended.

The extension provides gl_SecondaryFragColorEXT for ES 2.0 contexts.
The extension provides glBindFragDataLocationIndexed to bind a custom
fragment shader output to the secondary color for ES 3.0 contexts.

For ES 3.1 contexts, the extension would also give
"layout (location=0, index=1)" output varible layout modifier syntax,
but it is not used in this patch.

The extension needs #extension GL_EXT_blend_func_extended : require
directive for the variables to be available in ES 2.0. For ES 3.0, the
directive relaxes the rules for the amount of output variables without
layout location qualifiers.

OpenGL continues to use GL_ARB_blend_func_extended for dual source
blending.

Review URL: https://codereview.chromium.org/1266773003

8 years agoMake it possible to toggle MSAA for ES (EXT_multisample_compatibility)
kkinnunen [Fri, 31 Jul 2015 05:43:52 +0000 (22:43 -0700)]
Make it possible to toggle MSAA for ES (EXT_multisample_compatibility)

Make it possible to turn MSAA on and off for OpenGL ES, too.
Use EXT_multisample_compatibility.

The extension adds token:
        MULTISAMPLE_EXT                             0x809D

The token can be supplied to glEnable/glDisable/glGetInteger.

This is needed in order to support mixed samples in OpenGL ES. This is
important for path rendering Chromium command buffer integration.

Review URL: https://codereview.chromium.org/1270533002

8 years agolock pixels in image when bitmap is immutable and not-lazy
reed [Fri, 31 Jul 2015 03:13:43 +0000 (20:13 -0700)]
lock pixels in image when bitmap is immutable and not-lazy

BUG=skia:

Review URL: https://codereview.chromium.org/1266143003

8 years agofix empty image constructor
reed [Fri, 31 Jul 2015 02:10:35 +0000 (19:10 -0700)]
fix empty image constructor

fBitmap was not fully constructed yet

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1264773004

8 years agounify pixelref and image ID space, so we can share IDs when we share pixels
reed [Fri, 31 Jul 2015 01:58:23 +0000 (18:58 -0700)]
unify pixelref and image ID space, so we can share IDs when we share pixels

I view this as a performance opportunity, not a feature or bug fix per-se.

BUG=skia:

Review URL: https://codereview.chromium.org/1266883002

8 years agoDisable SRGB support on PowerVR Rogue due to SRGBReadWritePixels failure
bsalomon [Thu, 30 Jul 2015 23:27:50 +0000 (16:27 -0700)]
Disable SRGB support on PowerVR Rogue due to SRGBReadWritePixels failure

TBR=jvanverth@google.com
BUG=skia:4148

Review URL: https://codereview.chromium.org/1266933002

8 years agoMake TRecorder alloc_back return a void*
bsalomon [Thu, 30 Jul 2015 22:57:33 +0000 (15:57 -0700)]
Make TRecorder alloc_back return a void*

Speculative fix for this bug:

BUG=chromium:515679

TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/1268493003

8 years agoSRGB read and write pixels working and unit test
bsalomon [Thu, 30 Jul 2015 22:34:56 +0000 (15:34 -0700)]
SRGB read and write pixels working and unit test

Review URL: https://codereview.chromium.org/1264003002

8 years agofind image whenever we generateGlyph. This should ensure the glyph is fully initiali...
joshualitt [Thu, 30 Jul 2015 19:43:17 +0000 (12:43 -0700)]
find image whenever we generateGlyph.  This should ensure the glyph is fully initialized before we start using the maskformat.

BUG=skia:

Review URL: https://codereview.chromium.org/1270573003

8 years agolinear gradient with stops discretized gm
caryclark [Thu, 30 Jul 2015 19:35:48 +0000 (12:35 -0700)]
linear gradient with stops discretized gm

TBR=reed@google.com
BUG=skia:517

Review URL: https://codereview.chromium.org/1259983009

8 years agoMove some parts of onReadPixels up to GrGpu readPixels.
egdaniel [Thu, 30 Jul 2015 19:02:15 +0000 (12:02 -0700)]
Move some parts of onReadPixels up to GrGpu readPixels.

BUG=skia:

Review URL: https://codereview.chromium.org/1270583003

8 years agoRename SkCodec_libbmp to SkBmpCodec
msarett [Thu, 30 Jul 2015 18:36:40 +0000 (11:36 -0700)]
Rename SkCodec_libbmp to SkBmpCodec

BUG=skia:

Review URL: https://codereview.chromium.org/1254963006

8 years agoCall notifyPixelsChanged after modifying bitmap
scroggo [Thu, 30 Jul 2015 18:33:04 +0000 (11:33 -0700)]
Call notifyPixelsChanged after modifying bitmap

In CodecSrc's scanline_subset test, we decode a subset of an image to a
bitmap, draw it to the canvas, and then repeat. This is fine for most
backends, but not for pipe. Pipe sees the same generation ID, so it
assumes it is the same bitmap it saw before, and just draws the
original one.

Call notifyPixelsChanged, so the bitmap will get a new generation ID,
fixing pipe.

BUG=skia:4138

Review URL: https://codereview.chromium.org/1265983004

8 years agoBuild buckets: tryjob access
nodir [Thu, 30 Jul 2015 17:32:27 +0000 (10:32 -0700)]
Build buckets: tryjob access

Allowed project-skia-tryjob-access group to schedule builds on public
skia build buckets

R=borenet@chromium.org, rmistry@chromium.org
BUG=495680

Review URL: https://codereview.chromium.org/1256333006

8 years agoRevert character in typeface test on Android.
bungeman [Thu, 30 Jul 2015 17:31:57 +0000 (10:31 -0700)]
Revert character in typeface test on Android.

This is a partial revert of f20488b4f2, particularly
https://skia.googlesource.com/skia/+/f20488b4f2139e6ca09fee7e39b731dd8ab467db%5E%21/#F11

BUG=chromium:515366
TBR=mtklein@google.com
This is a (non-automatic) revert.

Review URL: https://codereview.chromium.org/1265993003

8 years agoMinor cleanup of SkLightingShader
robertphillips [Thu, 30 Jul 2015 17:11:42 +0000 (10:11 -0700)]
Minor cleanup of SkLightingShader

Fix:
  PM component swizzling on Macs
  Serialization

Review URL: https://codereview.chromium.org/1270533003