platform/upstream/libSkiaSharp.git
10 years agoReplace EncodeBitmap with an interface.
scroggo [Thu, 11 Dec 2014 18:53:58 +0000 (10:53 -0800)]
Replace EncodeBitmap with an interface.

Gives more flexibility to the caller to decide whether to use the
encoded data returned by refEncodedData().

Provides an implementation that supports the old version of
SkPicture::serialize().

TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely

BUG=skia:3190

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

10 years agoMaking GrGpuResource::release public for special case in Blink
junov [Thu, 11 Dec 2014 18:32:32 +0000 (10:32 -0800)]
Making GrGpuResource::release public for special case in Blink

BUG=440462

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

10 years agoRemove action_runner steps for worldjournal pageset to prevent crashes
rmistry [Thu, 11 Dec 2014 18:24:27 +0000 (10:24 -0800)]
Remove action_runner steps for worldjournal pageset to prevent crashes

BUG=skia:3196
NOTRY=true

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

10 years agohmm one more hairlines 'straggler' might be flipflopping
joshualitt [Thu, 11 Dec 2014 18:02:30 +0000 (10:02 -0800)]
hmm one more hairlines 'straggler' might be flipflopping

TBR=
NOTRY=
BUG=skia:

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

10 years agostraggler hairline
joshualitt [Thu, 11 Dec 2014 16:58:37 +0000 (08:58 -0800)]
straggler hairline

NOTRY=True
TBR=
BUG=skia:

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

10 years agoPoppler rebaseline for clipped-bitmap-shaders-clamp
fmalita [Thu, 11 Dec 2014 16:20:38 +0000 (08:20 -0800)]
Poppler rebaseline for clipped-bitmap-shaders-clamp

Follow-up for https://codereview.chromium.org/787043006.

TBR=scroggo@google.com

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

10 years agoApply the layer's image filter to the hoisted image
robertphillips [Thu, 11 Dec 2014 16:20:31 +0000 (08:20 -0800)]
Apply the layer's image filter to the hoisted image

Exposing SkSurface_Gpu makes me sad and I would welcome alternatives.

This change is desireable since it greatly decreases the render target swaps.

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

10 years agorebase cpu hairlines
joshualitt [Thu, 11 Dec 2014 15:37:48 +0000 (07:37 -0800)]
rebase cpu hairlines

NOTRY=True
NOTREECHECKS=True
TBR=
BUG=skia:

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

10 years agoupdate test after I added a clip call, making the count odd
reed [Thu, 11 Dec 2014 15:30:58 +0000 (07:30 -0800)]
update test after I added a clip call, making the count odd

BUG=skia:
TBR=
NOTREECHECKS=True
NOTRY=True

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

10 years agoDefer saves() until they're needed
reed [Thu, 11 Dec 2014 15:07:37 +0000 (07:07 -0800)]
Defer saves() until they're needed

