Commit Graph

1449 Commits

Author SHA1 Message Date
vandebo@chromium.org
25adce81ce [PDF] Add support for Clear, Src, Dst, DstOver xfermodes.
This uses the refactoring in http://codereview.appspot.com/4459041/ to add support for additional xfer modes.  Calling setupContentEntry may affect previous content entries (removing, reordering, or modifying their clip) and indicates to the caller if it should draw the new item or not.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@1271 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 08:05:01 +00:00
vandebo@chromium.org
a0c7edbb08 [PDF] Fix setting of existing clip for layers.
The current approach of setting the existing clip just before drawing a layer into a device doesn't work.  SkDevice::clear() uses existing clip before that and if we need to put the content in a transparency group (i.e. for SrcIn xfermode), we need a valid existing clip.  Instead, change the factory to use a special constructor when creating a layer device.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@1270 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 07:58:08 +00:00
vandebo@chromium.org
9fbdf87518 [PDF] Refactor content stream creation in SkPDFDevice to support more xfermodes.
Instead of writing all drawing and state updates into the final content stream immediately, this change creates a new ContentEntry each time the transform, clip, or paint changes.  Drawing is done into a stream in the ContentEntry.  When the consumer asks for the content, we combine all the ContentEntries with appropriate updates to the state (clip, transform, paint) in between.  This allows us to modify the clip even after a drawing has completed.  It also lets us remove ContentEntries with no drawing.  Further optimization can be done to better use the stack features of PDF, for now we follow the previous model of having a single clip followed by a single transform on the graphic state stack.

Push rectangle logic into SkPDFUtil::AppendRectangle.
Change private functions to adhere to coding standards.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@1269 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 07:55:58 +00:00
reed@google.com
7744c205f2 use SkPoint, creating an alias for GrPoint
http://codereview.appspot.com/4498041/



git-svn-id: http://skia.googlecode.com/svn/trunk@1268 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 19:26:26 +00:00
reed@google.com
2e550127e6 share macros and types with SkScalar, but keep aliases for now, to avoid editing
call sites.



git-svn-id: http://skia.googlecode.com/svn/trunk@1267 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 17:30:45 +00:00
bsalomon@google.com
fc29629525 Replace GrStringBuilder with SkString. First step in cleaning up the shader generator. Slight performance hit when creating a new shader (<10% of total shader gen time on my Windows box is spent in building our string before handing it to GL). Much of this can be recovered by better usage pattern of SkString in coming revisions.
Review URL: http://codereview.appspot.com/4465053/ 



git-svn-id: http://skia.googlecode.com/svn/trunk@1266 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 13:53:47 +00:00
bsalomon@google.com
0292935cd4 remove unused var, fixes warning
git-svn-id: http://skia.googlecode.com/svn/trunk@1265 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 13:12:38 +00:00
bsalomon@google.com
0aa6c3e212 Tab -> spaces
git-svn-id: http://skia.googlecode.com/svn/trunk@1264 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 13:02:10 +00:00
reed@google.com
185d3d016d add SkScalarIsInt()
git-svn-id: http://skia.googlecode.com/svn/trunk@1262 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 12:18:08 +00:00
reed@google.com
96a9f791f2 Fix some fixed-width CJK
http://code.google.com/p/skia/issues/detail?id=222



