platform/upstream/libSkiaSharp.git
11 years agoUse blitframebuffer to implement copySurface.
commit-bot@chromium.org [Thu, 11 Apr 2013 22:00:22 +0000 (22:00 +0000)]
Use blitframebuffer to implement copySurface.

Author: bsalomon@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13910009

git-svn-id: http://skia.googlecode.com/svn/trunk@8633 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoBetter fix for the patched build.
scroggo@google.com [Thu, 11 Apr 2013 20:11:40 +0000 (20:11 +0000)]
Better fix for the patched build.

skia_test is also built on Android in pathops_unittest, which needed
to also depend on the flags project.

Remove the hack in skia_test of providing the full path.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8632 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoshort names should be ... short, in commandlineflags
reed@google.com [Thu, 11 Apr 2013 19:04:34 +0000 (19:04 +0000)]
short names should be ... short, in commandlineflags

git-svn-id: http://skia.googlecode.com/svn/trunk@8629 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to trigger a rebuild.
scroggo@google.com [Thu, 11 Apr 2013 18:56:08 +0000 (18:56 +0000)]
Whitespace change to trigger a rebuild.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8628 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoInclude gif image decoding in images/ on linux.
scroggo@google.com [Thu, 11 Apr 2013 18:32:01 +0000 (18:32 +0000)]
Include gif image decoding in images/ on linux.

Build SkImageDecoder_libgif in images project and link against
libgif on linux.

Ensure that the GIF decoder is used in skimage.

Requires a new dependency on libgif-dev when building on linux.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8627 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoadd fontmgr tests, and optional --verboseFontMgr flag (or -vfm) for more output
reed@google.com [Thu, 11 Apr 2013 18:31:25 +0000 (18:31 +0000)]
add fontmgr tests, and optional --verboseFontMgr flag (or -vfm) for more output

git-svn-id: http://skia.googlecode.com/svn/trunk@8626 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agorestore option to --match (instead of --matchStr)
reed@google.com [Thu, 11 Apr 2013 18:27:52 +0000 (18:27 +0000)]
restore option to --match (instead of --matchStr)

git-svn-id: http://skia.googlecode.com/svn/trunk@8624 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoforward declare SkTypeface
reed@google.com [Thu, 11 Apr 2013 18:27:26 +0000 (18:27 +0000)]
forward declare SkTypeface

git-svn-id: http://skia.googlecode.com/svn/trunk@8623 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFixed bug in SkSurface_Gpu to make the surface receive the new copy when copy
junov@chromium.org [Thu, 11 Apr 2013 17:52:05 +0000 (17:52 +0000)]
Fixed bug in SkSurface_Gpu to make the surface receive the new copy when copy
on write happens.
Review URL: https://codereview.chromium.org/13195002

git-svn-id: http://skia.googlecode.com/svn/trunk@8622 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFix build. Unreviewed.
scroggo@google.com [Thu, 11 Apr 2013 17:27:58 +0000 (17:27 +0000)]
Fix build. Unreviewed.

I don't understand why this change is necessary. On Android,
SkCommandLineFlags.h is not found, but only in this project.
Other projects depend on flags and include the file without
using the full path. Likewise, this works on other platforms.
Removing for now until I figure out the correct fix.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8621 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agouse commandlineflags for tests/
commit-bot@chromium.org [Thu, 11 Apr 2013 16:54:09 +0000 (16:54 +0000)]
use commandlineflags for tests/

Author: reed@google.com

Reviewed By: scroggo@google.com

Review URL: https://chromiumcodereview.appspot.com/14047009

git-svn-id: http://skia.googlecode.com/svn/trunk@8616 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoUpdates for the skimage tool.
scroggo@google.com [Thu, 11 Apr 2013 15:53:35 +0000 (15:53 +0000)]
Updates for the skimage tool.

Allow passing files or folders on the command line.

Group the output to show all successes together, all failures
together, etc.

When writing a new png, do not make its file type ".png.png"
if the original was a png.

Force linking for JPEG decoder.

Use SkCommandLineFlags.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8615 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoGM: signal error if the total number of tests run was less than expected
epoger@google.com [Thu, 11 Apr 2013 15:41:02 +0000 (15:41 +0000)]
GM: signal error if the total number of tests run was less than expected
Review URL: https://codereview.chromium.org/13863009

git-svn-id: http://skia.googlecode.com/svn/trunk@8614 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoShader optimization for ovals.
commit-bot@chromium.org [Thu, 11 Apr 2013 15:05:37 +0000 (15:05 +0000)]
Shader optimization for ovals.

