Commit Graph

4220 Commits

Author SHA1 Message Date
junov@chromium.org
426aebc850 Adding new steps to Canvas unit test to validate that the deferred
canvas state coherence test case passes with sequences of draw commands
that trigger flushes and purges of deferred draw commands.

This CL confirms that using SkGPipe fixes the deferred canvas issues that are 
the root problem of crbug.com/133432

BUG=https://code.google.com/p/chromium/issues/detail?id=133432
Review URL: https://codereview.appspot.com/6416049

git-svn-id: http://skia.googlecode.com/svn/trunk@4687 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 13:21:58 +00:00
reed@google.com
73c48f1713 removing trailing ',' on last entry in enum, to fix warning
git-svn-id: http://skia.googlecode.com/svn/trunk@4686 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:35:40 +00:00
reed@google.com
005832439e #include "SkTemplates.h"
git-svn-id: http://skia.googlecode.com/svn/trunk@4685 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:34:36 +00:00
reed@google.com
ca0062ee5e add SkPaint::getPosTextPath(), with gm to test it
Review URL: https://codereview.appspot.com/6427055

git-svn-id: http://skia.googlecode.com/svn/trunk@4684 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:20:32 +00:00
twiz@google.com
4df7a16f0a Addition of new-lines at end of files to correct Chromium builds.
Review URL: https://codereview.appspot.com/6423061

git-svn-id: http://skia.googlecode.com/svn/trunk@4683 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 22:09:19 +00:00
junov@chromium.org
6a0d010e2d Fixing heap corruption issue in deferred canvas when using SkGPipe.
Swapping the declaration order of fPipeController and fPipeWriter to
make sure that the writer is destroyed first before the controller.
Review URL: https://codereview.appspot.com/6427054

git-svn-id: http://skia.googlecode.com/svn/trunk@4682 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 21:00:07 +00:00
rileya@google.com
585d9b1912 Rebaseline after enabling bilinear filtering for gpu linear gradients.
git-svn-id: http://skia.googlecode.com/svn/trunk@4681 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 20:51:32 +00:00
rileya@google.com
5ce42ca157 Make GPU linear gradients do bilinear filtering.
This will require GM (and webkit) rebaselines.
Review URL: https://codereview.appspot.com/6431048

git-svn-id: http://skia.googlecode.com/svn/trunk@4680 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 19:42:10 +00:00
tomhudson@google.com
aa72eab5d8 Create GL implementation for GrSingleTextureEffect, use it instead of GrPaint::setTexture()
or GrDrawState::setTexture() in GrContext.cpp

http://codereview.appspot.com/6399053/



git-svn-id: http://skia.googlecode.com/svn/trunk@4677 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 18:01:07 +00:00
epoger@google.com
3af4ff46a7 skdiff output: indicate which result types would cause failure
Review URL: https://codereview.appspot.com/6419053

