Commit Graph

4637 Commits

Author SHA1 Message Date
bsalomon
ebaf6a69bf Revert of Fix SkTileImageFilter clipping/cropRect interaction issue (patchset #2 id:30001 of https://codereview.chromium.org/1210053003/)
Reason for revert:
Perf regression: https://code.google.com/p/chromium/issues/detail?id=505564

Original issue's description:
> Fix SkTileImageFilter clipping/cropRect interaction issue
>
> BUG=499499
>
> Committed: https://skia.googlesource.com/skia/+/157bcd0840b578060dbc3365daafffc6837da391

TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=499499

Review URL: https://codereview.chromium.org/1219193002
2015-07-01 11:02:50 -07:00
jvanverth
4417c7f8bb Revert "Move headers used by headers in include/ to include/private."
This reverts commit a89f55198b.

Reason: breaking the roll.

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

Review URL: https://codereview.chromium.org/1216033008
2015-07-01 09:45:46 -07:00
mtklein
a89f55198b Move headers used by headers in include/ to include/private.
Some of this is transitive, like SkRecords.h used by SkMiniRecorder.h
used by (public) SkPictureRecorder.h.

BUG=skia:

Review URL: https://codereview.chromium.org/1217293004
2015-07-01 08:41:15 -07:00
mtklein
d711d115d2 Thread through a flag to force SkPicture::playback() when recording subpictures.
This makes nanobench picture recording benchmarks somewhat useful again,
as opposed to all taking about 5us to run no matter the content.

ATTN Sheriff: this will probably trigger perf.skia.org alerts.

BUG=skia:

Review URL: https://codereview.chromium.org/1219873002
2015-07-01 07:04:37 -07:00
msarett
c0e80c139e In the case of subset decodes, we will often not decode to
the bottom of the image.  In our code before this patch,
this would result in cleanup code in onFinish() never being
called.

We can allow subclasses to take ownership of the
SkScanlineDecoder in order to make sure that it is
finished/deleted before deleting the decode manager.

BUG=skia:

Review URL: https://codereview.chromium.org/1212593003
2015-07-01 06:50:35 -07:00
kkinnunen
cfe62e3084 Cleanup legacy NVPR-related definitions
Fixed-function NVPR codepaths were removed a while ago. Only NVPR API
version 1.3 (PathFragmentInputGen) was left working. Remove
backwards-compatibility code that was left behind.

Remove some NVPR API function typedefs that were left from initial
commits.

Remove PathCoords function pointer from GrGLInterface, it has
never been called and causes problems in the future, since it will
not be implemented in the Chromium pseudo extension.

Avoid failing interface creation even if nvprmsaaXX config is
requested but the driver is not recent enough. The SAN bots have
old driver, but try to run nvprmsaa16 configs. Instead, print
out a warning.

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

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

Review URL: https://codereview.chromium.org/1177243004
2015-07-01 02:58:50 -07:00
vmpstr
a8d4559fd6 Fix infinite matrix during an invert.
This patch ensures that when inverting a SkMatrix44, we handle small
floats properly. When inverted these can cause infinite values, but
still evaluate to true in an if condition.

BUG=chromium:498516

Review URL: https://codereview.chromium.org/1209763002
2015-06-30 13:36:04 -07:00
bsalomon
d3e259a16c Add SkSurface factory for wrapping an FBO in SkSurface
Review URL: https://codereview.chromium.org/1221853003
2015-06-30 12:04:40 -07:00
bsalomon
c49e8682ab Rename flushForExternalRead->flushForExternalIO and always call in SkSurface::getTextureHandle
Review URL: https://codereview.chromium.org/1216243003
2015-06-30 11:37:35 -07:00
jvanverth
439f23e563 Revert of Cleanup legacy NVPR-related definitions (patchset #4 id:60001 of https://codereview.chromium.org/1177243004/)
Reason for revert:
Breaks the Ubuntu *SAN bots.

Original issue's description:
> Cleanup legacy NVPR-related definitions
>
> Fixed-function NVPR codepaths were removed a while ago. Only NVPR API
> version 1.3 (PathFragmentInputGen) was left working. Remove
> backwards-compatibility code that was left behind.
>
> Remove some NVPR API function typedefs that were left from initial
> commits.
>
> Remove PathCoords function pointer from GrGLInterface, it has
> never been called and causes problems in the future, since it will
> not be implemented in the Chromium pseudo extension.
>
> Committed: https://skia.googlesource.com/skia/+/fb8d6884e0e01d0c2f8596adf5af1efb0d08de7e
>
> Committed: https://skia.googlesource.com/skia/+/e35b5d99d8dfcc6b2be844df28cba47436380809

TBR=joshualitt@google.com,cdalton@nvidia.com,bsalomon@google.com,kkinnunen@nvidia.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1219663005
2015-06-30 09:40:38 -07:00
kkinnunen
e35b5d99d8 Cleanup legacy NVPR-related definitions
Fixed-function NVPR codepaths were removed a while ago. Only NVPR API
version 1.3 (PathFragmentInputGen) was left working. Remove
backwards-compatibility code that was left behind.

Remove some NVPR API function typedefs that were left from initial
commits.

Remove PathCoords function pointer from GrGLInterface, it has
never been called and causes problems in the future, since it will
not be implemented in the Chromium pseudo extension.

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

Review URL: https://codereview.chromium.org/1177243004
2015-06-30 03:59:50 -07:00
bungeman
3fdde4e129 Remove old iOS porting files.
These files do not appear to be used, are unfinished, and should be
redundant with the mac porting files.

Review URL: https://codereview.chromium.org/1197963003
2015-06-29 14:12:41 -07:00
reed
fa5e68e4b4 add getTextureHandle to SkSurface
BUG=485243

Review URL: https://codereview.chromium.org/1210303003
2015-06-29 07:37:01 -07:00
joshualitt
58001553ec add drawArraysInstanced to caps
BUG=skia:

Review URL: https://codereview.chromium.org/1202383006
2015-06-26 12:46:36 -07:00
robertphillips
d24955ad35 Make SkPaint::glyphsToUnichars use explicit SkSurfaceProps
BUG=skia:3984,skia:3934

Review URL: https://codereview.chromium.org/1211413003
2015-06-26 12:17:59 -07:00
mtklein
2766c00fc0 remove SkInstCnt
It's been outclassed by Valgrind and leak sanitizer,
and it seems to be causing problems for external folks building Skia.

I'm not sure why our own builds seem unaffected.

Latest thread:
https://groups.google.com/forum/#!topic/skia-discuss/oj9FsQwwSF0

BUG=skia:

Review URL: https://codereview.chromium.org/1217573002
2015-06-26 11:45:03 -07:00
reed
cdb42bb55c Revert of Revert of remove SK_SUPPORT_LEGACY_PATHOP_ENUMS (patchset #1 id:1 of https://codereview.chromium.org/1203983003/)
Reason for revert:
fixes have landed in android

Original issue's description:
> Revert of remove SK_SUPPORT_LEGACY_PATHOP_ENUMS (patchset #1 id:1 of https://codereview.chromium.org/1200323005/)
>
> Reason for revert:
> Breaking the Android build.
>
> Original issue's description:
> > remove SK_SUPPORT_LEGACY_PATHOP_ENUMS
> >
> > BUG=skia:
> > TBR=
> >
> > Committed: https://skia.googlesource.com/skia/+/8bcc7a00febd737f7e82513bd5e4a697526626de
>
> TBR=reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/ba9a4aa8550c982c480d03cb6ba2cabaf6209b41

TBR=scroggo@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1218523002
2015-06-26 10:23:07 -07:00
robertphillips
157bcd0840 Fix SkTileImageFilter clipping/cropRect interaction issue
BUG=499499

Review URL: https://codereview.chromium.org/1210053003
2015-06-26 08:07:39 -07:00
reed
0e72b7e2c6 add/fix copyrights
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1212393002
2015-06-26 07:26:19 -07:00
reed
4c21dc5ddf add drawImageNine
this also exposes nine-patch drawing directly to devices, and creates a shared iterator for unrolling a nine-patch into single rect->rect draws.

BUG=skia:

Review URL: https://codereview.chromium.org/1211583003
2015-06-25 12:32:03 -07:00
fmalita
538bacb4bb Revert of Cleanup legacy NVPR-related definitions (patchset #3 id:40001 of https://codereview.chromium.org/1177243004/)
Reason for revert:
Broke the GPU SAN bots: https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Debug-ASAN/builds/779/steps/dm/logs/stdio

Original issue's description:
> Cleanup legacy NVPR-related definitions
>
> Fixed-function NVPR codepaths were removed a while ago. Only NVPR API
> version 1.3 (PathFragmentInputGen) was left working. Remove
> backwards-compatibility code that was left behind.
>
> Remove some NVPR API function typedefs that were left from initial
> commits.
>
> Remove PathCoords function pointer from GrGLInterface, it has
> never been called and causes problems in the future, since it will
> not be implemented in the Chromium pseudo extension.
>
> Committed: https://skia.googlesource.com/skia/+/fb8d6884e0e01d0c2f8596adf5af1efb0d08de7e

TBR=joshualitt@google.com,cdalton@nvidia.com,bsalomon@google.com,kkinnunen@nvidia.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1206333003
2015-06-25 08:42:24 -07:00
kkinnunen
fb8d6884e0 Cleanup legacy NVPR-related definitions
Fixed-function NVPR codepaths were removed a while ago. Only NVPR API
version 1.3 (PathFragmentInputGen) was left working. Remove
backwards-compatibility code that was left behind.

Remove some NVPR API function typedefs that were left from initial
commits.

Remove PathCoords function pointer from GrGLInterface, it has
never been called and causes problems in the future, since it will
not be implemented in the Chromium pseudo extension.

Review URL: https://codereview.chromium.org/1177243004
2015-06-25 02:06:56 -07:00
bsalomon
47c1ccbcd8 Revert of remove workaround for dx9 angle slow rgba pixel ops (patchset #1 id:1 of https://codereview.chromium.org/1207003002/)
Reason for revert:
users are still on dx9 angle :(

Original issue's description:
> remove workaround for dx9 angle slow rgba pixel ops
>
> TBR=robertphillips@google.com
>
> Committed: https://skia.googlesource.com/skia/+/1e1adc33ba1acb9a2ad41c0a5a9b6166ee9d7a2a

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

Review URL: https://codereview.chromium.org/1205183002
2015-06-24 15:04:13 -07:00
bsalomon
1e1adc33ba remove workaround for dx9 angle slow rgba pixel ops
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/1207003002
2015-06-24 13:22:50 -07:00
reed
71c3c760a8 add SkCanvas::drawAtlas
BUG=skia:

Review URL: https://codereview.chromium.org/1181913003
2015-06-24 10:29:18 -07:00
scroggo
ba9a4aa855 Revert of remove SK_SUPPORT_LEGACY_PATHOP_ENUMS (patchset #1 id:1 of https://codereview.chromium.org/1200323005/)
Reason for revert:
Breaking the Android build.

Original issue's description:
> remove SK_SUPPORT_LEGACY_PATHOP_ENUMS
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/8bcc7a00febd737f7e82513bd5e4a697526626de

TBR=reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1203983003
2015-06-24 08:05:52 -07:00
robertphillips
1b8e1b5c49 Refactor GrBufferAllocPools to use resource cache
Committed: https://skia.googlesource.com/skia/+/e935f1a0e2351373c33600b8388492ce1218014a

Review URL: https://codereview.chromium.org/1139753002
2015-06-24 06:54:10 -07:00
reed
8bcc7a00fe remove SK_SUPPORT_LEGACY_PATHOP_ENUMS
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1200323005
2015-06-23 22:05:19 -07:00
reed
af4b233d46 remove SK_SUPPORT_LEGACY_FILTERLEVEL_ENUM
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1205803002
2015-06-23 21:47:30 -07:00
reed
56b73fc63f remove (legacy) NewFromData
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1199413003
2015-06-23 21:31:08 -07:00
bsalomon
74f681dce2 Make SkGpuDevice know its alpha type
Make SkImage_Gpu snapshots opaque if surface is opaque.

BUG=skia:3965

Review URL: https://codereview.chromium.org/1205643002
2015-06-23 14:38:48 -07:00
cdalton
d416a5b10f Implement SkGLContext swapBuffers with fence syncs
Improves the GPU measuring accuracy of nanobench by using fence syncs.
Fence syncs are very widely supported and available on almost every
platform.

NO_MERGE_BUILDS
BUG=skia:

Review URL: https://codereview.chromium.org/1194783003
2015-06-23 13:23:44 -07:00
robertphillips
b607767703 Revert of Refactor GrBufferAllocPools to use resource cache (patchset #15 id:280001 of https://codereview.chromium.org/1139753002/)
Reason for revert:
Will reland after Chromium branch

Original issue's description:
> Refactor GrBufferAllocPools to use resource cache
>
> Committed: https://skia.googlesource.com/skia/+/e935f1a0e2351373c33600b8388492ce1218014a

TBR=bsalomon@google.com,joshualitt@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1204773003
2015-06-23 12:36:12 -07:00
reed
e582a5a891 remove SK_SUPPORT_LEGACY_OPTIONLESS_GET_PIXELS
BUG=skia:

Review URL: https://codereview.chromium.org/1201233002
2015-06-23 12:10:27 -07:00
reed
b3fe1b87e0 more tests for offsetimagefilter
BUG=skia:

Review URL: https://codereview.chromium.org/1199933011
2015-06-23 08:29:20 -07:00
robertphillips
e935f1a0e2 Refactor GrBufferAllocPools to use resource cache
Review URL: https://codereview.chromium.org/1139753002
2015-06-23 08:23:08 -07:00
kkinnunen
591a2ca842 Stop using the NVPR glyph loading functionality
Remove the NVPR glyph loading functionality. A bit risky feature.

Review URL: https://codereview.chromium.org/1176113008
2015-06-23 07:27:41 -07:00
tomhudson
3fef728e16 Fix indirect use of defined() directive
BUG=432391
R=bsalomon,bungeman1

Review URL: https://codereview.chromium.org/876933004
2015-06-23 06:31:32 -07:00
robertphillips
702edbd4bc Propagate SkSurfaceProps to more call sites
Start moving to a world where everyone provides surface properties.

Most notably this exposes a portion of SkSurfaceProps to the C API.

BUG=skia:3934

Review URL: https://codereview.chromium.org/1195003003
2015-06-23 06:26:08 -07:00
reed
871872f3f2 change old picture serialization to really handle images
BUG=skia:3965

Review URL: https://codereview.chromium.org/1199473002
2015-06-22 12:48:26 -07:00
robertphillips
efbffedd68 Clean up usage of SkSurfaceProps
This CL continues cleaning up Skia's usage of SkSurfaceProps. It:

  Removes the duplicate SkSurfaceProps object from SkImageFilter::Proxy.

  Removes a dispreferred ctor from SkCanvas

  Removes the initForRootLayer entry point from SkDevice (since the root device and the canvas should always have the same pixel geometry now).

Review URL: https://codereview.chromium.org/1201983006
2015-06-22 12:06:08 -07:00
robertphillips
9a53fd7c41 Begin kLegacyFontHost_InitType cleanup
This CL starts the process of pushing kLegacyFontHost_InitType-type SkSurfaceProps up the call stack and out of Skia. It:

 Gets rid of the default SkBaseDevice ctor. This means everyone has to always hand an explicit SkSurfaceProps to it.

 It makes public the SkBitmapDevice creation methods that require SkSurfaceProps.

 Removes (in Skia's code base) all SkBitmapDevice ctor calls w/o SkSurfaceProps.

 Makes the "recording" canvases (e.g., pdf, svg, xps) explicitly not use kLegacyFontHost_InitType.

 Replicates the creating canvas/device's flags on saveLayer devices

BUG=skia:3934

Review URL: https://codereview.chromium.org/1204433002
2015-06-22 09:46:59 -07:00
jvanverth
4854d13c27 Remove distance field flag from SkPaint
Review URL: https://codereview.chromium.org/1192413005
2015-06-22 06:46:56 -07:00
robertphillips
7b05ff11eb Rename all things "leaky" in SkDevice
Review URL: https://codereview.chromium.org/1198603002
2015-06-19 14:14:55 -07:00
robertphillips
fcf7829b67 remove SkDeviceProperties
There is a lot more clean up to do here but this is probably a big enough bite.

Review URL: https://codereview.chromium.org/1196683003
2015-06-19 11:49:52 -07:00
robertphillips
8b1fa6dd8d Fix precision error in https://codereview.chromium.org/1188433011/
TBR=reed@google.com

Review URL: https://codereview.chromium.org/1192853002
2015-06-19 06:40:02 -07:00
robertphillips
20eee3f047 Added check for ill-conditioned invert
sk_inv_determinant has a guard that the determinant can't get too big so this CL only checks if the determinant gets too small.

BUG=492263

Review URL: https://codereview.chromium.org/1188433011
2015-06-19 05:14:26 -07:00
reed
ce777c9ea3 remove deprecated NewRasterPMColor
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/1192353002
2015-06-19 03:42:56 -07:00
joshualitt
83bc229703 Work around for nexus 6 TexSubImage issue
BUG=skia:

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

Review URL: https://codereview.chromium.org/1173203005
2015-06-18 14:18:03 -07:00
reed
35a5261085 privatize
BUG=skia:
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1189173005
2015-06-18 14:05:07 -07:00