Previously we were setting a center point as an attribute
across all vertices, then using that with the interpolated
position to compute an offset. However, because the offset
computation is linear, we can just set the appropriate offset
at the vertices and let the rasterizer interpolate it for us.

Author: jvanverth@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/14093002

git-svn-id: http://skia.googlecode.com/svn/trunk@8613 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agopath ops fix release android build
caryclark@google.com [Thu, 11 Apr 2013 14:09:50 +0000 (14:09 +0000)]
path ops fix release android build

git-svn-id: http://skia.googlecode.com/svn/trunk@8611 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoshape ops test fixes
caryclark@google.com [Thu, 11 Apr 2013 12:33:23 +0000 (12:33 +0000)]
shape ops test fixes

- fix rand for Android
- build unit test on linux
- use atomic inc in test count
- add casting for Android

git-svn-id: http://skia.googlecode.com/svn/trunk@8610 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSanitizing source files in Skia_Periodic_House_Keeping
skia.committer@gmail.com [Thu, 11 Apr 2013 07:01:45 +0000 (07:01 +0000)]
Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8608 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRebaseline Nexus-7 performance triggers
robertphillips@google.com [Wed, 10 Apr 2013 23:25:36 +0000 (23:25 +0000)]
Rebaseline Nexus-7 performance triggers

git-svn-id: http://skia.googlecode.com/svn/trunk@8607 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to verify gclient_utils
borenet@google.com [Wed, 10 Apr 2013 20:12:52 +0000 (20:12 +0000)]
Whitespace change to verify gclient_utils

git-svn-id: http://skia.googlecode.com/svn/trunk@8606 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRemove MacMini 10.8 performance triggers because they keep flip flopping
robertphillips@google.com [Wed, 10 Apr 2013 18:57:58 +0000 (18:57 +0000)]
Remove MacMini 10.8 performance triggers because they keep flip flopping

git-svn-id: http://skia.googlecode.com/svn/trunk@8603 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agofix path ops assert
caryclark@google.com [Wed, 10 Apr 2013 18:55:11 +0000 (18:55 +0000)]
fix path ops assert

git-svn-id: http://skia.googlecode.com/svn/trunk@8602 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agofix a few pathops test bugs exposed on Mac and Linux
caryclark@google.com [Wed, 10 Apr 2013 18:53:01 +0000 (18:53 +0000)]
fix a few pathops test bugs exposed on Mac and Linux

git-svn-id: http://skia.googlecode.com/svn/trunk@8601 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoGM: remove enableMissingWarning in favor of verbose flag, and trim output in nonverbo...
epoger@google.com [Wed, 10 Apr 2013 18:46:25 +0000 (18:46 +0000)]
GM: remove enableMissingWarning in favor of verbose flag, and trim output in nonverbose mode
Review URL: https://codereview.chromium.org/14080003

git-svn-id: http://skia.googlecode.com/svn/trunk@8600 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agofix bug introduced with SK_IGNORE_CUBIC_STROKE_FIX where we no longer respected
reed@google.com [Wed, 10 Apr 2013 18:44:00 +0000 (18:44 +0000)]
fix bug introduced with SK_IGNORE_CUBIC_STROKE_FIX where we no longer respected
subDivide limit. This caused problems with degenate paths (too much recursion).

The fix was two parts:
1. decrement the subDivide limit as we recurse
2. up the limit for cubics to 7, to match our current quality

added unittest that replicated the too-much-recursion bug.
Review URL: https://codereview.chromium.org/14086002

git-svn-id: http://skia.googlecode.com/svn/trunk@8599 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRun mixedxfermodes GM through the pipe.
scroggo@google.com [Wed, 10 Apr 2013 18:10:41 +0000 (18:10 +0000)]
Run mixedxfermodes GM through the pipe.

Pass the size of the GM to SkGPipeWriter.startRecording(), so that
calls to getDeviceSize() on the returned SkCanvas return a reasonable
result. This allows removing the flag to skip mixedxfermodes.

BUG=https://code.google.com/p/skia/issues/detail?id=1199

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8598 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSimplify bench pictures render target creation.
commit-bot@chromium.org [Wed, 10 Apr 2013 17:27:30 +0000 (17:27 +0000)]
Simplify bench pictures render target creation.

Author: bsalomon@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13947016

git-svn-id: http://skia.googlecode.com/svn/trunk@8596 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoadd extended option to Test
caryclark@google.com [Wed, 10 Apr 2013 15:57:31 +0000 (15:57 +0000)]
add extended option to Test

The command line option
--extended runs extended tests
--verbose reports number of tests run (if recorded)

Added simple help as well.
Review URL: https://codereview.chromium.org/14063005

