robertphillips@google.com
2dd76d7668
Hamfisted fix to drawLooper w/ 0 stages bug
...
https://codereview.chromium.org/16305002/
git-svn-id: http://skia.googlecode.com/svn/trunk@9393 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-02 16:47:06 +00:00
skia.committer@gmail.com
26da7f00ae
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9387 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-01 07:01:39 +00:00
reed@google.com
1b6a04ff84
use SkIntToScalar to fix warning
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9382 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 21:06:03 +00:00
reed@google.com
7edec14039
start a wrapper for color fonts
...
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/14890016
git-svn-id: http://skia.googlecode.com/svn/trunk@9381 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 20:17:57 +00:00
edisonn@google.com
a20e42c08b
Remove SK_API, from SkTSet. the template is not public.
...
Review URL: https://codereview.chromium.org/15792016
git-svn-id: http://skia.googlecode.com/svn/trunk@9374 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 18:04:20 +00:00
senorblanco@chromium.org
86fc266eda
Implement SkXfermode image filter. This required changing the signature of SkXfermode::asNewEffectOrCoeffs(), to add an optional background texture.
...
For the raster path, we do a straightforward 2-pass method: draw background, then composite the foreground over it.
For the GPU path, if the xfermode can be expressed as an effect, we build an effect with the background texture incorporated, then do a single-pass draw fetching both foreground and background textures, and compositing to the result. If the xfermode is expressed as src/dst coefficients, we do a 2-pass draw as in the raster path and use fixed-function blending.
R=bsalomon@google.com , reed@google.com
Review URL: https://codereview.chromium.org/16125008
git-svn-id: http://skia.googlecode.com/svn/trunk@9373 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 17:49:12 +00:00
reed@google.com
277c3f8765
bump picture version since SkPath has changed (conics)
...
enable conics in SkPath
git-svn-id: http://skia.googlecode.com/svn/trunk@9370 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 15:17:50 +00:00
scroggo@google.com
2d76d933ff
Read and write pixel offset when serializing bitmaps.
...
Remove ifdef's preventing a change to read and write offsets.
This fixes a bug where the SKP will draw the wrong portion
of bitmaps.
In addition, read the offset from the stream whether the
bitmap decoder succeeds or not, so that a failure to decode
still advances the stream to the correct spot.
Set the offset to 0 before calling SkPicture::EncodeBitmap,
so that if the function does not set it, we will not
modify the offset.
REQUIRES A CHANGE TO THE PICTURE VERSION. Does not change
PICTURE_VERSION itself, since other CLs are also requiring
a change.
BUG=https://code.google.com/p/skia/issues/detail?id=1301
R=djsollen@google.com
Review URL: https://codereview.chromium.org/15713015
git-svn-id: http://skia.googlecode.com/svn/trunk@9368 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 14:39:54 +00:00
scroggo@google.com
d5936923ad
Fix iOS build.
...
Review URL: https://codereview.chromium.org/15647010
git-svn-id: http://skia.googlecode.com/svn/trunk@9367 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 14:27:55 +00:00
scroggo@google.com
85322368ce
Fix build.
...
Remove CreateDefaultDecoder call, since the function was removed.
Review URL: https://codereview.chromium.org/16256003
git-svn-id: http://skia.googlecode.com/svn/trunk@9365 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 14:06:16 +00:00
scroggo@google.com
7def5e1630
Separate core and images project.
...
SkImage calls functions on SkImageDecoder and SkImageEncoder. This
is desired behavior, and it is also desired to include SkImage as
a part of core. In order to keep core from depending on images,
update SkImageDecoder_empty.cpp to implement all of SkImageDecoder
and SkImageEncoder. This file will be built by chrome (in
https://codereview.chromium.org/15960015 ).
Move force_linking from SkImageDecoder.cpp to its own file. It must
be called to force linking with the image decoders if desired. Call
the function in tools that need it:
sk_image
render_pictures
render_pdfs
sk_hello
filter
bench_pictures
debugger
SkImageDecoder:
Derive from SkNoncopyable, instead of duplicating its
hiding of constructors.
skhello:
Return rather than trying to write a null SkData to the stream.
Revert "Hamfistedly removed core dependence on images"
(commit 0f05f682a90bc125323677abf3476e1027d174f5) and
"Move SkImage::encode to SkImage_Codec.cpp."
(commit 83e47a954d0bf65439f3d9c0c93213063dd70da3.)
These two commits were temporary fixes that this change
cleans up.
SkSnapshot.cpp:
Check for a NULL encoder returned by SkImageEncoder::Create.
BUG=https://code.google.com/p/skia/issues/detail?id=1275
R=djsollen@google.com , robertphillips@google.com
Review URL: https://codereview.chromium.org/15806010
git-svn-id: http://skia.googlecode.com/svn/trunk@9364 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 14:00:10 +00:00
humper@google.com
1922c2e62e
specialize bicubic filtering for scale-only
...
BUG=
Review URL: https://codereview.chromium.org/15941012
git-svn-id: http://skia.googlecode.com/svn/trunk@9360 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 12:49:18 +00:00
reed@google.com
e3823fd901
add script to scrape glyph usage in drawText calls
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9353 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-30 18:55:14 +00:00
reed@google.com
fa2f2a48f6
Revert "add asserts to point<-->verb helpers"
...
This reverts commit b4775ac7b55802e87231768f002e4b42f233b0aa.
git-svn-id: http://skia.googlecode.com/svn/trunk@9347 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-30 15:29:48 +00:00
reed@google.com
7950a9eba7
add asserts to point<-->verb helpers
...
patch from issue 16153005
BUG=
Review URL: https://codereview.chromium.org/16195004
git-svn-id: http://skia.googlecode.com/svn/trunk@9344 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-30 14:57:55 +00:00
skia.committer@gmail.com
a5d3e77420
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9343 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-30 07:01:29 +00:00
senorblanco@chromium.org
1afa3fff29
Speculative fix for Tegra-based Androids: don't try to unpremultiply dstColor in-place; put it in a temporary.
...
TBR=bsalomon
Review URL: https://codereview.chromium.org/16214002
git-svn-id: http://skia.googlecode.com/svn/trunk@9336 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 23:41:28 +00:00
bsalomon@google.com
137f1347ab
Replace GrDrawState::AutoDeviceCoordDraw with GrDrawState::AutoViewMatrixRestore::setIdentity(). s
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/15780002
git-svn-id: http://skia.googlecode.com/svn/trunk@9331 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 21:27:53 +00:00
senorblanco@chromium.org
9a6eb0e1e8
Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff().
...
Doing it this way required modifying the arithmode GM to use saveLayer()/restore() rather than creating an offscreen SkBitmap, since otherwise the compositing is always done in raster mode. Fixing that in turn exposed that SkArithmeticMode did not work in Picture mode, since it wasn't flattenable. Made it so.
Note: this will require rebaselining the arithmode GM (again).
R=bsalomon@google.com , reed@google.com
Originally committed: https://code.google.com/p/skia/source/detail?r=9324
Reverted: https://code.google.com/p/skia/source/detail?r=9325
Review URL: https://codereview.chromium.org/16064002
git-svn-id: http://skia.googlecode.com/svn/trunk@9330 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 20:55:09 +00:00
junov@chromium.org
ed8d6bb2be
Moving updateClipConservativelyUsingBounds into SkCanvas
...
This method is being moved from SkPictureRecord to become a protected member of SkCanvas so that other classes derived from SkCanvas can use it.
This Patch also applies the fix provided by updateClipConservativelyUsingBounds to SkPictureUtils::GatherPixelRefs
BUG=https://code.google.com/p/chromium/issues/detail?id=244893
Review URL: https://codereview.chromium.org/15894005
git-svn-id: http://skia.googlecode.com/svn/trunk@9326 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 19:09:48 +00:00
senorblanco@chromium.org
06e7424c70
Revert "Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff()."
...
This reverts commit b8ffe17b5c684f9cfff02285f27e6aa1f75c9b53.
TBR=robertphillips
Review URL: https://codereview.chromium.org/16115007
git-svn-id: http://skia.googlecode.com/svn/trunk@9325 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 19:05:54 +00:00
senorblanco@chromium.org
6b6c1dc34c
Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff().
...
Doing it this way required modifying the arithmode GM to use saveLayer()/restore() rather than creating an offscreen SkBitmap, since otherwise the compositing is always done in raster mode. Fixing that in turn exposed that SkArithmeticMode did not work in Picture mode, since it wasn't flattenable. Made it so.
Note: this will require rebaselining the arithmode GM (again).
R=bsalomon@google.com , reed@google.com
Review URL: https://codereview.chromium.org/16064002
git-svn-id: http://skia.googlecode.com/svn/trunk@9324 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 18:50:46 +00:00
scroggo@google.com
7ed0447762
Use updated signature for decode in empty decoder.
...
This allows chromium to build SkImageDecoder_empty.cpp
(https://codereview.chromium.org/15960015/ ) until Skia
has https://codereview.chromium.org/15806010/ (which
is a superset of this change).
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/15742029
git-svn-id: http://skia.googlecode.com/svn/trunk@9321 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 17:36:43 +00:00
reed@google.com
b74706f033
use integer math instead of float per-pixel. about a 2x speedup. not tested well, so this is just experimental.
...
BUG=
Review URL: https://codereview.chromium.org/15715015
git-svn-id: http://skia.googlecode.com/svn/trunk@9317 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 16:31:41 +00:00
bungeman@google.com
6cab1a4b6a
Change SkStream.
...
https://codereview.chromium.org/15298009/
git-svn-id: http://skia.googlecode.com/svn/trunk@9312 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 13:43:31 +00:00
robertphillips@google.com
0a4805e33f
First pass at Comment API
...
https://codereview.chromium.org/13957009/
git-svn-id: http://skia.googlecode.com/svn/trunk@9310 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 13:24:23 +00:00
bsalomon@google.com
960d114777
Get correct GLVersion for Mesa to avoid GrContext creation failure
...
Path originally written by yunchao.he@intel.com
Review URL: https://codereview.chromium.org/15779009/
git-svn-id: http://skia.googlecode.com/svn/trunk@9309 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 13:11:54 +00:00
senorblanco@chromium.org
35c733cc9c
Fix alpha computation in SkArithmeticMode.
...
Note: this will require new baselines for the arithmode GM.
R=reed@google.com
Review URL: https://codereview.chromium.org/15917010
git-svn-id: http://skia.googlecode.com/svn/trunk@9302 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 19:43:05 +00:00
junov@chromium.org
435401d386
Build fix
...
TBR=reed
git-svn-id: http://skia.googlecode.com/svn/trunk@9299 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 18:17:23 +00:00
junov@chromium.org
66070a527c
Changing SkDeferredCanvas to use factories for creation
...
The objective of this change is to remove all calls to
SkCanvas::setDevice. The factory API is hidden behind
a build flag in order to ease the roll into chromium.
A side-effect of the factory pattern is that it will
no longer be possible to allocate a SkDeferredCanvas on
the stack. This changes nothing for chrome, but it
impacts skia test programs.
Review URL: https://codereview.chromium.org/16040002
git-svn-id: http://skia.googlecode.com/svn/trunk@9298 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 17:39:08 +00:00
commit-bot@chromium.org
bb6a3178c3
Make GrContext track the current matrix, render target, and clip directly rather than using GrDrawState.
...
R=robertphillips@google.com , jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/15821008
git-svn-id: http://skia.googlecode.com/svn/trunk@9297 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 17:25:49 +00:00
scroggo@google.com
ccd7afb6fb
Reland 'Add path utils, plus a test for it.'
...
Build SkPathJoin and SkBasename on windows also.
Previous CL did not build on Windows because the two functions were
accidentally placed inside an ifdef that did not include windows.
Move the functions to the top of the file, and add a comment by the
endif for clarity.
Previously reviewed at https://codereview.chromium.org/15747004/
Review URL: https://codereview.chromium.org/15740024
git-svn-id: http://skia.googlecode.com/svn/trunk@9295 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 16:45:07 +00:00
robertphillips@google.com
908aed8025
Decrease GPU drawn brightness for < 1 pixel wide/high rects
...
https://codereview.chromium.org/15715012/
git-svn-id: http://skia.googlecode.com/svn/trunk@9288 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 13:16:20 +00:00
commit-bot@chromium.org
c7d624ec53
check texture is not NULL to aovid segmentation fault. If the texture created by GrLockAndRefCachedBitmapTexture() is NULL, ColorTableEffect::Create will cause segmentation fault by GrAssert in src/gpu/GrTextureAccess.cpp. The simple patch checked texture to avoid segment fault, and returned a NULL effect to the caller. The caller will handle NULL effect, for example, it will set default effect.
...
R=bsalomon@google.com , robertphillips@google.com
Author: yunchao.he@intel.com
Review URL: https://chromiumcodereview.appspot.com/15824003
git-svn-id: http://skia.googlecode.com/svn/trunk@9287 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 13:13:56 +00:00
djsollen@google.com
40078cb49e
Android specific changes that are upstreamed from the android framework.
...
R=reed@google.com
Review URL: https://codereview.chromium.org/15720006
git-svn-id: http://skia.googlecode.com/svn/trunk@9283 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 20:31:57 +00:00
commit-bot@chromium.org
5d1d79a1f9
fix slowness of getImageData() for CanvasRenderingContext2D in linux due to un-optimized format for glReadPixels
...
This is a continuation of https://codereview.chromium.org/15331003/
BUG=242093
R=robertphillips@google.com , jun.a.jiang@intel.com , bsalomon@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/15746007
git-svn-id: http://skia.googlecode.com/svn/trunk@9280 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 18:52:52 +00:00
commit-bot@chromium.org
912e68ec46
Fix degenerate and near-degenerate hairlines on the gpu
...
R=robertphillips@google.com , bsalomon@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/16035002
git-svn-id: http://skia.googlecode.com/svn/trunk@9279 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 18:51:55 +00:00
scroggo@google.com
dbbcaa8983
Revert "Add path utils, plus a test for it."
...
This reverts commit d172374b46cae0bd5d7c024b9848f5bdafcc6a16.
This CL broke on Windows.
Review URL: https://codereview.chromium.org/15986004
git-svn-id: http://skia.googlecode.com/svn/trunk@9278 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 18:28:57 +00:00
scroggo@google.com
1bee037044
Add path utils, plus a test for it.
...
SkOSFile:
Added class SkOSPath with functions for
modifying strings representing path names.
OSPathTest.cpp:
Test of the new utilities.
factory.cpp:
Use SkPathJoin.
gmmain and gm_expectations:
Use SkOSPath::SkPathJoin instead of a local version.
skimage_main.cpp:
Use the new location of SkPathJoin and SkBasename.
R=epoger@google.com
Review URL: https://codereview.chromium.org/15747004
git-svn-id: http://skia.googlecode.com/svn/trunk@9277 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 18:12:17 +00:00
junov@chromium.org
7070f76b90
Adding setSurface public API method to SkDeferredCanvas
...
The purpose of this change is to provide an API that Blink 2D canvas layers can use
to install a new render target when recovering from a lost graphics context.
Review URL: https://codereview.chromium.org/15896005
git-svn-id: http://skia.googlecode.com/svn/trunk@9276 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 17:13:00 +00:00
scroggo@google.com
24287c15d6
Revert "Patch to prevent chromium breakage until the DEPS."
...
This reverts commit d2a284728d30082d46b02c39d916294c6d36e11f.
Review URL: https://codereview.chromium.org/16019005
git-svn-id: http://skia.googlecode.com/svn/trunk@9275 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 16:31:30 +00:00
senorblanco@chromium.org
68400767be
Remove SkImageFilter::getInputResult(), since its return value is not
...
style-compliant, and doesn't allow us to abort on failure.
R=reed@google.com
Committed: https://code.google.com/p/skia/source/detail?r=9245
Review URL: https://codereview.chromium.org/15600003
git-svn-id: http://skia.googlecode.com/svn/trunk@9274 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 15:04:07 +00:00
reed@google.com
3d3a860d0b
Add flag to gradients to interpolate colors in premul space. Experimental API to encapsulate the shared parameters for all gradients into a struct.
...
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/15893002
git-svn-id: http://skia.googlecode.com/svn/trunk@9273 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 14:58:44 +00:00
commit-bot@chromium.org
8b79028d27
Move SkDrawLooper implementation to its own file.
...
It previously lived in SkPaint.cpp.
BUG=
R=reed@google.com , tomhudson@chromium.org , jbroman@chromium.org
Author: jbroman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/15896004
git-svn-id: http://skia.googlecode.com/svn/trunk@9272 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 14:57:53 +00:00
epoger@google.com
d4993ff360
GM: create GmResultDigest that encapsulates digest type ("bitmap-64bitMD5") and value (12345)
...
R=scroggo@google.com
Review URL: https://codereview.chromium.org/15883004
git-svn-id: http://skia.googlecode.com/svn/trunk@9271 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 14:33:28 +00:00
skia.committer@gmail.com
3e2345a8d5
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9266 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 07:01:26 +00:00
reed@google.com
932105ae4b
don't reference missing header
...
BUG=
Review URL: https://codereview.chromium.org/15888004
git-svn-id: http://skia.googlecode.com/svn/trunk@9265 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-23 20:16:17 +00:00
reed@google.com
4c69a064b4
clone of https://codereview.chromium.org/15316014/ with teaks
...
BUG=
Review URL: https://codereview.chromium.org/15904005
git-svn-id: http://skia.googlecode.com/svn/trunk@9264 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-23 20:11:56 +00:00
reed@google.com
03ca64b832
don't overclamp cubics (see skbug.com/1316)
...
BUG=
Review URL: https://codereview.chromium.org/15924003
git-svn-id: http://skia.googlecode.com/svn/trunk@9262 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-23 19:39:15 +00:00
reed@google.com
437d6eb4e0
use Descriptor struct to encapsulate all the common paramaeters between our various gradient types. If we like it, might promote it to the public API.
...
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/15733007
git-svn-id: http://skia.googlecode.com/svn/trunk@9260 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-23 19:03:05 +00:00