Commit Graph

4338 Commits

Author SHA1 Message Date
reed@google.com
79a1c34ee4 land https://codereview.appspot.com/6448046/
Add a method reporting used font cache size to the SkGraphics API



git-svn-id: http://skia.googlecode.com/svn/trunk@4825 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 13:08:01 +00:00
chudy@google.com
ada448040f Deserialization locks up multithreading fix.
Review URL: https://codereview.appspot.com/6448077

git-svn-id: http://skia.googlecode.com/svn/trunk@4824 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 12:59:12 +00:00
mike@reedtribe.org
70e3590552 check-point for image/surface work
git-svn-id: http://skia.googlecode.com/svn/trunk@4823 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-29 20:38:16 +00:00
chudy@google.com
38b08ce020 Added missing files to fix build.
TBR

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4822 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-28 23:26:10 +00:00
chudy@google.com
0ab03397af Skia Debugger can now save modified pictures.
Review URL: https://codereview.appspot.com/6442055

git-svn-id: http://skia.googlecode.com/svn/trunk@4821 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-28 20:16:11 +00:00
caryclark@google.com
7db7c6bba9 shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@4820 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 21:22:25 +00:00
reed@google.com
889b09edfe check-point for surface experiment
git-svn-id: http://skia.googlecode.com/svn/trunk@4819 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 21:10:42 +00:00
george@mozilla.com
2092c40a0d Add support for ARM without EDSP and ARMv6+
Original Mozilla bug: https://bugzilla.mozilla.org/show_bug.cgi?id=751814

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 21:08:01 +00:00
scroggo@google.com
3cb969f27d In SkGPipe, only serialize SkTypefaces in cross process mode.
Also make SkGPipeController ref the recording canvas to ensure that
objects used by SkGPipeCanvas (e.g. SharedHeap and fTypefaceSet, which
hold references to objects to which pointers are written to the stream)
survive to be played back even if SkGPipeWriter.endRecording() is called.

BUG=
TEST=TypefaceGM

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4817 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 20:39:19 +00:00
keyar@chromium.org
cc6e5efe03 Added an option to specify the tiling size to render_pictures.
With this change I should be able to start merging the rendering implementations of bench_pictures and render_pictures.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4816 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 20:09:26 +00:00
caryclark@google.com
27c449af06 shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@4815 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 18:26:38 +00:00
epoger@google.com
be8cefcc07 fix the build after intentional break
git-svn-id: http://skia.googlecode.com/svn/trunk@4814 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 18:15:03 +00:00
epoger@google.com
3bf5e310ea intentionally break the build to test notifications
git-svn-id: http://skia.googlecode.com/svn/trunk@4813 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 18:13:31 +00:00
reed@google.com
f6627b78f9 check-point for image experiment
git-svn-id: http://skia.googlecode.com/svn/trunk@4811 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 18:02:50 +00:00
justinlin@google.com
20a550c6ea Add virtual destructor to class with virtual functions.
BUG=
TEST=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4810 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 17:37:12 +00:00
djsollen@google.com
7dade42e6f Always store pixels of mutable bitmaps when recording a SkPicture.
Prior to this CL mutable bitmaps only saved a copy of their pixels
if a flag was set at recording time.  That flag has been removed
and the default behavior when recording a mutable bitmap is to
make a copy of it's pixels. This is the only way to ensure that
the pixels are not manipulated before we playback their contents.

However, enabling this behavior breaks the recording of extracted
bitmaps in SkPicture. This is because we currently cache bitmaps
within a picture based only on their pixelRef. This results in
false positive cache hit when drawing an extracted bitmap as it
shares a pixelRef with its orginating bitmap.  Therefore we must
update the index of the bitmap cache to be both the pixelRef AND
the size and offset of the bitmap using those pixels.

BUG=
TEST=extractbitmap.cpp

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 15:58:23 +00:00
rileya@google.com
1c6d64b78b Renamed and made public SkGradientShaderBases's 'commonAsAGradient' to 'getGradientTableBitmap', and use that instead of asABitmap in gradient custom stage setup.
Also tidied up Gr gradient implementation constructors, to take the appropriate SkGradientShaderBase subclass, and where necessary (namely 2pt radial/conical) made them obtain extra parameters from that object, rather than passing them in in addition to it.
Review URL: https://codereview.appspot.com/6449057

git-svn-id: http://skia.googlecode.com/svn/trunk@4808 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 15:49:05 +00:00
reed@google.com
bdae027bd8 rename private animator type SkImage to SkImageBitmapBase, to avoid conflicts
with new public type SkImage