git-svn-id: http://skia.googlecode.com/svn/trunk@8595 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoMake parallel unit testing work on windows
caryclark@google.com [Wed, 10 Apr 2013 15:55:37 +0000 (15:55 +0000)]
Make parallel unit testing work on windows
Review URL: https://codereview.chromium.org/14072002

git-svn-id: http://skia.googlecode.com/svn/trunk@8594 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agogm: hide list of tests with ignored errors, by default
epoger@google.com [Wed, 10 Apr 2013 15:24:53 +0000 (15:24 +0000)]
gm: hide list of tests with ignored errors, by default
Review URL: https://codereview.chromium.org/13811031

git-svn-id: http://skia.googlecode.com/svn/trunk@8591 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoadd SK_API to public classes for sharedlib build
reed@google.com [Wed, 10 Apr 2013 13:10:40 +0000 (13:10 +0000)]
add SK_API to public classes for sharedlib build

git-svn-id: http://skia.googlecode.com/svn/trunk@8588 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agogm: record IntentionallySkipped tests
epoger@google.com [Wed, 10 Apr 2013 12:17:34 +0000 (12:17 +0000)]
gm: record IntentionallySkipped tests
Review URL: https://codereview.chromium.org/13663003

git-svn-id: http://skia.googlecode.com/svn/trunk@8586 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSanitizing source files in Skia_Periodic_House_Keeping
skia.committer@gmail.com [Wed, 10 Apr 2013 07:01:15 +0000 (07:01 +0000)]
Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8584 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoTemporary patch to get Chrome Windows compiling
robertphillips@google.com [Tue, 9 Apr 2013 23:56:51 +0000 (23:56 +0000)]
Temporary patch to get Chrome Windows compiling

git-svn-id: http://skia.googlecode.com/svn/trunk@8583 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSkFlags now follows proper dashing convention.
scroggo@google.com [Tue, 9 Apr 2013 21:25:46 +0000 (21:25 +0000)]
SkFlags now follows proper dashing convention.

Two dashes are used for flags with multiple characters, and one
dash is used for flags with single characters.

In GM, changed '-wp' to '-p' (the command to choose a directory
for writing SKPs) to fit with the convention.

In render_pictures and bench_pictures, changed the flag for
read and write path to have full names (which are consistent)
and use the old single character names as their shortcuts.

SkCommandLineFlags: Updated the documentation, and only allow
-h or --help for help (again, to match the convention).
Also enforce the single character limit for the short name, and
require the full name to be at least two characters.

Provide full names for skhello.

BUG=https://code.google.com/p/skia/issues/detail?id=1174

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8582 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to test the CQ.
commit-bot@chromium.org [Tue, 9 Apr 2013 19:33:28 +0000 (19:33 +0000)]
Whitespace change to test the CQ.

TBR=borenet@google.com

(SkipBuildbotRuns)

Author: rmistry@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13913016

git-svn-id: http://skia.googlecode.com/svn/trunk@8581 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoMake SkTypeFace::Deserialize work for embedded fonts.
bungeman@google.com [Tue, 9 Apr 2013 19:29:45 +0000 (19:29 +0000)]
Make SkTypeFace::Deserialize work for embedded fonts.
https://codereview.appspot.com/8584044/

git-svn-id: http://skia.googlecode.com/svn/trunk@8580 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoPartial reapply of r5364 minus the non-neon code path.
djsollen@google.com [Tue, 9 Apr 2013 18:06:06 +0000 (18:06 +0000)]
Partial reapply of r5364 minus the non-neon code path.

See https://codereview.appspot.com/6465075 for a more detailed description of the contents of this CL.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8579 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoPartial fix for skp reading failure on fonts
robertphillips@google.com [Tue, 9 Apr 2013 17:35:29 +0000 (17:35 +0000)]
Partial fix for skp reading failure on fonts

verbal lgtm from bungeman@

git-svn-id: http://skia.googlecode.com/svn/trunk@8578 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFixing SkTileGrid to clamp rather than clip content and querries that are outside...
junov@chromium.org [Tue, 9 Apr 2013 16:13:09 +0000 (16:13 +0000)]
Fixing SkTileGrid to clamp rather than clip content and querries that are outside the bounds of the grid

This fix prevents border padding and offsets on the tile grid structure from resulting in bad clipping. The job of clipping contents is left to the playback canvas.

BUG=https://code.google.com/p/skia/issues/detail?id=1209
TEST=TileGrid unit test,
Review URL: https://codereview.chromium.org/13493016

