reed
37c5a815d8
Speculative revert to diagnose crash in chrome. Revert "Add SkCachedData and use it for SkMipMap"
...
This reverts commit 92561a0b99
.
crasher in question:
https://code.google.com/p/chromium/issues/detail?id=420178
Review URL: https://codereview.chromium.org/617613003
2014-10-03 13:23:31 -07:00
reed
92561a0b99
Add SkCachedData and use it for SkMipMap
...
Review URL: https://codereview.chromium.org/592843003
2014-10-02 13:47:08 -07:00
piotaixr
e4b231428e
Caching the result of readPixelsSupported
...
The call was calling GR_GL_GetIntegerv 2 times for each readPixels
and thus was causing a loss of performance
(resubmit of issue 344793008)
Benchmark url: http://packages.gkny.fr/tst/index.html
BUG=skia:2681
Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
Committed: https://skia.googlesource.com/skia/+/8339371f1ec3c57a0741932fd96bff32c53d4e54
Review URL: https://codereview.chromium.org/364193004
2014-10-02 10:57:53 -07:00
mtklein
f6fde175b8
Archive more dead code.
...
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/617003004
2014-09-30 15:22:06 -07:00
mtklein
46616af01b
Strip old backend recording down to essentials
...
Feature-wise, this removes:
1) BBH support;
2) peephole optimizations;
3) record-time text op specializations;
4) the guarantee that SkPaints are flattened.
This deletes the optimizations GM, which only exists to test the peepholes of
the old backend. SkRecord optimizations are unit tested, and if that ever fails we
can think about adding another GM like this, but they're different enough we'd
want to start from scratch anyway.
We need to keep the code that plays back the specialized text ops around for
a while for compatibility with existing .SKPs that have those ops recorded.
BUG=skia:
CQ_EXTRA_TRYBOTS=tryserver.skia:Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT-Trybot
R=robertphillips@google.com , reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/617953002
2014-09-30 14:47:10 -07:00
mtklein
1b466f7e21
Archive SkFloat
...
https://crrev.com/610153002/ reminded me that it existed, but it's entirely
unused and made moot by hardware FP. Might as well trim a few K off libskia.
BUG=skia:
R=reed@google.com , mtklein@google.com , tfarina@chromium.org
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/619563003
2014-09-30 08:08:59 -07:00
piotaixr
d49226cff3
Get rid of SkImage_Codec
...
Use SkImage_Raster with an ImageGenerator instead.
BUG=skia:2948
R=junov@chromium.org , reed@google.com , bsalomon@chromium.org
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/589713002
2014-09-19 13:30:06 -07:00
mtklein
6a5c7085bc
Add SkMiniData.
...
This is a bit like a limited SkData, geared to store really tiny byte strings.
This is not hooked up anywhere beyond the new unit test. I did experimentally
plumb it into SkRecord for drawPosTextH: just over 40% of drawPosTextH calls in
our repo can fit into ShortData.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/573323002
2014-09-17 12:21:59 -07:00
reed
85265ffebe
declare to gypi where SkDeviceProperties.h moved to
...
NOTRY=True
NOTREECHECKS=True
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/574383002
2014-09-17 10:59:24 -07:00
robertphillips
274b4ba6bd
Switch Layer Hoisting over to SkRecord backend
...
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/540543002
2014-09-04 07:24:18 -07:00
reed
011f39aeb2
rename ScaledImageCache to ResourceCache
...
BUG=skia:
R=bsalomon@google.com , mtklein@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/511283002
2014-08-28 13:35:23 -07:00
mtklein
2a65a238b0
Remove SkQuadTree.
...
We're not testing it to the same degree we do RTree and TileGrid. Any changes
we'll make to BBH APIs become 33% easier without it. If find we want it again,
we can always resurrect it.
BUG=skia:1021,skia:2834
R=robertphillips@google.com , mtklein@google.com
TBR=reed
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/500373005
2014-08-26 14:07:04 -07:00
robertphillips
7eacd77ce6
SkMultiPictureDraw API
...
This CL adds a new API to optimize across multiple SkPicture draw calls.
Note that multiple pictures rendered at once (i.e., picture piles) should be flattened into a single new picture that includes the required clipping on the different layers.
R=bsalomon@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/491313003
2014-08-21 13:12:42 -07:00
reed
04617139f7
expose generalized imagecache key
...
BUG=skia:
R=mtklein@google.com , halcanary@google.com , qiankun.miao@intel.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/483493003
2014-08-21 09:46:49 -07:00
fmalita
00d5c2c652
SkTextBlob
...
Initial implementation.
R=bungeman@google.com , jbroman@chromium.org , mtklein@google.com , reed@google.com , robertphillips@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/473633002
2014-08-21 08:53:26 -07:00
tomhudson
3a0f279167
Move the code over using the same template type approach previously used for willPlayBackBitmaps in http://skbug.com/2702 .
...
Also unifies that flag and this one into a struct so they and others can be computed together. The struct is stored const to enforce lifetime expectations. Adds a few new cases to the unit test.
BUG=skia:2700
R=mtklein@google.com , reed@google.com , robertphillips@google.com , tomhudson@google.com
Committed: https://skia.googlesource.com/skia/+/60c2a79cfa8ceebcbafc243407564dc71f5e3b4f
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/364823009
2014-08-20 05:29:41 -07:00
halcanary
97d2c0a216
Move SkReadBuffer.h and SkReader32.h out of include.
...
Committed: https://skia.googlesource.com/skia/+/2a51d7c74cec217195f861677de8998b382b39e4
R=mtklein@google.com , reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/481053002
2014-08-19 06:27:53 -07:00
Mike Klein
27dc17c297
Revert "Move the code over using the same template type approach previously used for willPlayBackBitmaps in http://skbug.com/2702 ."
...
This reverts commit 60c2a79cfa
.
BUG=skia:
Review URL: https://codereview.chromium.org/481173003
2014-08-18 18:35:16 -04:00
tomhudson
60c2a79cfa
Move the code over using the same template type approach previously used for willPlayBackBitmaps in http://skbug.com/2702 .
...
Also unifies that flag and this one into a struct so they and others can be computed together. The struct is stored const to enforce lifetime expectations. Adds a few new cases to the unit test.
BUG=skia:2700
R=mtklein@google.com , reed@google.com , robertphillips@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/364823009
2014-08-18 15:07:13 -07:00
halcanary
f128f53a5b
Revert "Move SkReadBuffer.h and SkReader32.h out of include."
...
This reverts commit 2a51d7c74c
.
Breaking Blink
NOTRY=true
R=bungeman@google.com
TBR=bungeman@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/472303006
2014-08-18 13:48:13 -07:00
halcanary
2a51d7c74c
Move SkReadBuffer.h and SkReader32.h out of include.
...
R=mtklein@google.com , reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/481053002
2014-08-18 13:04:59 -07:00
djsollen
3b6255493e
Remove SkPaintOptionsAndroid
...
Committed: https://skia.googlesource.com/skia/+/f32331ffdb5de0440bb337aa7cbdd6f33e9ff23b
R=reed@google.com , mtklein@google.com , tomhudson@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/447873003
2014-08-14 06:29:03 -07:00
bsalomon
c15e28a522
Revert of Remove SkPaintOptionsAndroid (patchset #5 of https://codereview.chromium.org/447873003/ )
...
Reason for revert:
Breaks the Chromium build: http://108.170.220.120:10117/builders/Canary-Chrome-Ubuntu13.10-Ninja-x86_64-DRT/builds/2469/steps/BuildContentShell_1/logs/stdio
Original issue's description:
> Remove SkPaintOptionsAndroid
>
> Committed: https://skia.googlesource.com/skia/+/f32331ffdb5de0440bb337aa7cbdd6f33e9ff23b
R=reed@google.com , mtklein@google.com , tomhudson@google.com , djsollen@google.com
TBR=djsollen@google.com , mtklein@google.com , reed@google.com , tomhudson@google.com
NOTREECHECKS=true
NOTRY=true
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/473543004
2014-08-13 15:18:46 -07:00
djsollen
f32331ffdb
Remove SkPaintOptionsAndroid
...
R=reed@google.com , mtklein@google.com , tomhudson@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/447873003
2014-08-13 13:09:49 -07:00
dandov
b3c9d1c33c
SkCanvas::drawPatch param SkPoint[12]
...
drawPatch now receives as parameter const SkPoint cubics[12]
Adjusted derived classes and serialization.
Ajusted GM's and benches that take into account combinations of optional
parameters, the scale of the patch and 4 different types of patches.
Planning on adding the extra functionality of SkPatch in another CL.
BUG=skia:
R=egdaniel@google.com , reed@google.com
Author: dandov@google.com
Review URL: https://codereview.chromium.org/463493002
2014-08-12 08:34:29 -07:00
halcanary
b2edec2c39
Revert of SkImage_Codec is Lazy ( https://codereview.chromium.org/460823002/ )
...
Reason for revert:
breaks chromium - no SkDecodingImageGenerator::Create
Original issue's description:
> SkImage_Codec is Lazy
>
> Committed: https://skia.googlesource.com/skia/+/e36f499110da8c2e2aa05227bee6deb967309ead
R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/461043002
2014-08-12 06:53:28 -07:00
halcanary
e36f499110
SkImage_Codec is Lazy
...
R=reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/460823002
2014-08-12 06:37:21 -07:00
robertphillips
6b143b0808
Remove Matrix/Clip State collapse code
...
Given recent & upcoming changes (e.g., removal of save flags & SkRecord picture backend) this will have to be reimplemented.
R=fmalita@google.com , fmalita@chromium.org
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/453133003
2014-08-11 06:03:42 -07:00
hendrikw
afdada2eab
Moved SkPictureContentInfo into its own file. It now tracks the number of skia
...
operations (maybe, I'm not 100% sure I'm doing this right yet) and the number
of text draws. I also moved some of the gpu logic out of SkPictureRecord and
into SkPictureContentInfo,
http://code.google.com/p/chromium/issues/detail?id=396908
http://code.google.com/p/chromium/issues/detail?id=397198
http://code.google.com/p/chromium/issues/detail?id=399728
BUG=396908
R=nduca@chromium.org , mtklein@chromium.org , robertphillips@google.com , mtklein@google.com
Author: hendrikw@chromium.org
Review URL: https://codereview.chromium.org/435093003
2014-08-08 10:44:33 -07:00
Derek Sollenberger
da7a944e29
Revert "Remove SkPaintOptionsAndroid"
...
This reverts commit 27fb94999b
.
Review URL: https://codereview.chromium.org/450513002
2014-08-06 16:34:40 -04:00
Derek Sollenberger
27fb94999b
Remove SkPaintOptionsAndroid
...
Review URL: https://codereview.chromium.org/447873003
2014-08-06 16:30:51 -04:00
dandov
50d715476b
Added classes SkPatch and SkPatchMesh which help encapsulate and generalize this new primitive. The functionality and responsability of each class is better explained in the comments of the files.
...
Each patch defines a method genMesh that produces the geometry to draw. To do this they receive a SkPatchMesh object which they need to initialize in order to set up how the data is going to be formatted. Later they call function like setColor or pointAt to set the values at a specific index, the SkMeshPatch object handles the indices based on the format and makes it transparent to the client.
Added a slide to sample app to show how to set up this classes and how they interact.
BUG=skia:
R=jvanverth@google.com , egdaniel@google.com , bsalomon@google.com
Author: dandov@google.com
Review URL: https://codereview.chromium.org/405163003
2014-07-25 10:44:54 -07:00
bungeman
c7af812b42
Revert of Reopened: Caching the result of readPixelsSupported ( https://codereview.chromium.org/364193004/ )
...
Reason for revert:
This appears to be causing failures on Android when running tests.
Original issue's description:
> Caching the result of readPixelsSupported
>
> The call was calling GR_GL_GetIntegerv 2 times for each readPixels
> and thus was causing a loss of performance
>
> (resubmit of issue 344793008)
>
> Benchmark url: http://packages.gkny.fr/tst/index.html
>
> BUG=skia:2681
>
> Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
>
> Committed: https://skia.googlesource.com/skia/+/8339371f1ec3c57a0741932fd96bff32c53d4e54
R=junov@chromium.org , reed@chromium.org , bsalomon@chromium.org , mtklein@google.com , bsalomon@google.com , piotaixr@chromium.org
TBR=bsalomon@chromium.org , bsalomon@google.com , junov@chromium.org , mtklein@google.com , piotaixr@chromium.org , reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2681
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/395203002
2014-07-16 09:10:41 -07:00
piotaixr
8339371f1e
Caching the result of readPixelsSupported
...
The call was calling GR_GL_GetIntegerv 2 times for each readPixels
and thus was causing a loss of performance
(resubmit of issue 344793008)
Benchmark url: http://packages.gkny.fr/tst/index.html
BUG=skia:2681
Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
R=junov@chromium.org , reed@chromium.org , bsalomon@chromium.org , mtklein@google.com , bsalomon@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/364193004
2014-07-15 19:41:08 -07:00
robertphillips
c26d991bf2
Split SkPictureReplacementPlayback out of SkPicturePlayback
...
R=mtklein@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/383733002
2014-07-10 07:21:27 -07:00
robertphillips
1ad00e4b24
Split SkPictureRangePlayback out of SkPicturePlayback
...
This CL starts cleaning up SkPicturePlayback. Future CLs will:
split out the SkPictureReplacementPlayback
remove the preDraw/postDraw entry points & fix up SkPictureTimedPlayback
R=mtklein@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/374833006
2014-07-08 08:28:08 -07:00
robertphillips
ce4dd3de38
Split SkPicturePlayback out of SkPictureData
...
This splits the playback functionality out of SkPictureData. The old SkPictureData::draw method is pulled out along
with its supporting functions as verbatim as possible. Some follow on CLs will be required to:
re-enable profiling in the debugger (and remove the vestiges of SkTimedPicture)
re-enable display of command offsets in the picture (this should probably wait until we've switched to SkRecord though)
Clean up CachedOperationList (maybe fuse with SkPicture::OperationList)
Split SkPicturePlayback into a base class and two derived classes
Implement parallel version of GatherGPUInfo for SkRecord
Landing this is blocked on removing Android's use of the abortPlayback entry point.
R=mtklein@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/377623002
2014-07-07 13:46:35 -07:00
tomhudson
d930511ee7
Linear-time implementation of willPlaybackBitmaps(), computed & cached
...
on construction in SkPicture. Unit test.
Template trickery thanks to mtklein@.
BUG=skia:2702
R=mtklein@google.com , reed@android.com , reed@google.com , tomhudson@google.com , mtklein, reed
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/366443002
2014-07-05 13:37:53 -07:00
reed
e1085e0381
move SkChecksum and SkEmptyShader to private
...
TBR=reed@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/366133002
2014-07-03 07:26:01 -07:00
robertphillips
db539905bb
Rename SkPicturePlayback to SkPictureData
...
This is in preparation for splitting the playback portion of the new SkPictureData class into a new SkPicturePlayback class.
R=reed@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/362773002
2014-07-01 08:47:04 -07:00
halcanary
67ec1f8eec
Switch SkPDFStream's internal storage from SkStream to SkData
...
Motivation: This makes SkPDFStream thread-safe for two threads
serializing it at once, since a SkStream has an internal position.
Updated SkPDFFont, SkPDFGraphicState, and SkPDFPage's use of
SkPDFStream to use the SkData constructor rather than the SkStream
constructor (saving a memcpy).
BUG=skia:2683
Committed: https://skia.googlesource.com/skia/+/c1dfa14b645ae274780f026dd86c9b633fbdad06
R=mtklein@google.com , djsollen@google.com , rmistry@google.com , robertphillips@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/340783013
2014-06-27 11:36:20 -07:00
caryclark
a8d2ffb1c2
add pathops tight bounds; conform path ops' gyp to unit tests
...
Implement path tight bounds using path ops machinery. This is not
as efficient as it could be; for instance, internally, it creates
a path ops structure more suited to intersection. If this shows
up as a performance bottleneck, it could be improved.
Fix path ops gyp files, which have fallen out of sync with other
tests.
R=mtklein@google.com , bsalomon@google.com
TBR=mtklein
BUG=skia:1712
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/348343002
2014-06-24 07:55:12 -07:00
mtklein
887f3979f0
Add EXPERIMENTAL_beginRecording() for SkRecord-based recording.
...
The interesting stuff is in SkPictureRecorder.{h,cpp}. The rest is mostly moving SkRecord from its own directories into core to avoid circular dependencies in GYP.
After plumbing SkRecord all the way through in Picture, I'll delete its old entry point include/record/SkRecording.h. For now it and record.gypi need to stay where they are to keep Chrome building.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/331573004
2014-06-17 12:08:16 -07:00
reed
859b92448b
move some headers out of public
...
patch from issue 338263003
BUG=skia:
R=mtklein@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/339183002
2014-06-17 09:04:45 -07:00
mtklein
a272d6d065
Move SkStringUtils.h to src/core.
...
Doesn't need to be in include/.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/335413004
2014-06-17 07:42:35 -07:00
kkinnunen
cb9a2c8934
Extract "text align proc" functions as reusable classes
...
Extract "text align proc" as reusable classes. These classes need to be used
when writing GrTextContext subclasses.
Moves "text align proc" code that is duplicated in SkDraw and
SkBitmapTextContext to SkDrawProcs.h and SkTextMapState.h. This functionality is
also used in the new GrStencilAndCoverTextContext.
Creates new functor classes SkTextAlignProc and SkTextAlignProcScalar which
represent the previous "text align procs".
Moves TextMapState from SkDraw to SkTextMapStateProc and make it similar functor.
The transform should be comparable in speed, as the compiler can and does avoid
the call and eliminate some of the branches.
R=jvanverth@google.com , reed@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/335573002
2014-06-12 23:06:28 -07:00
robertphillips
795883e15b
Fix neglected cleanup of SkTileGridPicture.h
...
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/312803003
2014-06-03 13:34:06 -07:00
reed
868074b50b
remove SkBounder -- unused and unloved
...
BUG=skia:
R=scroggo@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/312553006
2014-06-03 10:54:00 -07:00
robertphillips
dcf9ab14a1
Remove legacy picture recording
...
This is unblocked now that Android no longer uses the old interface.
This is just the first step in cleaning this up. Future CLs will constify SkPicture access in SkCanvas and split up the SkPicture/SkPicturePlayback/SkPictureRecord trio.
R=bsalomon@google.com , reed@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/313613002
2014-06-03 10:04:47 -07:00
commit-bot@chromium.org
559a8833f0
Fix the rendering error of SkDraw::drawVertices in gpu path for solid color.
...
If both textures and vertex-colors are NULL, drawVertices should stroke hairlines with the paint's color.
This behavior is a useful debugging mode to visualize the mesh.
BUG=skia:2266
R=bsalomon@google.com , reed@google.com
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/189963004
git-svn-id: http://skia.googlecode.com/svn/trunk@14985 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-30 10:08:22 +00:00