patch from issue 759443006 at patchset 40001 (http://crrev.com/759443006#ps40001)

BUG=skia:

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

10 years agorebase hairlines
joshualitt [Thu, 11 Dec 2014 14:53:34 +0000 (06:53 -0800)]
rebase hairlines

TBR=
BUG=skia:

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

10 years agoReally fix valgrind issue
joshualitt [Thu, 11 Dec 2014 14:52:01 +0000 (06:52 -0800)]
Really fix valgrind issue

TBR=
BUG=skia:

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

10 years agoMore rebaselines.
scroggo [Thu, 11 Dec 2014 14:22:32 +0000 (06:22 -0800)]
More rebaselines.

TBR=robertphillips
BUG=skia:

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

10 years agoMark nexus10 images as flaky.
scroggo [Thu, 11 Dec 2014 14:21:50 +0000 (06:21 -0800)]
Mark nexus10 images as flaky.

TBR=robertphillips
BUG=skia:3226

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

10 years agoAdditional rebaselines for 3490263287e9.
bungeman [Thu, 11 Dec 2014 08:37:37 +0000 (03:37 -0500)]
Additional rebaselines for 3490263287e9.

TBR=bungeman1

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

10 years agoReplace use of deprecated CG methods.
bungeman [Thu, 11 Dec 2014 05:43:27 +0000 (21:43 -0800)]
Replace use of deprecated CG methods.

OSX10.9 and iOS7.0 deprecated CGContextShowGlyphsAtPoint so a new API
should be used. OSX10.7 and iOS4.2 replace CGContextShowGlyphsAtPoint with
CTFontDrawGlyphs. OSX10.5 and iOS2.0 have CGContextShowGlyphsAtPositions
which works similarly to CTFontDrawGlyphs and has not yet been deprecated.
This change allows the use of CTFontDrawGlyphs when it is available,
falling back to CGContextShowGlyphsAtPositions when it isn't.

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

10 years agoRevert of Create xfer processor backend. (patchset #6 id:100001 of https://codereview...
joshualitt [Wed, 10 Dec 2014 23:03:00 +0000 (15:03 -0800)]
Revert of Create xfer processor backend. (patchset #6 id:100001 of https://codereview.chromium.org/764643004/)

Reason for revert:
CL breaks windows DM

Original issue's description:
> Create xfer processor backend.
>
> This includes:
> -Having an actual XP stage at the end of the gl pipeline.
> -All Blending work is handled by XP until actually setting GL blend states
> -GLPrograms test to test XP
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/4dffc940c430eec66d4707490eace19c9b3f7904

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

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

10 years agoRevert of Add more ignore gm's for recent Xfer Processor CL (patchset #1 id:1 of...
joshualitt [Wed, 10 Dec 2014 22:57:56 +0000 (14:57 -0800)]
Revert of Add more ignore gm's for recent Xfer Processor CL (patchset #1 id:1 of https://codereview.chromium.org/786083004/)

Reason for revert:
Preventing revert of cl breaking windows DM

Original issue's description:
> Add more ignore gm's for recent Xfer Processor CL
>
> TBR=bsalomon@google.com
> NOTRY=true
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/125251133a62a07225b7119ab3ac90153ba4c58a

TBR=bsalomon@google.com,egdaniel@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

10 years agoRevert of Fix to set correct output type when blending when we've read dst (patchset...
joshualitt [Wed, 10 Dec 2014 22:57:50 +0000 (14:57 -0800)]
Revert of Fix to set correct output type when blending when we've read dst (patchset #4 id:60001 of https://codereview.chromium.org/791143002/)

Reason for revert:
Breaks DM on windows

Original issue's description:
> Fix to set correct output type when blending when we've read dst
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/733fc2054044377e914559fa4f46db66ab7d9cea

TBR=bsalomon@google.com,egdaniel@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

10 years agofix for chrome bug with sub pixel hairlines
joshualitt [Wed, 10 Dec 2014 22:23:40 +0000 (14:23 -0800)]
fix for chrome bug with sub pixel hairlines

BUG=skia:

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

10 years agoInitial baselines for tall_stretched_bitmaps GM
Brian Salomon [Wed, 10 Dec 2014 22:20:15 +0000 (17:20 -0500)]
Initial baselines for tall_stretched_bitmaps GM

BUG=skia:

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

10 years agoRevert of Remove GP from drawstate, revision of invariant output for GP (patchset...
joshualitt [Wed, 10 Dec 2014 22:12:22 +0000 (14:12 -0800)]
Revert of Remove GP from drawstate, revision of invariant output for GP (patchset #9 id:160001 of https://codereview.chromium.org/791743003/)

Reason for revert:
breaks mac

Original issue's description:
> Remove GP from drawstate, revision of invariant output for GP
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/c6bc58eded89b0c0a36b8e20e193c200f297a0da

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

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

10 years agoRemove GP from drawstate, revision of invariant output for GP
joshualitt [Wed, 10 Dec 2014 21:48:57 +0000 (13:48 -0800)]
Remove GP from drawstate, revision of invariant output for GP

BUG=skia:

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

10 years agoDon't store an SkMatrix in BitmapShaderKey.
fmalita [Wed, 10 Dec 2014 21:01:43 +0000 (13:01 -0800)]
Don't store an SkMatrix in BitmapShaderKey.

SkMatrix makes for a poor key component due to mutable/cache fields.

Use its canonical scalars instead.

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

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

10 years agoFix to set correct output type when blending when we've read dst
egdaniel [Wed, 10 Dec 2014 20:45:20 +0000 (12:45 -0800)]
Fix to set correct output type when blending when we've read dst

BUG=skia:

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

10 years agofix for valgrind uninit variables
joshualitt [Wed, 10 Dec 2014 20:28:08 +0000 (12:28 -0800)]
fix for valgrind uninit variables

TBR=bsalomon@google.com
BUG=skia:

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

10 years agoRebaseline imagefiltersscaled images (and rm from ignored-tests file)
robertphillips [Wed, 10 Dec 2014 20:23:09 +0000 (12:23 -0800)]
Rebaseline imagefiltersscaled images (and rm from ignored-tests file)

Rebaselines for https://codereview.chromium.org/785893004/ (Fix MatrixImageFilter computeFastBounds)

TBR=scroggo@google.com

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

10 years agoMore rebaselines.
scroggo [Wed, 10 Dec 2014 20:23:03 +0000 (12:23 -0800)]
More rebaselines.

TBR=bsalomon
BUG=skia:

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

10 years agoRemove MULTILINE, ^, and $ from re finding actual_results.json.
bungeman [Wed, 10 Dec 2014 20:18:03 +0000 (12:18 -0800)]
Remove MULTILINE, ^, and $ from re finding actual_results.json.

MULTILINE, ^, and $ work based on the platform, but the files being
parsed are from other platforms. As a result, the current code for
extracting the actual_results.json version will not find it in
logfiles produced on Windows when run on Mac.

The code for extracting the exact actual_results.json file to use
from a logfile is itself something of a hack, as this information
should be provided ina more structured manner. This proposed
method of finding the exact file is no worse than the old one, and
in cases like above, better.

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

10 years agoDetect discarded SkPictureShader pixel refs.
fmalita [Wed, 10 Dec 2014 20:17:58 +0000 (12:17 -0800)]
Detect discarded SkPictureShader pixel refs.

This doesn't address the more general problem, but reduces the race
window significantly.

BUG=440282
R=reed@google.com

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

10 years agoRebaseline.
scroggo [Wed, 10 Dec 2014 18:53:28 +0000 (10:53 -0800)]
Rebaseline.

All these images barely differ.

TBR=bsalomon

BUG=skia:

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

10 years agoInclude SkTypes.h from SkDynamicAnnotations.h
mtklein [Wed, 10 Dec 2014 18:49:42 +0000 (10:49 -0800)]
Include SkTypes.h from SkDynamicAnnotations.h

This allows us to control SK_DYNAMIC_ANNOTATIONS_ENABLED by Sk*Config.h files.
This is a no-op today, because we control it from the compiler command line.

BUG=430815

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

10 years agoGradient shaders: make fPtsToUnit const, pre-cache getType().
mtklein [Wed, 10 Dec 2014 18:29:19 +0000 (10:29 -0800)]
Gradient shaders: make fPtsToUnit const, pre-cache getType().

This prevents races when calling fPtsToUnit.getType() from multiple threads.

This introduces a small amount of redundant code in SkTwoPointRadialGradient,
but it's probably optimized together into no extra run-time work.

BUG=437511

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

10 years agoChange how SkDebugf is sent to stdout on Android.
scroggo [Wed, 10 Dec 2014 18:23:04 +0000 (10:23 -0800)]
Change how SkDebugf is sent to stdout on Android.

Previously, a function was called using dlsym in skia_launcher.

Add a static initializer that changes the setting, and include that for
the tools we automate for testing.

Also only do va_copy if we actually use it.

BUG=skia:2454

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

10 years agodd readPixels to SkImage
reed [Wed, 10 Dec 2014 17:53:42 +0000 (09:53 -0800)]
dd readPixels to SkImage

patch from issue 789673007 at patchset 1 (http://crrev.com/789673007#ps1)

BUG=skia:

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

10 years agoSuppress clipped-bitmap-shaders-clamp
Florin Malita [Wed, 10 Dec 2014 17:23:18 +0000 (12:23 -0500)]
Suppress clipped-bitmap-shaders-clamp

Pending PDF rebaseline after c54d8db4d169

TBR=scroggo@google.com

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

10 years agoRemove SkCanvas::drawBitmapMatrix()
Florin Malita [Wed, 10 Dec 2014 17:02:16 +0000 (12:02 -0500)]
Remove SkCanvas::drawBitmapMatrix()

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

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

10 years agomore rebaselines
Brian Salomon [Wed, 10 Dec 2014 16:46:46 +0000 (11:46 -0500)]
more rebaselines

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

10 years agoAdd more ignore gm's for recent Xfer Processor CL
egdaniel [Wed, 10 Dec 2014 16:14:44 +0000 (08:14 -0800)]
Add more ignore gm's for recent Xfer Processor CL

TBR=bsalomon@google.com
NOTRY=true

BUG=skia:

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

10 years agoAdd baseline images for new filterfastbounds GM
robertphillips [Wed, 10 Dec 2014 15:53:52 +0000 (07:53 -0800)]
Add baseline images for new filterfastbounds GM

TBR=scroggo@google.com

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

10 years agoCreate xfer processor backend.
egdaniel [Wed, 10 Dec 2014 15:43:49 +0000 (07:43 -0800)]
Create xfer processor backend.

This includes:
-Having an actual XP stage at the end of the gl pipeline.
-All Blending work is handled by XP until actually setting GL blend states
-GLPrograms test to test XP

BUG=skia:

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

10 years agoAdd GM for 2-rects blur which cannot break into nine-patch
qiankun.miao [Wed, 10 Dec 2014 15:40:36 +0000 (07:40 -0800)]
Add GM for 2-rects blur which cannot break into nine-patch

BUG=skia:

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

10 years agoRemove canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul
reed [Wed, 10 Dec 2014 15:24:28 +0000 (07:24 -0800)]
Remove canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul

patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001)

BUG=skia:
TBR=
re-landing after chrome fixes have landed

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

10 years agoAdd SSSE3 acceleration for S32_D16_filter_DX
qiankun.miao [Wed, 10 Dec 2014 15:21:35 +0000 (07:21 -0800)]
Add SSSE3 acceleration for S32_D16_filter_DX

With this CL, related nanobench can be improved for 565 config.
         bitmap_BGRA_8888_update_scale_bilerp   76.1us -> 46.7us        0.61x
                bitmap_BGRA_8888_scale_bilerp   78.7us ->   47us        0.6x
bitmap_BGRA_8888_update_volatile_scale_bilerp   82.7us -> 46.9us        0.57x

BUG=skia:

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

10 years agofix surface test for gpu and codecs
reed [Wed, 10 Dec 2014 14:54:06 +0000 (06:54 -0800)]
fix surface test for gpu and codecs

BUG=skia:

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

10 years agoUpdate SKP version
skia.buildbots [Wed, 10 Dec 2014 07:29:37 +0000 (23:29 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

10 years agoAdd bench to measure blur rects performance
qiankun.miao [Wed, 10 Dec 2014 01:47:05 +0000 (17:47 -0800)]
Add bench to measure blur rects performance

BUG=skia:

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

10 years agoUpdate SKP version
skia.buildbots [Tue, 9 Dec 2014 22:59:26 +0000 (14:59 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

10 years agoadd readPixels to SkSurface (later try to remove it from SkCanvas)
reed [Tue, 9 Dec 2014 22:39:44 +0000 (14:39 -0800)]
add readPixels to SkSurface (later try to remove it from SkCanvas)

BUG=skia:
TBR=bsalomon, robertphilips

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

10 years agoSkia: Track the fIsWrapped separately so that we delete correctly
hendrikw [Tue, 9 Dec 2014 22:26:47 +0000 (14:26 -0800)]
Skia: Track the fIsWrapped separately so that we delete correctly

GrGlTextureRenderTarget inherits virtually from both GrGlRenderTarget and
GrGLTexture, which both have a 'wrap' flag.  The passed in wrap setting could
be different for the two base classes, but since it's virtually inherited,
they share the same flag, so they're either both on, or both off.

As a result, we fail to delete the frambuffer.

To fix this, we now keep a separate isWrapped flag for GrGlRenderTarget.

BUG=437998

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

10 years agorrrrrrrrrrrreeeeeeeeeeebaseline!
Brian Salomon [Tue, 9 Dec 2014 22:23:46 +0000 (17:23 -0500)]
rrrrrrrrrrrreeeeeeeeeeebaseline!

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

10 years agoRevert of remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to...
reed [Tue, 9 Dec 2014 21:55:20 +0000 (13:55 -0800)]
Revert of remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul (patchset #3 id:40001 of https://codereview.chromium.org/790733003/)

Reason for revert:
need to update chrome first

Original issue's description:
> remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul
>
> patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001)
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/2c1605a1fbaa2e35a27399a34254fb1200ec2ae6

TBR=fmalita@google.com,fmalita@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

10 years agoThis cl moves color and coverage off of drawstate. In an effort to keep this CL...
joshualitt [Tue, 9 Dec 2014 21:31:14 +0000 (13:31 -0800)]
This cl moves color and coverage off of drawstate.  In an effort to keep this CL manageable, I have left the compute invariant input / output in a bit of a strange state(fixing this will be complicated).

In addition, NVPR makes this very complicated, and I haven't quite figured out a good way to handle it, so for now color and coverage DO live on optstate, but I will figure out some way to refactor that in future CLs.

BUG=skia:

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

10 years agoAdding an option for pixelated rendering in SkPictureImageFilter
junov [Tue, 9 Dec 2014 21:07:22 +0000 (13:07 -0800)]
Adding an option for pixelated rendering in SkPictureImageFilter

BUG=skia:3209

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

10 years agoMore N10 rebaselines
Brian Salomon [Tue, 9 Dec 2014 20:48:11 +0000 (15:48 -0500)]
More N10 rebaselines
TBR=

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

10 years agoRemove unused static function skcolor_to_grcolor_nopremultiply.
egdaniel [Tue, 9 Dec 2014 20:38:51 +0000 (12:38 -0800)]
Remove unused static function skcolor_to_grcolor_nopremultiply.

BUG=skia:

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

10 years agoremove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul
reed [Tue, 9 Dec 2014 20:33:38 +0000 (12:33 -0800)]
remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul

patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001)

BUG=skia:

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

10 years agoRebaseline after texture coord precision changes.
Brian Salomon [Tue, 9 Dec 2014 20:29:19 +0000 (15:29 -0500)]
Rebaseline after texture coord precision changes.

TBR=scroggo@google.com

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

10 years agochange SkPoint::setLength to set itself to (0,0) if it starting length is degenerate.
reed [Tue, 9 Dec 2014 19:50:32 +0000 (11:50 -0800)]
change SkPoint::setLength to set itself to (0,0) if it starting length is degenerate.

BUG=skia:3203
TBR=caryclark

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

10 years agoFix for alpha textures on Nexus 6.
jvanverth [Tue, 9 Dec 2014 19:37:11 +0000 (11:37 -0800)]
Fix for alpha textures on Nexus 6.

Nexus 6 appears to require a sized internal format for A8 textures, much
like other newer mobile devices. Changed to use sized format for A8
textures in general with ES 3.0.

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

10 years agoDon't call GetShaderPrecisionFormat for geometry shaders.
bsalomon [Tue, 9 Dec 2014 19:16:12 +0000 (11:16 -0800)]
Don't call GetShaderPrecisionFormat for geometry shaders.

TBR=egdaniel@google.com

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

10 years agoMake all blending up to GrOptDrawState be handled by the xp/xp factory.
egdaniel [Tue, 9 Dec 2014 19:15:43 +0000 (11:15 -0800)]
Make all blending up to GrOptDrawState be handled by the xp/xp factory.

In this cl the blending information is extracted for the xp and stored in the ODS
which is then used as it currently is. In the follow up cl, an XP backend will be added
and at that point all blending work will take place inside XP's.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/7c66342a399b529634bed0fabfaa562db2c0dbd4

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

10 years agoUse threshold of 1 texture coord value per pixel w/ nearest neighbor.
bsalomon [Tue, 9 Dec 2014 18:51:07 +0000 (10:51 -0800)]
Use threshold of 1 texture coord value per pixel w/ nearest neighbor.

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

10 years agoUse GrCoordTransform precision to set uniform matrix precision
bsalomon [Tue, 9 Dec 2014 18:38:57 +0000 (10:38 -0800)]
Use GrCoordTransform precision to set uniform matrix precision

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

10 years agoRename CustomCoordTextureEffect to GrBitmapTextGeoProc.
egdaniel [Tue, 9 Dec 2014 18:35:58 +0000 (10:35 -0800)]
Rename CustomCoordTextureEffect to GrBitmapTextGeoProc.

Also add in explicit set for LCD text in invariantOutput.

BUG=skia:

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

10 years agoUpdate nanobench so the non-MPD path doesn't permit layer hoisting
robertphillips [Tue, 9 Dec 2014 18:28:00 +0000 (10:28 -0800)]
Update nanobench so the non-MPD path doesn't permit layer hoisting

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

10 years agoSwitch non-MPD nanobench path to use a separate canvas per tile
robertphillips [Tue, 9 Dec 2014 18:27:54 +0000 (10:27 -0800)]
Switch non-MPD nanobench path to use a separate canvas per tile

It is desirable that, when layer hoisting is disabled, the MPD and non-MPD timings be
roughly the same. Unfortunately, using a separate canvas for each tile (a requirement
for MPD) introduces its own discrepancy into the timing. Using a separate canvas for
each tile doesn't seem to make a difference for 8888 (see the non-MPD 8888 column below)
but slows down GPU rendering (see the non-MPD GPU column below). Since this is how
Chromium renders I propose switching to this regimen (even though it is "slowing down"
GPU rendering).

nanobench mean times (ms) with layer hoisting disabled (for desk_amazon.skp)

8888
                          MPD     non-MPD
1 canvas (old-style)     0.628    1.71
separate (new-style)     0.795    1.63

GPU
                          MPD     non-MPD
1 canvas (old-style)     2.34     1.69
separate (new-style)     2.32     2.66

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

10 years agoIncrease timeouts for CSS3Gradients and GooglePlus pagesets
rmistry [Tue, 9 Dec 2014 18:19:32 +0000 (10:19 -0800)]
Increase timeouts for CSS3Gradients and GooglePlus pagesets

BUG=skia:3187
BUG=skia:3196

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

10 years agoMake addUniform take a precision
bsalomon [Tue, 9 Dec 2014 18:18:12 +0000 (10:18 -0800)]
Make addUniform take a precision

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

10 years agoMove shader precision out of GrShaderVar
bsalomon [Tue, 9 Dec 2014 18:04:14 +0000 (10:04 -0800)]
Move shader precision out of GrShaderVar

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

10 years agoUse texture size to determine precision of texture coord varyings.
bsalomon [Tue, 9 Dec 2014 17:00:49 +0000 (09:00 -0800)]
Use texture size to determine precision of texture coord varyings.

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

10 years agoRevert of Replace EncodeBitmap with an interface. (patchset #12 id:210001 of https...
scroggo [Tue, 9 Dec 2014 16:27:37 +0000 (08:27 -0800)]
Revert of Replace EncodeBitmap with an interface. (patchset #12 id:210001 of https://codereview.chromium.org/784643002/)

Reason for revert:
Failing serialization tasks in DM:

http://build.chromium.org/p/client.skia/builders/Test-Win8-ShuttleA-GTX660-x86-Debug/builds/352/steps/dm/logs/stdio

Original issue's description:
> Replace EncodeBitmap with an interface.
>
> Gives more flexibility to the caller to decide whether to use the
> encoded data returned by refEncodedData().
>
> Provides an implementation that supports the old version of
> SkPicture::serialize().
>
> TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely
>
> BUG=skia:3190
>
> Committed: https://skia.googlesource.com/skia/+/0c4aba6edb9900c597359dfa49d3ce4a41bc5dd1
>
> Committed: https://skia.googlesource.com/skia/+/02b217f80b01a7dda8493422e5257c36a9ce8464

TBR=reed@google.com,rmistry@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:3190

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

10 years agoReplace EncodeBitmap with an interface.
scroggo [Tue, 9 Dec 2014 15:44:36 +0000 (07:44 -0800)]
Replace EncodeBitmap with an interface.

Gives more flexibility to the caller to decide whether to use the
encoded data returned by refEncodedData().

Provides an implementation that supports the old version of
SkPicture::serialize().

TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely

BUG=skia:3190

Committed: https://skia.googlesource.com/skia/+/0c4aba6edb9900c597359dfa49d3ce4a41bc5dd1

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

10 years agoRebaselines for https://codereview.chromium.org/785893004/ (Fix MatrixImageFilter...
robertphillips [Tue, 9 Dec 2014 15:15:20 +0000 (07:15 -0800)]
Rebaselines for https://codereview.chromium.org/785893004/ (Fix MatrixImageFilter computeFastBounds)

The msaa4 image diffs aren't actually due to the named CL

TBR=scroggo@google.com

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

10 years agoAvoid crash on some 64b ARM NEON platforms.
tomhudson [Tue, 9 Dec 2014 15:09:08 +0000 (07:09 -0800)]
Avoid crash on some 64b ARM NEON platforms.

The compiler may choose to use x30 for a local loop counter;
ensure it's saved. Patch from kevin.petit@arm.com,
verified by benm@google.com.

R=djsollen@google.com

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

10 years agoRebaseline GalaxyS4 and Nexus10.
scroggo [Tue, 9 Dec 2014 13:49:50 +0000 (05:49 -0800)]
Rebaseline GalaxyS4 and Nexus10.

TBR=bsalomon

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

10 years agoRevert of Replace EncodeBitmap with an interface. (patchset #11 id:190001 of https...
robertphillips [Tue, 9 Dec 2014 13:35:07 +0000 (05:35 -0800)]
Revert of Replace EncodeBitmap with an interface. (patchset #11 id:190001 of https://codereview.chromium.org/784643002/)

Reason for revert:
Compilation is failing on some bots

Original issue's description:
> Replace EncodeBitmap with an interface.
>
> Gives more flexibility to the caller to decide whether to use the
> encoded data returned by refEncodedData().
>
> Provides an implementation that supports the old version of
> SkPicture::serialize().
>
> TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely
>
> BUG=skia:3190
>
> Committed: https://skia.googlesource.com/skia/+/0c4aba6edb9900c597359dfa49d3ce4a41bc5dd1

TBR=reed@google.com,scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:3190

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

10 years agoFix MatrixImageFilter computeFastBounds
robertphillips [Tue, 9 Dec 2014 13:28:24 +0000 (05:28 -0800)]
Fix MatrixImageFilter computeFastBounds

This CL makes the bounding box returned from SkMatrixImageFilter::computeFastBounds actually contain the final result pixels. This, in turn, fixes the first two rows of the filterfastbounds GM and the SVG web page cited in the bug.

BUG=418417

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

10 years agoDisplay text blob bounds in the debugger.
fmalita [Tue, 9 Dec 2014 13:28:20 +0000 (05:28 -0800)]
Display text blob bounds in the debugger.

Also fix YPOS.

R=robertphillips@google.com,jbroman@chromium.org

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

10 years agoCleanup GM:pictureshadertile
fmalita [Tue, 9 Dec 2014 13:23:20 +0000 (05:23 -0800)]
Cleanup GM:pictureshadertile

Post review cleanup for https://codereview.chromium.org/733203005/

TBR=robertphillips@google.com

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

10 years agoReplace EncodeBitmap with an interface.
scroggo [Tue, 9 Dec 2014 13:23:12 +0000 (05:23 -0800)]
Replace EncodeBitmap with an interface.

Gives more flexibility to the caller to decide whether to use the
encoded data returned by refEncodedData().

Provides an implementation that supports the old version of
SkPicture::serialize().

TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely

BUG=skia:3190

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

10 years agoRevert of Make all blending up to GrOptDrawState be handled by the xp/xp factory...
egdaniel [Mon, 8 Dec 2014 21:26:43 +0000 (13:26 -0800)]
Revert of Make all blending up to GrOptDrawState be handled by the xp/xp factory. (patchset #7 id:140001 of https://codereview.chromium.org/759713002/)

Reason for revert:
break many gm's

Original issue's description:
> Make all blending up to GrOptDrawState be handled by the xp/xp factory.
>
> In this cl the blending information is extracted for the xp and stored in the ODS
> which is then used as it currently is. In the follow up cl, an XP backend will be added
> and at that point all blending work will take place inside XP's.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7c66342a399b529634bed0fabfaa562db2c0dbd4

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

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

10 years agoFix GrUnPreMulColor.
egdaniel [Mon, 8 Dec 2014 20:35:16 +0000 (12:35 -0800)]
Fix GrUnPreMulColor.

Current version incorrectly unpacked the resulting sk unpremulled color into rgba.

BUG=skia:3208

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

10 years agoRemove virtual clear in PdfViewer's SkNulCanvas
robertphillips [Mon, 8 Dec 2014 19:37:35 +0000 (11:37 -0800)]
Remove virtual clear in PdfViewer's SkNulCanvas

Causing compilation complaints on Windows

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

10 years agoMake all blending up to GrOptDrawState be handled by the xp/xp factory.
egdaniel [Mon, 8 Dec 2014 19:20:39 +0000 (11:20 -0800)]
Make all blending up to GrOptDrawState be handled by the xp/xp factory.

In this cl the blending information is extracted for the xp and stored in the ODS
which is then used as it currently is. In the follow up cl, an XP backend will be added
and at that point all blending work will take place inside XP's.

BUG=skia:

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

10 years agoTweak SkPictureShader's tile semantics.
fmalita [Mon, 8 Dec 2014 19:13:27 +0000 (11:13 -0800)]
Tweak SkPictureShader's tile semantics.

Currently, the tile offset is added when drawing the picture. This might
have made a tiny bit of sense when the picture was always positioned at
origin, but with a picture cull rect offset things looks really strange.

For example, to specify a tile == the picture cull rect we have to pass
in [-cullrect.x, -cullrect.y, cullrect.width, cullrect.height]. Yikes.

(there's also a bug when not passing a tile, as we use a default tile
== cullrect but don't compensate for the above oddity)

This changes the semantics of the tile offset: it is now subtracted when
drawing the picture tile. As a consequence, one can pass in a tile equal
to the cull rect and get the expected behavior (same when not passing
a tile).

This will require a minor Blink change with the roll, as one client
works around the current behavior:
https://codereview.chromium.org/789503003

R=reed@google.com,robertphillips@google.com
BUG=440046

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

10 years agoMassive N10 Rebaseline Part 2
Brian Salomon [Mon, 8 Dec 2014 18:57:30 +0000 (13:57 -0500)]
Massive N10 Rebaseline Part 2

BUG=skia:3205

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

10 years agoAdd new GM (filterfastbounds)
robertphillips [Mon, 8 Dec 2014 17:18:58 +0000 (09:18 -0800)]
Add new GM (filterfastbounds)

This new GM visualizes the fast bounds computed by various image-filter-based SkPaints. This is lead up to fixing some issues in fast bound computation.

BUG=418417

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

10 years agoConstify CreatePictureShader's picture arg.
fmalita [Mon, 8 Dec 2014 17:04:05 +0000 (09:04 -0800)]
Constify CreatePictureShader's picture arg.

R=robertphillips@google.com

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

10 years agoUpdate dftext expectations after https://codereview.chromium.org/772633003/.
jvanverth [Mon, 8 Dec 2014 16:10:31 +0000 (08:10 -0800)]
Update dftext expectations after https://codereview.chromium.org/772633003/.

BUG=skia:3195, skia:3188
TBR=scroggo@google.com

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

10 years agoremove device::clear -- no longer called
reed [Mon, 8 Dec 2014 16:00:29 +0000 (08:00 -0800)]
remove device::clear -- no longer called

BUG=skia:

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

10 years agoMassive N10 Rebaseline
Brian Salomon [Mon, 8 Dec 2014 15:50:04 +0000 (10:50 -0500)]
Massive N10 Rebaseline

BUG=skia:3193

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

10 years agomake SkColorShader private, use public factory
reed [Mon, 8 Dec 2014 14:06:36 +0000 (06:06 -0800)]
make SkColorShader private, use public factory

BUG=skia:

Need https://codereview.chromium.org/785823002/ to land first

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

10 years agoadd convexity logic and tests for scalar max, Inf, and NaN
caryclark [Mon, 8 Dec 2014 12:57:38 +0000 (04:57 -0800)]
add convexity logic and tests for scalar max, Inf, and NaN

PathOps relies on isConvex() only returning true for trivially
convex paths. The old logic also returns true if the paths that
contain NaNs and Infinities. Return kUnknown_Convexity instead
in those cases and in cases where the convexity logic computes
intermediaries that overflow.

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

10 years agoclear() is now an alias for drawPaint, so remove its virtual
reed [Sat, 6 Dec 2014 04:49:03 +0000 (20:49 -0800)]
clear() is now an alias for drawPaint, so remove its virtual

Needs these to land first:
https://codereview.chromium.org/733343005
https://codereview.chromium.org/777413004

BUG=skia:

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

10 years agoAdd support for half float alpha textures.
jvanverth [Fri, 5 Dec 2014 21:06:35 +0000 (13:06 -0800)]
Add support for half float alpha textures.

This allows us to create distance field textures with better precision,
which may help text quality.

BUG=skia:3103

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

10 years agoCheck XpFactory equality in DrawState
egdaniel [Fri, 5 Dec 2014 20:58:28 +0000 (12:58 -0800)]
Check XpFactory equality in DrawState

BUG=skia:

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

10 years agorebaseline after GM change
reed [Fri, 5 Dec 2014 20:46:22 +0000 (12:46 -0800)]
rebaseline after GM change

BUG=skia:
TBR=
NOTRY=True

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

10 years agoFix include for GrPortderDuffXferProcessor.cpp
egdaniel [Fri, 5 Dec 2014 20:40:52 +0000 (12:40 -0800)]
Fix include for GrPortderDuffXferProcessor.cpp
TBR=bsalomon@google.com

BUG=skia:

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

10 years agoFactor text size device mapping in SkScalerContext.
bungeman [Fri, 5 Dec 2014 20:26:44 +0000 (12:26 -0800)]
Factor text size device mapping in SkScalerContext.

All of our font back-ends use the text size in some way other than
simple concatentation with the current matrix. The code here finds
the full device matrix and then decomposes it to extract the text
size.

FreeType, GDI, and DirectWrite use the text size as the pre-hint scale.
CoreText will not scale color emoji above the requested text size,
and certain features like 'trak' are performed on the text size.

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