git-svn-id: http://skia.googlecode.com/svn/trunk@1261 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 11:49:30 +00:00
reed@google.com
9ac5e228c6 add
git-svn-id: http://skia.googlecode.com/svn/trunk@1260 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 20:05:10 +00:00
reed@google.com
a571c99228 don't require a ptr unless size > 0
git-svn-id: http://skia.googlecode.com/svn/trunk@1259 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 20:04:44 +00:00
bsalomon@google.com
205ddd7452 Disable MSAA in SkOsWindow on mac and windows
git-svn-id: http://skia.googlecode.com/svn/trunk@1258 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 15:39:15 +00:00
reed@google.com
bb6793bd77 update
git-svn-id: http://skia.googlecode.com/svn/trunk@1257 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 15:18:15 +00:00
reed@google.com
f7398c3ab6 correctly compute coverage when an antialiased rect covers only 1 column of pixels
git-svn-id: http://skia.googlecode.com/svn/trunk@1256 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 14:24:47 +00:00
reed@google.com
70b6125ed2 inherit from SampleView
git-svn-id: http://skia.googlecode.com/svn/trunk@1255 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 14:12:36 +00:00
reed@google.com
cbbc21c4bb update for glshaders-not-2
git-svn-id: http://skia.googlecode.com/svn/trunk@1254 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 14:10:16 +00:00
reed@google.com
4aebe4fb10 disable experimental TEST_GPIPE
git-svn-id: http://skia.googlecode.com/svn/trunk@1253 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 14:07:35 +00:00
reed@google.com
961ddb04a0 update to SampleView
git-svn-id: http://skia.googlecode.com/svn/trunk@1252 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 14:03:48 +00:00
bsalomon@google.com
2ba4abbb31 Switch to GrGpuGLShaders (instead of GrGpuGLShaders2).
git-svn-id: http://skia.googlecode.com/svn/trunk@1251 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 12:39:20 +00:00
bsalomon@google.com
6aef1fb4eb Add 4x4 downsample filter with 4 bilinear texture reads, use for ssaa.
Review URL: http://codereview.appspot.com/4483042/