git-svn-id: http://skia.googlecode.com/svn/trunk@4676 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 17:35:04 +00:00
rileya@google.com
ceaa5beb66 Rebaseline for slight changes in linear gradient behavior.
git-svn-id: http://skia.googlecode.com/svn/trunk@4675 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 17:31:34 +00:00
rileya@google.com
22e57f9916 New subclasses for both Gr and GrGL gradient effect classes.
This replaces GrSingleTextureEffect as the base for gradient effects (so we'll be able to do gradient effects without textures), and adds a base class to the GL gradient custom stage implementations (which will soon handle generating the appropriate code to pass colors in and lerp instead of using a cached texture for simpler gradient cases).

Also added a custom stage for linear gradients.
Review URL: https://codereview.appspot.com/6426049

git-svn-id: http://skia.googlecode.com/svn/trunk@4674 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 15:16:19 +00:00
borenet@google.com
d4cf366473 Rebaseline Xoom
Review URL: https://codereview.appspot.com/6416048

git-svn-id: http://skia.googlecode.com/svn/trunk@4672 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 14:57:19 +00:00
borenet@google.com
04bad500d4 Temporarily remove giantbitmap gpu GM baselines on Xoom
These are drawing black boxes.
Review URL: https://codereview.appspot.com/6423055

git-svn-id: http://skia.googlecode.com/svn/trunk@4671 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 14:12:24 +00:00
borenet@google.com
627ac0bb09 Rebaseline Nexus S images
These haven't been updated in a long time.
Review URL: https://codereview.appspot.com/6428051

git-svn-id: http://skia.googlecode.com/svn/trunk@4670 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 14:10:17 +00:00
chudy@google.com
ea79aba75b Fixed glaring typo in SkDebuggerGUI.cpp, unreviewed.
BUG=
TEST=

Review URL: https://codereview.appspot.com/6423052

git-svn-id: http://skia.googlecode.com/svn/trunk@4669 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 13:48:14 +00:00
chudy@google.com
d3058f5fd8 Quick bug fix that was rendering debugger unusable.
Review URL: https://codereview.appspot.com/6422050

git-svn-id: http://skia.googlecode.com/svn/trunk@4668 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 13:41:27 +00:00
borenet@google.com
3da2a0d315 Temporarily remove giantbitmap gpu GMs on Nexus S
These are just drawing a black box.
Review URL: https://codereview.appspot.com/6419051

git-svn-id: http://skia.googlecode.com/svn/trunk@4667 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 13:25:27 +00:00
borenet@google.com
71c0464f00 Temporarily remove GMs failing on Nexus S
These are failing as of r4663
Review URL: https://codereview.appspot.com/6428049

git-svn-id: http://skia.googlecode.com/svn/trunk@4666 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 13:08:33 +00:00
junov@chromium.org
cff01c5b60 Improving CanvasTest to verify that the destination canvas of an SkDeferredCanvas has the same state as a plain SkCanvas that received the same draw commands.
This new test code shows that the SkGPipe port of SkDeferredCanvas solves problems we were having with SkPicture.
Review URL: https://codereview.appspot.com/6425048

git-svn-id: http://skia.googlecode.com/svn/trunk@4665 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:50:26 +00:00
rileya@google.com
24f3ad1bbb Move texture lock/unlock functions from SkGpuDevice into SkGr as global functions, also removed inconsistent "SkGr" class.
Review URL: https://codereview.appspot.com/6420048

git-svn-id: http://skia.googlecode.com/svn/trunk@4664 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:47:40 +00:00
twiz@google.com
5807116946 This CL implements the Ganesh path for the SkTable_ColorFilter color transformation.
A new texture stage dedicated to color transforms has been added, along with the new custom stage implementing the LUT.
Review URL: https://codereview.appspot.com/6351081

git-svn-id: http://skia.googlecode.com/svn/trunk@4663 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:41:50 +00:00
borenet@google.com
855cd7aa5e Update download_baselines.py
No longer using *-fixed
Added Android
Review URL: https://codereview.appspot.com/6428047

git-svn-id: http://skia.googlecode.com/svn/trunk@4662 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:23:40 +00:00
junov@chromium.org
fbe9c8fbb8 Adding virtual overload of isDrawingToLayer() to SkGPipe
This change is to make The SkGPipe port of SkDeferredCanvas pass the CanvasTest unit test
Review URL: https://codereview.appspot.com/6426046

git-svn-id: http://skia.googlecode.com/svn/trunk@4661 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 20:22:52 +00:00
senorblanco@chromium.org
1e95d715d0 Clean up the use of AutoScratchTexture in the gaussian blur and morphology
filters.  Instead of passing in AutoScratchTextures for temporaries, we allocate
them inside the function and detach() after rendering.  Since the functions now
return a ref()'ed texture, we no longer ref() the result in filter_texture().

Also, the imageblur gm was passing a paint with an image filter both to
saveLayer()/restore(), and to every text draw call.  Back when only restore()
was applying filters, this was fine, but since we're now applying filters on all
draw calls, this means we're double-blurring in this GM.

I've reverted the Mac baselines for the imageblur GM to their previous versions;
hopefully this will be correct.



git-svn-id: http://skia.googlecode.com/svn/trunk@4659 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 19:52:53 +00:00
vandebo@chromium.org
7f1ffa6b42 Add SK_API for SkData. Needed for https://bugs.webkit.org/show_bug.cgi?id=91171
Review URL: https://codereview.appspot.com/6420047

git-svn-id: http://skia.googlecode.com/svn/trunk@4658 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 18:53:28 +00:00
bsalomon@google.com
f2f8fc3726 Fix grdrawstate == test when left side has disabled stage and right side does not
Review URL: http://codereview.appspot.com/6427044/



git-svn-id: http://skia.googlecode.com/svn/trunk@4657 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 18:25:07 +00:00
junov@chromium.org
77eec248cb Refactoring SkDeferredCanvas to use SkGPipe.
Keeping the refactor hidden behind a config macro for now.

TEST=covered by existing skia gm tests
BUG=https://code.google.com/p/chromium/issues/detail?id=133432
Review URL: https://codereview.appspot.com/6405054

git-svn-id: http://skia.googlecode.com/svn/trunk@4656 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 17:54:45 +00:00
epoger@google.com
9d250762cb whitespace change to trigger Skia buildbots after master update/restart
git-svn-id: http://skia.googlecode.com/svn/trunk@4654 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 15:13:30 +00:00
borenet@google.com
7ef392940d Enable Compile Option to Build Android Executables
Since we can't debug APKs on 4.1, we sometimes need to
build Skia the old way for Android.  This CL enables
a switch to do so.
Review URL: https://codereview.appspot.com/6408053

git-svn-id: http://skia.googlecode.com/svn/trunk@4653 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 14:59:54 +00:00
reed@google.com
d074c3709a Need to apply matrix to advance in generateAdvance (as we already were in generateMetrics)
Fixes b/6833339
Expand existing unittest to detect this (we needed to set both scale and skew on the paint)



git-svn-id: http://skia.googlecode.com/svn/trunk@4647 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 13:45:58 +00:00
bsalomon@google.com
ecb60aad5c Factory method for creating GrGLProgram
Review URL: http://codereview.appspot.com/6407049/



git-svn-id: http://skia.googlecode.com/svn/trunk@4646 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 13:20:29 +00:00
robertphillips@google.com
5836b6dec5 Add skipToLast method to SkClipStack
http://codereview.appspot.com/6411043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4644 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 12:06:15 +00:00
alokp@chromium.org
f7751ae229 Exported SkFILEWStream class so that it can be used in Chrome.
Review URL: https://codereview.appspot.com/6409052

git-svn-id: http://skia.googlecode.com/svn/trunk@4643 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 19:10:36 +00:00
tomhudson@google.com
57143a2d87 Fix build breakage in r4641.
Unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@4642 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 19:07:35 +00:00
tomhudson@google.com
2f68e7684b Move texture domains onto a GrCustomStage, off of GrSamplerState.
This will require gyp changes to roll into Chrome.

http://codereview.appspot.com/6405050/



git-svn-id: http://skia.googlecode.com/svn/trunk@4641 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 18:43:21 +00:00
rmistry@google.com
a8a977a97b Update docs and trunk dirs if they exist overriding any local merge conflicts.
Created to fix bug http://code.google.com/p/skia/issues/detail?id=710 :
housekeeping buildbot: conflict in UpdateDoxygen step.

git-svn-id: http://skia.googlecode.com/svn/trunk@4640 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 18:27:03 +00:00
scroggo@google.com
4dffc596aa Use SkFlatDictionary in SkGPipe to take advantage of its new features.
Add a controller class to perform the allocation/unallocation for the dictionary and to provide an entry to be replaced, if replacements are allowed.

TODO:
Use LRU caching in my custom controller so replacements will be done less often.
More refactoring on SkFlatDictionary so picture recording's use of the dictionary does not require going through the path to replace.

Review URL: https://codereview.appspot.com/6345102

git-svn-id: http://skia.googlecode.com/svn/trunk@4639 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 16:49:40 +00:00
scroggo@google.com
284bf502c0 Purge bitmaps from SkGPipe's shared heap.
BitmapInfo:
Now in SkGPipePriv so it can be accessed by SkGPipeRead.

Add the ability to essentially ref count BitmapInfos so that they can
be purged to make room in the shared heap for a new one.

SkGPipeWrite:
Purge the least recently used bitmap if it has already been drawn by
all readers.

SkGPipeRead:
Read the BitmapInfo (instead of the SkBitmap) and decrement its count
after drawing.

SkGPipeController:
Added a method to tell how many readers will be used, so that when
purging bitmaps each reader can be accounted for.

Review URL: https://codereview.appspot.com/6374065

git-svn-id: http://skia.googlecode.com/svn/trunk@4638 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 16:10:34 +00:00
chudy@google.com
7e4cfbf144 Added more features to deletes and breakpoints
Review URL: https://codereview.appspot.com/6406050

git-svn-id: http://skia.googlecode.com/svn/trunk@4637 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 15:40:51 +00:00
robertphillips@google.com
2a021292f5 Fixed simpleaaclip gm - it wasn't showing xor case
http://codereview.appspot.com/6402055/

This CL will require image rebaselining



git-svn-id: http://skia.googlecode.com/svn/trunk@4636 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 15:37:15 +00:00
reed@google.com
e9fdfb545d remove Symbian (not needed) flag, and assume all CPUs *except* thumb have fast
conditional instructions.



git-svn-id: http://skia.googlecode.com/svn/trunk@4635 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 12:13:56 +00:00
robertphillips@google.com
c029062a03 Fixed two sub-optimal iterator uses
http://codereview.appspot.com/6409048/



git-svn-id: http://skia.googlecode.com/svn/trunk@4633 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 21:20:03 +00:00
keyar@chromium.org
21e3ed2e9a bench_pictures now has an option for benchmarking record time.
Review URL: https://codereview.appspot.com/6350102

git-svn-id: http://skia.googlecode.com/svn/trunk@4632 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 19:20:14 +00:00
robertphillips@google.com
52cb2c7cdf Extended SkDeque's reverse iteration capability to SkClipStack
http://codereview.appspot.com/6409046/



git-svn-id: http://skia.googlecode.com/svn/trunk@4631 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 18:52:29 +00:00
chudy@google.com
e504de0a50 Cleaned up icons, added keyboard shortcuts to everything
Keyboard Shortcuts and Menu reordering

Review URL: https://codereview.appspot.com/6400051

git-svn-id: http://skia.googlecode.com/svn/trunk@4630 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 18:35:23 +00:00
epoger@google.com
2865988361 skdiff: cap return value at 255 to avoid automatic 'wrapping' (%256) of return value
Review URL: https://codereview.appspot.com/6409045

git-svn-id: http://skia.googlecode.com/svn/trunk@4629 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 18:01:06 +00:00
bsalomon@google.com
33c1f6b47b Fix test break in r4627.
git-svn-id: http://skia.googlecode.com/svn/trunk@4628 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 17:54:26 +00:00
bsalomon@google.com
9ba4fa6f0f Remove GrGLProgram::CachedData, make GrGLProgram represent the program
Review URL: http://codereview.appspot.com/6409043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4627 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 17:36:28 +00:00
keyar@chromium.org
a2333d9703 Added pipe as a rendering option for render_pictures.
I will add tiling as a rendering option and then figure out a way to not have the code duplicated between render_pictures and bench_pictures.

Review URL: https://codereview.appspot.com/6392066

git-svn-id: http://skia.googlecode.com/svn/trunk@4626 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 17:29:16 +00:00