git-svn-id: http://skia.googlecode.com/svn/trunk@8576 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoextend FontConfigInterface to start to match new fontmgr design
reed@google.com [Tue, 9 Apr 2013 15:54:52 +0000 (15:54 +0000)]
extend FontConfigInterface to start to match new fontmgr design
Review URL: https://codereview.chromium.org/13297004

git-svn-id: http://skia.googlecode.com/svn/trunk@8575 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoMake GrIODB record and play back copySurface.
bsalomon@google.com [Tue, 9 Apr 2013 15:38:19 +0000 (15:38 +0000)]
Make GrIODB record and play back copySurface.
Review URL: https://codereview.chromium.org/13581003

git-svn-id: http://skia.googlecode.com/svn/trunk@8574 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoReland of 8525 with fix for case when GrRT outlives GrTexture.
bsalomon@google.com [Tue, 9 Apr 2013 15:04:12 +0000 (15:04 +0000)]
Reland of 8525 with fix for case when GrRT outlives GrTexture.
Review URL: https://codereview.chromium.org/13814015

git-svn-id: http://skia.googlecode.com/svn/trunk@8573 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFix compiler warning/error in r8571
robertphillips@google.com [Tue, 9 Apr 2013 14:08:15 +0000 (14:08 +0000)]
Fix compiler warning/error in r8571

git-svn-id: http://skia.googlecode.com/svn/trunk@8572 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFirst pass at Rect Effect
robertphillips@google.com [Tue, 9 Apr 2013 14:01:44 +0000 (14:01 +0000)]
First pass at Rect Effect

https://codereview.chromium.org/13521006/

git-svn-id: http://skia.googlecode.com/svn/trunk@8571 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoDeleting the hardcoded list of compile bots in trybots_to_run.
rmistry@google.com [Tue, 9 Apr 2013 11:59:42 +0000 (11:59 +0000)]
Deleting the hardcoded list of compile bots in trybots_to_run.

The submitted change https://codereview.chromium.org/13493012/ makes this list unnecessary.