git-svn-id: http://skia.googlecode.com/svn/trunk@1250 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 12:33:22 +00:00
mike@reedtribe.org
5fd9243fd6 switch to inheriting from SampleView
git-svn-id: http://skia.googlecode.com/svn/trunk@1249 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 01:59:48 +00:00
bsalomon@google.com
f871268f56 Remove GrPrintf_printf from gyp (should be using GrPrintf_skia that is already included in the skgr lib to direct GrPrintf to SkDebugf).
git-svn-id: http://skia.googlecode.com/svn/trunk@1248 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 20:18:04 +00:00
senorblanco@chromium.org
99c2a8b362 SampleApp builds skia on Linux with BGRA pixel order, but Ganesh's SampleApp
assumes GL_RGBA texture format on all platforms except Windows (where it uses
GL_BGRA), so texture colours come out wrong.  As a temporary fix, do on Linux
what we do on Windows, and assume GL_BGRA.  (This should be made more general
later, and the assumption of matching formats between Skia and Ganesh removed.)

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1247 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 20:12:01 +00:00
senorblanco@chromium.org
c1587e0f45 Fix SampleApp raster path on Linux to use SK_SAMPLES_FOR_X, so pixel components
are in the right order (RGBA vs BGRA).

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1246 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 18:59:38 +00:00
reed@google.com
f5842f773b add typeface flattening
git-svn-id: http://skia.googlecode.com/svn/trunk@1245 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 18:30:04 +00:00
reed@google.com
8a6400ef3e implement (sort of) Serialize/Deserialize
git-svn-id: http://skia.googlecode.com/svn/trunk@1244 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 18:03:45 +00:00
reed@google.com
8d90eeba09 add find()
git-svn-id: http://skia.googlecode.com/svn/trunk@1243 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 18:03:00 +00:00
senorblanco@chromium.org
2dbd0449bf Minor fixes to get SampleApp's OpenGL path not to crash on Linux. Initialize
SkOSWindow::fGLAttched (and fVi while we're at it), since it was being checked
uninitialized.  Don't call has_gl_extension() while initializing the
GrGLDefaultInterface, since it derefs the default interface (which is still
NULL); use has_gl_extension_from_string() instead.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1242 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 15:29:04 +00:00
bsalomon@google.com
4b9b6a20d4 Fix validation (glTexEnvi is fixed pipe only)
git-svn-id: http://skia.googlecode.com/svn/trunk@1241 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 15:01:16 +00:00
reed@google.com
c92545145d fix precendence error (== binds tighter than &)
add new samples to solution



git-svn-id: http://skia.googlecode.com/svn/trunk@1240 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 14:43:40 +00:00
reed@google.com
7a253379e7 new samples
git-svn-id: http://skia.googlecode.com/svn/trunk@1239 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 14:34:56 +00:00
reed@google.com
64e3eb24e5 update pipe test
git-svn-id: http://skia.googlecode.com/svn/trunk@1238 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 14:32:04 +00:00
reed@google.com
17fb387a56 add debugging test for building SkDescriptor
update some samples



git-svn-id: http://skia.googlecode.com/svn/trunk@1237 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 14:31:07 +00:00
scroggo
2fcdbec6ff Make the unix test app build.
There are two ways to build it, using the gyp files,
or using its own makefile.  A recent update of a
sample made it no longer build using its own makefile.
Make it build once again.


git-svn-id: http://skia.googlecode.com/svn/trunk@1236 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 14:16:36 +00:00
reed@google.com
3048d4fd4e remove deprecated getViewport/setViewport
git-svn-id: http://skia.googlecode.com/svn/trunk@1235 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 13:50:34 +00:00
bsalomon@google.com
bf2a46941e Add all ES2 glUniform functions to GrGLInterface. Add interface validation for fixed pipe or shader pipe use.
Review URL: http://codereview.appspot.com/4435082/



git-svn-id: http://skia.googlecode.com/svn/trunk@1234 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 12:35:39 +00:00
mike@reedtribe.org
68ac0dfce2 code style
git-svn-id: http://skia.googlecode.com/svn/trunk@1233 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 00:20:09 +00:00
reed@google.com
75595d9392 update
git-svn-id: http://skia.googlecode.com/svn/trunk@1232 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 21:27:49 +00:00
reed@google.com
acd471f47c updated pipe
git-svn-id: http://skia.googlecode.com/svn/trunk@1231 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 21:26:46 +00:00
vandebo@chromium.org
1e1c36f4f8 Add comparison and assignment to SkClipStack (and fix an optimization bug).
Review URL: http://codereview.appspot.com/4423085

git-svn-id: http://skia.googlecode.com/svn/trunk@1230 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 16:26:09 +00:00
reed@google.com
7894b92b57 code style
git-svn-id: http://skia.googlecode.com/svn/trunk@1229 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 15:41:49 +00:00
vandebo@chromium.org
db8b51c5b6 Fix arm compile problem on Lucid.
Patch from Jeff Bailey <jeffbailey@google.com>

These functions on ARM both are doing something weird where, when
optimization is not enable, there aren't enough low registers available for
the compiler to handle the asm.

My ARM-fu is pretty weak, so I have forced the functions to -O1, which
allows them to compile.  It would be reasonable to set them to O2 as I
expect anyone debugging this will just tweak it as appropriate.

The error that this is solving:

third_party/skia/src/opts/SkBitmapProcState_opts_arm.cpp: In function 'void
SI8_D16_nofilter_DX_arm(const SkBitmapProcState&, const uint32_t*, int,
uint16_t*)':
third_party/skia/src/opts/SkBitmapProcState_opts_arm.cpp:101:24: error:
can't find a register in class 'LO_REGS' while reloading 'asm'
third_party/skia/src/opts/SkBitmapProcState_opts_arm.cpp:101:24: error:
'asm' operand has impossible constraints

However, it has to be set on both functions, as after the first error is
cleared, it triggers a second time.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@1228 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 02:23:11 +00:00
bsalomon@google.com
05ef510389 Remove GrContext.h dependence on GrGpu.h
Review URL:  http://codereview.appspot.com/4433096/



git-svn-id: http://skia.googlecode.com/svn/trunk@1227 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 21:14:59 +00:00
reed@google.com
d9fec6114f never support bw
git-svn-id: http://skia.googlecode.com/svn/trunk@1226 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 20:53:45 +00:00
bsalomon@google.com
2b3579958d update gyp file to build new files
git-svn-id: http://skia.googlecode.com/svn/trunk@1225 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 20:46:48 +00:00
reed@google.com
59d2f63583 fix signed shift in blend32
use typefacecache in fonthost_win



git-svn-id: http://skia.googlecode.com/svn/trunk@1224 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 19:36:59 +00:00
reed@google.com
baf7a07311 add win-specific backend to SkDebugf
git-svn-id: http://skia.googlecode.com/svn/trunk@1223 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 19:11:37 +00:00
reed@google.com
68f456d568 fix compile
git-svn-id: http://skia.googlecode.com/svn/trunk@1222 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 18:55:39 +00:00
reed@google.com
e495905246 disable lifecycle dumps
git-svn-id: http://skia.googlecode.com/svn/trunk@1221 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 17:35:04 +00:00