git-svn-id: http://skia.googlecode.com/svn/trunk@4807 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 15:30:40 +00:00
epoger@google.com
4a6ba46b9f Update list of platforms to rebaseline
Review URL: https://codereview.appspot.com/6441061

git-svn-id: http://skia.googlecode.com/svn/trunk@4806 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 15:19:54 +00:00
rileya@google.com
d7cc651b8d Move GPU gradients into src/effects/gradients.
Review URL: https://codereview.appspot.com/6453055

git-svn-id: http://skia.googlecode.com/svn/trunk@4805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 14:00:39 +00:00
djsollen@google.com
c84b8335ee Reapply "Remove Bitmaps Raw Pixel Support."
This CL reapplies r4722. Now that we have addressed the issues
in Chrome tests that were causing asserts to be fired.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4804 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:41:44 +00:00
reed@google.com
7329dc9976 revert 4799-4801 -- red and blue are reversed on windows and linux
git-svn-id: http://skia.googlecode.com/svn/trunk@4803 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:29:59 +00:00
bsalomon@google.com
1448cf8cb6 Specialize SkAutoTUnref on const T so that operator -> works.
Review URL: http://codereview.appspot.com/6450054/




git-svn-id: http://skia.googlecode.com/svn/trunk@4802 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:27:35 +00:00
reed@google.com
e5a196f440 use SK_RESTRICT instead of __restrict__
git-svn-id: http://skia.googlecode.com/svn/trunk@4801 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:08:36 +00:00
reed@google.com
d2fd13685b use intptr_t to cast from ptr to int for masking low bits
git-svn-id: http://skia.googlecode.com/svn/trunk@4800 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:03:37 +00:00
reed@google.com
37fe484899 land http://codereview.appspot.com/6327044/
SSE optimization for 565 pixel format -- by Lei



git-svn-id: http://skia.googlecode.com/svn/trunk@4799 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 12:52:31 +00:00
robertphillips@google.com
e4d69c0e46 Added getConservativeBound helper function to GrClipData
http://codereview.appspot.com/6454054/



git-svn-id: http://skia.googlecode.com/svn/trunk@4798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 21:37:40 +00:00
rileya@google.com
99547767e9 Mac build fix after gradient restructure/renaming.
Review URL: https://codereview.appspot.com/6441057

git-svn-id: http://skia.googlecode.com/svn/trunk@4797 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 21:25:09 +00:00
robertphillips@google.com
fc91dc7004 Windows compiler complaint cleanup
http://codereview.appspot.com/6441055/



git-svn-id: http://skia.googlecode.com/svn/trunk@4796 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 21:18:31 +00:00
epoger@google.com
61bbf5d61a First stab at committing GM baselines for Shuttle_Ubuntu12_ATI5770
bsalomon looked at skdiff output and approved

git-svn-id: http://skia.googlecode.com/svn/trunk@4795 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:54:34 +00:00
chudy@google.com
a1226319b7 Key Shortcuts for Zooming. Refactored some event propogation.
Review URL: https://codereview.appspot.com/6452052

git-svn-id: http://skia.googlecode.com/svn/trunk@4794 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:26:44 +00:00
epoger@google.com
7eed139383 First stab at committing GM baselines for shuttle_win7_intel
bsalomon looked at skdiff output and approved

git-svn-id: http://skia.googlecode.com/svn/trunk@4793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:17:26 +00:00
rileya@google.com
589708bf7c Split SkGradientShader into separate files for each gradient subclass.
Review URL: https://codereview.appspot.com/6447049

git-svn-id: http://skia.googlecode.com/svn/trunk@4792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:04:23 +00:00
scroggo@google.com
15011ee5e4 Make SkDeferredCanvas query SkGPipeWriter for space allocated for bitmaps.
SkGPipe now has a method to report how much memory is used for its shared heap.

BUG=http://code.google.com/p/skia/issues/detail?id=738
TEST=DeferredCanvasTest

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4791 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:03:32 +00:00
bsalomon@google.com
1c31f63323 Remove texture/mask setters on GrPaint
Review URL: http://codereview.appspot.com/6446052/



git-svn-id: http://skia.googlecode.com/svn/trunk@4790 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:39:06 +00:00
chudy@google.com
ea5488b965 GL Widget Alpha
Review URL: https://codereview.appspot.com/6422060

git-svn-id: http://skia.googlecode.com/svn/trunk@4789 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:38:22 +00:00
robertphillips@google.com
beb1af78d0 Altered Ganesh's clip stack plumbing to pass down new GrClipData class
http://codereview.appspot.com/6454047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4788 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 18:52:16 +00:00
robertphillips@google.com
cc6493bbef Added ctor to SkClipStack and isEmpty method
http://codereview.appspot.com/6444048/