(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13947006

git-svn-id: http://skia.googlecode.com/svn/trunk@8570 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoIntroduce aliases and regex in submit_try.
rmistry@google.com [Tue, 9 Apr 2013 11:46:46 +0000 (11:46 +0000)]
Introduce aliases and regex in submit_try.

Adding the aliases 'compile' and 'cq'. Also adding a alias 'regex' that prompts the user for a regex, displays results and prompts again for confirmation.

Created to fix the feature request https://code.google.com/p/skia/issues/detail?id=1207 : replace hard-coded trybot lists with automated filtering.

(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13493012

git-svn-id: http://skia.googlecode.com/svn/trunk@8569 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSanitizing source files in Skia_Periodic_House_Keeping
skia.committer@gmail.com [Tue, 9 Apr 2013 07:01:27 +0000 (07:01 +0000)]
Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8568 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agosilence android warning
humper@google.com [Mon, 8 Apr 2013 21:54:58 +0000 (21:54 +0000)]
silence android warning

git-svn-id: http://skia.googlecode.com/svn/trunk@8567 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoError checking / reporting API
humper@google.com [Mon, 8 Apr 2013 21:44:11 +0000 (21:44 +0000)]
Error checking / reporting API

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8566 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agosaving the old before blowing away
caryclark@google.com [Mon, 8 Apr 2013 20:37:35 +0000 (20:37 +0000)]
saving the old before blowing away

git-svn-id: http://skia.googlecode.com/svn/trunk@8565 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agosaving away the old before blowing the machine away
caryclark@google.com [Mon, 8 Apr 2013 20:36:19 +0000 (20:36 +0000)]
saving away the old before blowing the machine away

git-svn-id: http://skia.googlecode.com/svn/trunk@8564 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAllow single-pass filters (which use asNewEffect()) to participate in the image filte...
senorblanco@chromium.org [Mon, 8 Apr 2013 19:43:22 +0000 (19:43 +0000)]
Allow single-pass filters (which use asNewEffect()) to participate in the image filter DAG.  This was done by introducing the SkSinglePassImageFilter abstract base class, which implements canFilterImageGPU() and filterImageGPU() on behalf of the derived class.  The derived class still only needs to asNewEffect().  This allows us to recurse on the filter input in SkSinglePassImageFilter::onFilterImageGPU().  It also allows us to remove any knowledge of single-pass image filters from SkGpuDevice and from the SkImageFilter base class as well.

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8563 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd before and after command count to filter tool
robertphillips@google.com [Mon, 8 Apr 2013 15:45:30 +0000 (15:45 +0000)]
Add before and after command count to filter tool

https://codereview.chromium.org/13405003/

git-svn-id: http://skia.googlecode.com/svn/trunk@8562 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSwitches to a Skia-specific appengine entry point that uses condensed data and taskqu...
bensong@google.com [Mon, 8 Apr 2013 14:57:40 +0000 (14:57 +0000)]
Switches to a Skia-specific appengine entry point that uses condensed data and taskqueue writes (SkipBuildbotRuns).
The default entry /add_point does not handle large data efficiently, so we've seen >30min timeouts for some bots to upload data. We now switch to using /skia_add_points that I'm writing for Skia, so we can condense the data to send to minimum (since all points in each batch have the same revision, platform and config), and dedicate the actual data processing to /skia_write_datastore which is a taskqueue task that has longer timeout and can run at app backend instead of blocking the bots.
Initial testing from my MacBook on Mac 64 bench data via vpn gave only a little more than 1 second for uploading data for one config, about 15 seconds for all 12 configs. That's a big win against 20+ minutes.
Review URL: https://codereview.chromium.org/13762002

git-svn-id: http://skia.googlecode.com/svn/trunk@8560 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agokeep old experimental code in sync
caryclark@google.com [Mon, 8 Apr 2013 11:53:42 +0000 (11:53 +0000)]
keep old experimental code in sync

git-svn-id: http://skia.googlecode.com/svn/trunk@8554 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd implementation of path ops
caryclark@google.com [Mon, 8 Apr 2013 11:50:46 +0000 (11:50 +0000)]
Add implementation of path ops

This CL depends on
https://codereview.chromium.org/12880016/
"Add intersections for path ops"

Given a path, iterate through its contour, and
construct an array of segments containing its curves.

Intersect each curve with every other curve, and for
cubics, with itself.

Given the set of intersections, find one with the
smallest y and sort the curves eminating from the
intersection. Assign each curve a winding value.

Operate on the curves, keeping and discarding them
according to the current operation and the sum of
the winding values.

Assemble the kept curves into an output path.
Review URL: https://codereview.chromium.org/13094010

git-svn-id: http://skia.googlecode.com/svn/trunk@8553 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd intersections for path ops
caryclark@google.com [Mon, 8 Apr 2013 11:50:00 +0000 (11:50 +0000)]
Add intersections for path ops

This CL depends on
https://codereview.chromium.org/12827020/
"Add base types for path ops"

The intersection of a line, quadratic, or cubic
with another curve (or with itself) is found by
solving the implicit equation for the curve pair.

The curves are first reduced to find the simplest
form that will describe the original, and to detect
degenerate or special-case data like horizontal and
vertical lines.

For cubic self-intersection, and for a pair of cubics,
the intersection is found by recursively
approximating the cubic with a series of quadratics.

The implicit solutions depend on the root finding
contained in the DCubic and DQuad structs, and
the quartic root finder included here.
Review URL: https://codereview.chromium.org/12880016

git-svn-id: http://skia.googlecode.com/svn/trunk@8552 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd base types for path ops
caryclark@google.com [Mon, 8 Apr 2013 11:47:37 +0000 (11:47 +0000)]
Add base types for path ops

Paths contain lines, quads, and cubics, which are
collectively curves.

To work with path intersections, intermediary curves
are constructed. For now, those intermediates use
doubles to guarantee sufficient precision.

The DVector, DPoint, DLine, DQuad, and DCubic
structs encapsulate these intermediate curves.

The DRect and DTriangle structs are created to
describe intersectable areas of interest.

The Bounds struct inherits from SkRect to create
a SkScalar-based rectangle that intersects shared
edges.

This also includes common math equalities and
debugging that the remainder of path ops builds on,
as well as a temporary top-level interface in
include/pathops/SkPathOps.h.
Review URL: https://codereview.chromium.org/12827020

git-svn-id: http://skia.googlecode.com/svn/trunk@8551 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFix font handles leak. We return without freeing resources.
edisonn@google.com [Sat, 6 Apr 2013 20:26:15 +0000 (20:26 +0000)]
Fix font handles leak. We return without freeing resources.
Fix for crbug/225256
Review URL: https://codereview.chromium.org/13637004

git-svn-id: http://skia.googlecode.com/svn/trunk@8549 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSanitizing source files in Skia_Periodic_House_Keeping
skia.committer@gmail.com [Sat, 6 Apr 2013 07:01:10 +0000 (07:01 +0000)]
Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8548 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFix more clang errors.
tfarina@chromium.org [Fri, 5 Apr 2013 21:13:14 +0000 (21:13 +0000)]
Fix more clang errors.

Fixed -Wunused-private-field errors.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8547 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoUnreviewed test fix
sugoi@google.com [Fri, 5 Apr 2013 14:38:08 +0000 (14:38 +0000)]
Unreviewed test fix

Just commenting out the test for now, will investigate...

git-svn-id: http://skia.googlecode.com/svn/trunk@8544 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoReduce size of second iteration in SkTileGridNextDatum<>().
tomhudson@google.com [Fri, 5 Apr 2013 14:21:04 +0000 (14:21 +0000)]
Reduce size of second iteration in SkTileGridNextDatum<>().

Rather than iterating over the entire dataset twice, during the first pass
track how large the second pass needs to be. Entirely data-dependent but
in practice approaches 2x speedup.

BUG=1212
R=junov
https://codereview.appspot.com/8315044/

git-svn-id: http://skia.googlecode.com/svn/trunk@8543 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoNew SVG turbulence in Skia
sugoi@google.com [Fri, 5 Apr 2013 13:47:09 +0000 (13:47 +0000)]
New SVG turbulence in Skia

This cl contains the code for CPU generation of noise.

TEST:Added 'perlinnoise' gm
Review URL: https://codereview.chromium.org/13094003

git-svn-id: http://skia.googlecode.com/svn/trunk@8541 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRevert Skia to use -02.
djsollen@google.com [Thu, 4 Apr 2013 19:42:51 +0000 (19:42 +0000)]
Revert Skia to use -02.

There was no clear speed improvement and the
increase in binary size was substantial.

Committed: http://code.google.com/p/skia/source/detail?r=8492

Committed: https://code.google.com/p/skia/source/detail?r=8494

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8539 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agore-land r8535, now that src.chromium.org is back up
epoger@google.com [Thu, 4 Apr 2013 19:23:11 +0000 (19:23 +0000)]
re-land r8535, now that src.chromium.org is back up
Review URL: https://codereview.chromium.org/13662002

git-svn-id: http://skia.googlecode.com/svn/trunk@8538 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to see if svn.chromium.org is back
rmistry@google.com [Thu, 4 Apr 2013 19:13:40 +0000 (19:13 +0000)]
Whitespace change to see if svn.chromium.org is back

git-svn-id: http://skia.googlecode.com/svn/trunk@8537 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRevert r8535
epoger@google.com [Thu, 4 Apr 2013 18:21:48 +0000 (18:21 +0000)]
Revert r8535

git-svn-id: http://skia.googlecode.com/svn/trunk@8536 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agogm: report ExpectationsMismatch and RenderModeMismatch results separately
epoger@google.com [Thu, 4 Apr 2013 18:11:31 +0000 (18:11 +0000)]
gm: report ExpectationsMismatch and RenderModeMismatch results separately
Review URL: https://codereview.chromium.org/13650002

git-svn-id: http://skia.googlecode.com/svn/trunk@8535 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change - Verify that checkouts are fixed
borenet@google.com [Thu, 4 Apr 2013 14:12:22 +0000 (14:12 +0000)]
Whitespace change - Verify that checkouts are fixed

Unreviewed

git-svn-id: http://skia.googlecode.com/svn/trunk@8533 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to verify successful builds after master restart
borenet@google.com [Thu, 4 Apr 2013 13:00:01 +0000 (13:00 +0000)]
Whitespace change to verify successful builds after master restart

Unreviewed.

git-svn-id: http://skia.googlecode.com/svn/trunk@8532 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to test commit queue compile bots
commit-bot@chromium.org [Thu, 4 Apr 2013 11:59:55 +0000 (11:59 +0000)]
Whitespace change to test commit queue compile bots

(SkipBuildbotRuns)

Author: rmistry@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13631002

git-svn-id: http://skia.googlecode.com/svn/trunk@8530 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSanitizing source files in Skia_Periodic_House_Keeping
skia.committer@gmail.com [Thu, 4 Apr 2013 07:01:12 +0000 (07:01 +0000)]
Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8529 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRevert 8525,8526 pending investigation of bench_pictures crashes.
bsalomon@google.com [Wed, 3 Apr 2013 21:06:42 +0000 (21:06 +0000)]
Revert 8525,8526 pending investigation of bench_pictures crashes.

git-svn-id: http://skia.googlecode.com/svn/trunk@8527 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoCommit file accidentally left out of glc change for r8525
bsalomon@google.com [Wed, 3 Apr 2013 19:55:19 +0000 (19:55 +0000)]
Commit file accidentally left out of glc change for r8525

git-svn-id: http://skia.googlecode.com/svn/trunk@8526 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRemove GrTexture::releaseRenderTarget() and add GrSurface::isSameAs().
bsalomon@google.com [Wed, 3 Apr 2013 19:49:13 +0000 (19:49 +0000)]
Remove GrTexture::releaseRenderTarget() and add GrSurface::isSameAs().
Review URL: https://codereview.chromium.org/13414006

git-svn-id: http://skia.googlecode.com/svn/trunk@8525 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd list of Skia trybots to run CLs against, along with existing lists of Chrome...
epoger@google.com [Wed, 3 Apr 2013 18:48:18 +0000 (18:48 +0000)]
Add list of Skia trybots to run CLs against, along with existing lists of Chrome trybots
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13545002

git-svn-id: http://skia.googlecode.com/svn/trunk@8522 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoMake submit_try accept space- or comma-separated list
epoger@google.com [Wed, 3 Apr 2013 18:35:35 +0000 (18:35 +0000)]
Make submit_try accept space- or comma-separated list
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13535005

git-svn-id: http://skia.googlecode.com/svn/trunk@8521 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoWhitespace change to test the commit queue compile bots
commit-bot@chromium.org [Wed, 3 Apr 2013 18:30:26 +0000 (18:30 +0000)]
Whitespace change to test the commit queue compile bots

(SkipBuildbotRuns)

Author: rmistry@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13561002

git-svn-id: http://skia.googlecode.com/svn/trunk@8520 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agore-land r8514 without breaking 32-bit Mac compilers
epoger@google.com [Wed, 3 Apr 2013 18:00:39 +0000 (18:00 +0000)]
re-land r8514 without breaking 32-bit Mac compilers
Review URL: https://codereview.chromium.org/13427004

git-svn-id: http://skia.googlecode.com/svn/trunk@8518 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRebaseline Ubuntu performance trigger
robertphillips@google.com [Wed, 3 Apr 2013 17:31:22 +0000 (17:31 +0000)]
Rebaseline Ubuntu performance trigger

git-svn-id: http://skia.googlecode.com/svn/trunk@8516 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoroll out r8514
epoger@google.com [Wed, 3 Apr 2013 17:12:42 +0000 (17:12 +0000)]
roll out r8514
Review URL: https://codereview.chromium.org/13503003

git-svn-id: http://skia.googlecode.com/svn/trunk@8515 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agogm: display summary of all results by ErrorType
epoger@google.com [Wed, 3 Apr 2013 17:02:53 +0000 (17:02 +0000)]
gm: display summary of all results by ErrorType
as discussed in https://codereview.chromium.org/12825005/#msg14
Review URL: https://codereview.chromium.org/12851022

git-svn-id: http://skia.googlecode.com/svn/trunk@8514 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoBuild fix for Surface Test on non-gpu builds
junov@chromium.org [Wed, 3 Apr 2013 15:25:46 +0000 (15:25 +0000)]
Build fix for Surface Test on non-gpu builds

git-svn-id: http://skia.googlecode.com/svn/trunk@8513 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFixed bug with SkImage leaving canvas backing store in an immutable state after destroy.
junov@chromium.org [Wed, 3 Apr 2013 15:03:26 +0000 (15:03 +0000)]
Fixed bug with SkImage leaving canvas backing store in an immutable state after destroy.
Added unit test that verifies that surface backing is writable after creating and destroying an image.
Review URL: https://codereview.chromium.org/13226002

git-svn-id: http://skia.googlecode.com/svn/trunk@8512 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd GrDrawTarget::copySurface.
bsalomon@google.com [Wed, 3 Apr 2013 14:56:40 +0000 (14:56 +0000)]
Add GrDrawTarget::copySurface.
Review URL: https://codereview.chromium.org/13428004

git-svn-id: http://skia.googlecode.com/svn/trunk@8510 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoReplacing 'new' with 'SkNEW_ARGS' in SkImage_Gpu
junov@chromium.org [Wed, 3 Apr 2013 13:58:32 +0000 (13:58 +0000)]
Replacing 'new' with 'SkNEW_ARGS' in SkImage_Gpu
Review URL: https://codereview.chromium.org/13535004

git-svn-id: http://skia.googlecode.com/svn/trunk@8509 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFix build error when building Android in Release mode with -O2.
djsollen@google.com [Wed, 3 Apr 2013 12:34:16 +0000 (12:34 +0000)]
Fix build error when building Android in Release mode with -O2.

This fixes the folowing error...

../../../src/pdf/SkPDFShader.cpp: In function 'void gradientFunctionCode(const SkShader::GradientInfo&, SkString*)':
../../../src/pdf/SkPDFShader.cpp:69:19: error: array subscript is above array bounds [-Werror=array-bounds]

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8506 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSkDraw.h #include cleanup
tomhudson@google.com [Wed, 3 Apr 2013 10:18:17 +0000 (10:18 +0000)]
SkDraw.h #include cleanup

Removal of SkAutoKern header was already done in r8495; this just
lands the replacement of #includes with forward declarations for
incremental compile speed.

https://codereview.appspot.com/8109043/

git-svn-id: http://skia.googlecode.com/svn/trunk@8504 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoSanitizing source files in Skia_Periodic_House_Keeping
skia.committer@gmail.com [Wed, 3 Apr 2013 07:01:14 +0000 (07:01 +0000)]
Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8503 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoMake drawRect preserve vertex attrib state and push/pop the geom sources.
bsalomon@google.com [Tue, 2 Apr 2013 21:00:15 +0000 (21:00 +0000)]
Make drawRect preserve vertex attrib state and push/pop the geom sources.

Also, add some balancing calls for setIndexSource*()
Review URL: https://codereview.chromium.org/13468004

git-svn-id: http://skia.googlecode.com/svn/trunk@8499 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoFix for effect cache key.
commit-bot@chromium.org [Tue, 2 Apr 2013 20:48:38 +0000 (20:48 +0000)]
Fix for effect cache key.

Adds the additional shift needed to incorporate the attribKeyBits.  Also simplifies the creation of the static globals for the edge effects.

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/13465019

git-svn-id: http://skia.googlecode.com/svn/trunk@8498 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRemove unused header declaration.
commit-bot@chromium.org [Tue, 2 Apr 2013 18:41:32 +0000 (18:41 +0000)]
Remove unused header declaration.

BUG=1179

Author: djsollen@google.com

Reviewed By: reed@google.com,tomhudson@chromium.org

Review URL: https://chromiumcodereview.appspot.com/13097005

git-svn-id: http://skia.googlecode.com/svn/trunk@8495 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRevert Skia to use -02.
djsollen@google.com [Tue, 2 Apr 2013 18:14:21 +0000 (18:14 +0000)]
Revert Skia to use -02.

There was no clear speed improvement and the
increase in binary size was substantial.

Committed: http://code.google.com/p/skia/source/detail?r=8492

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8494 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoMove edge GrEffects to locally defined classes.
commit-bot@chromium.org [Tue, 2 Apr 2013 17:57:21 +0000 (17:57 +0000)]
Move edge GrEffects to locally defined classes.

This removes the general GrEdgeEffect and the specialized oval GrEffects and declares them within the renderer files that use them. It also splits GrEdgeEffect into three different GrEffects.

Author: jvanverth@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13344002

git-svn-id: http://skia.googlecode.com/svn/trunk@8493 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoRevert Skia to use -02.
commit-bot@chromium.org [Tue, 2 Apr 2013 17:36:30 +0000 (17:36 +0000)]
Revert Skia to use -02.

There was no clear speed improvement and the
increase in binary size was substantial.

Author: djsollen@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13468010

git-svn-id: http://skia.googlecode.com/svn/trunk@8492 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoIncreases batch size for sending bench data to appengine to 66.
bensong@google.com [Tue, 2 Apr 2013 16:41:55 +0000 (16:41 +0000)]
Increases batch size for sending bench data to appengine to 66.
This is part of the attempt to avoid bench step timeout errors (10-20min).
Review URL: https://codereview.chromium.org/13430011

git-svn-id: http://skia.googlecode.com/svn/trunk@8491 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoresubmit https://code.google.com/p/skia/source/detail?r=7883 (in the meantime we
edisonn@google.com [Tue, 2 Apr 2013 15:33:08 +0000 (15:33 +0000)]
resubmit https://code.google.com/p/skia/source/detail?r=7883 (in the meantime we
added capability to collect minidump and callstack if buildbot fails with heap
coruption in windows, and a NPE bug was fixed in SkPDFDocument, when document was destroyed without ever beeing used and a field was NULL + a few minor conflicts have been resolved)

git-svn-id: http://skia.googlecode.com/svn/trunk@8487 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoExpand filter 0 to handle transparent drawBitmapRect paints
robertphillips@google.com [Tue, 2 Apr 2013 15:30:03 +0000 (15:30 +0000)]
Expand filter 0 to handle transparent drawBitmapRect paints

https://codereview.chromium.org/13394014/

git-svn-id: http://skia.googlecode.com/svn/trunk@8486 2bbb7eff-a529-9590-31e7-b0007b416f81

11 years agoAdd tile rendering to GM
robertphillips@google.com [Tue, 2 Apr 2013 15:18:41 +0000 (15:18 +0000)]
Add tile rendering to GM

https://codereview.chromium.org/13165011/

git-svn-id: http://skia.googlecode.com/svn/trunk@8485 2bbb7eff-a529-9590-31e7-b0007b416f81