git-svn-id: http://skia.googlecode.com/svn/trunk@4787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 18:39:13 +00:00
keyar@chromium.org
451bb9f801 Changed to a class based method in passing around the rendering method for render_pictures.
This is based on a comment for https://codereview.appspot.com/6427061/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 17:27:57 +00:00
reed@google.com
9364511bd1 reject any paths that are not finite.
git-svn-id: http://skia.googlecode.com/svn/trunk@4785 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 16:11:47 +00:00
reed@google.com
0bb18bb264 explicitly track if a path is finite or not
we need this (it appears) so we can definitively reject non-finite paths
in canvas, before passing them down into the guts.
Review URL: https://codereview.appspot.com/6453047

git-svn-id: http://skia.googlecode.com/svn/trunk@4784 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 15:20:36 +00:00
borenet@google.com
904160772e Whitespace change to trigger rebuild after slave script modifications
git-svn-id: http://skia.googlecode.com/svn/trunk@4783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 15:14:57 +00:00
reed@google.com
ae57c17abe rebaseline after gpu changes
git-svn-id: http://skia.googlecode.com/svn/trunk@4781 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 14:55:46 +00:00
djsollen@google.com
56f8f338b6 Revert "Remove Bitmaps Raw Pixel Support."
BUG=
TEST=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4780 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 14:48:52 +00:00
borenet@google.com
84d6715153 Implementing Color32 functions for Neon platforms.
Besides the raw processing improvement provided by Neon, the code uses memory
preteches (pld) which seem to improve performance greatly when dealing with
very large counts.

This was tested using bench where color32 accounts for the majority of the
workload:
bench -match rects_1 -config 8888 -repeat 500 -forceBlend 1
(the forceBlend is there so that the Color32 code does not go through the
special cases where alpha == 0xFF as it would transform color32 into
a sk_memset32.

Numbers averaged over 3 runs:
bench name      | Before | Neon, no pld | Neon with pld | full boost
rrects_1        | 153.9  | 128.3        | 92            | 1.66x
rects_1_stroke_4| 32.8   | 31.4         | 28.45         | 1.15x
rects_1         | 125.35 | 97.2         | 63.59         | 1.97x

Credits: various googletv team members.

Committed on behalf of evannier.
Review URL: http://codereview.appspot.com/5569077/

git-svn-id: http://skia.googlecode.com/svn/trunk@4779 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 14:20:13 +00:00
bsalomon@google.com
eb9568a13d Fix reversed bilerp setting in GrTextContext in r4773
Review URL: http://codereview.appspot.com/6455044/


git-svn-id: http://skia.googlecode.com/svn/trunk@4778 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 14:12:23 +00:00
skyostil@google.com
0b7ad989b4 Correctly calculate remaining span length in Neon fallback blitter
In the non-Neon optimized fallback in SCALE_NOFILTER_NAME() the pixels
are first processed in groups of 4, followed by the final remaining 0-3
pixels depending on the span length.

Currently the remaining span length (0-3) pixels is incorrectly
calculated as count - count / 4. This generally causes the function to
access outside the bounds of the input and/or output bitmaps.

The correct formula is count % 4, because all the full multiples of 4
pixels have been processed and only the remainder remains.

Bug spotted by Xianzhu Wang.

TEST=None, because this part of the code isn't actually even being compiled due
to the !defined(__ARM_HAVE_NEON) guard at the top of the file. It was compiled
in by mistake in Chrome for Android, which is how this bug was spotted.
Review URL: https://codereview.appspot.com/6441050

git-svn-id: http://skia.googlecode.com/svn/trunk@4777 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 12:19:26 +00:00
bsalomon@google.com
b8670998a5 Move filter/wrap out of GrSamplerState into GrTextureParams
Review URL: http://codereview.appspot.com/6440046/




git-svn-id: http://skia.googlecode.com/svn/trunk@4773 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 21:27:09 +00:00
caryclark@google.com
cc90505674 shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@4771 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 20:59:42 +00:00
bsalomon@google.com
777c3aab0a Remove uniform names from top of GrGLProgram.cpp, builder responsible for "u" and stage num tags.
Also add LF eol-style property to some files in src/gpu/effects.

Review URL: http://codereview.appspot.com/6448049/



git-svn-id: http://skia.googlecode.com/svn/trunk@4770 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 20:58:20 +00:00