Justin Novosad
5234075b1c
Adding a PictureResolution option to SkPictureImageFilter
...
This change adds an option to SkPictureImageFilter to make it
rasterize SkPicture in a resolution that matches the local coordinate
space (equivalent to the record-time device space).
BUG=skia:3176
R=reed@google.com , senorblanco@chromium.org
Review URL: https://codereview.chromium.org/753073010
2014-12-02 14:50:56 -05:00
reed
3729469d6a
Change clear() to respect the clip
...
patch from issue 769703002 at patchset 1 (http://crrev.com/769703002#ps1 )
BUG=skia:
Review URL: https://codereview.chromium.org/772533004
2014-12-02 10:08:11 -08:00
mtklein
cc969c4dd9
Make SkColorTable explicitly thread-safe.
...
Mostly this means using SkLazyPtr for the 16-bit cache.
We can remove the copy constructor now and just ref it instead.
BUG=skia:
Review URL: https://codereview.chromium.org/769323002
2014-12-02 10:02:47 -08:00
mtklein
775b8199a2
SkColorTable locking serves no purpose anymore.
...
The only thing the unlock methods were doing was assert their balance.
This removes the unlock methods and renames the lock methods "read".
BUG=skia:
Review URL: https://codereview.chromium.org/719213008
2014-12-02 09:11:25 -08:00
abarth
2fc6ea62ce
Add scale and skew to C canvas API
...
R=reed@chromium.org
BUG=skia:
Review URL: https://codereview.chromium.org/762493005
2014-12-01 14:04:03 -08:00
mtklein
05d611574a
SkDrawLooper: No need for virtual bounds computation methods.
...
No subclass overrides either method.
This is just warmup. Perf is neutral. The real meat of the time spent
is inside canComputeFastBounds / computeFastBounds, not getting to them.
BUG=skia:
Review URL: https://codereview.chromium.org/772573003
2014-12-01 13:03:22 -08:00
egdaniel
4bd4e8031d
Add function to return an unpremuled version of a GrColor
...
BUG=skia:
Review URL: https://codereview.chromium.org/773553002
2014-12-01 12:30:51 -08:00
mtklein
3f3b3d0035
Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
...
This was needed for pictures before v33, and we're now requiring v35+.
Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88
Review URL: https://codereview.chromium.org/769953002
2014-12-01 11:47:08 -08:00
scroggo
ca92fbd029
Remove orphaned SkImageDecoder::Target.
...
This was used by an experimental method on SkImageDecoder, which no
longer exists.
Review URL: https://codereview.chromium.org/760923003
2014-12-01 11:35:19 -08:00
mtklein
af57903f33
Force SkMatrix type while recording too.
...
This switches to a new way of doing this, enforcing the caching with the type
recorded rather than having to do it in SkRecorder. Should be more foolproof.
Updated SkPath and SkBitmap's equivalents too. ImmutableBitmap was close,
but using inheritance now makes the rest of the code less weird.
BUG=437511
I'm not sure whether or not this will _fix_ the SkMatrix aspect of that bug.
There may be other SkMatrices that we're racing on. It does cover the obvious
ones, though, and removing the SkTRacy<> wrapper will allow TSAN to show
us any other races.
It turned out to be easier to turn missing optional matrices into I early rather
than late. I figure this should be harmless. Recording and playback perf both
look neutral.
Review URL: https://codereview.chromium.org/773433003
2014-12-01 11:03:37 -08:00
mtklein
6e78293ee8
Revert of Remove SK_SUPPORT_LEGACY_DEEPFLATTENING. (patchset #1 id:1 of https://codereview.chromium.org/769953002/ )
...
Reason for revert:
Breaks canary builds. Will reland after the Chromium change lands.
Original issue's description:
> Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
>
> This was needed for pictures before v33, and we're now requiring v35+.
>
> Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88
TBR=reed@google.com ,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/768183002
2014-12-01 10:56:05 -08:00
mtklein
52c293547b
Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
...
This was needed for pictures before v33, and we're now requiring v35+.
Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
BUG=skia:
Review URL: https://codereview.chromium.org/769953002
2014-12-01 10:23:11 -08:00
cdalton
20b373cf31
Add color emoji fallback for nvpr text
...
BUG=skia:
Review URL: https://codereview.chromium.org/759613005
2014-12-01 08:38:55 -08:00
mtklein
5c9c9be1f5
Force path bounds in recording.
...
The use of SKTRacy isn't safe in SkPathRef.
There are logical dependencies between the racy fields.
Doesn't seem to affect recording performance:
$ c --match skp --config nonrendering
tabl_techmeme.skp 81.1us -> 86us 1.06x
desk_mapsvg.skp 1.23ms -> 1.26ms 1.02x
desk_yahooanswers.skp 114us -> 117us 1.02x
tabl_sahadan.skp 70.9us -> 72us 1.02x
desk_fontwipe.skp 31.6us -> 32us 1.01x
tabl_cuteoverload.skp 414us -> 419us 1.01x
desk_mobilenews.skp 503us -> 508us 1.01x
desk_tigersvg.skp 150us -> 152us 1.01x
desk_samoasvg.skp 608us -> 610us 1x
tabl_digg.skp 636us -> 638us 1x
tabl_pravda.skp 155us -> 156us 1x
desk_jsfiddlehumperclip.skp 33.9us -> 33.9us 1x
tabl_culturalsolutions.skp 295us -> 295us 1x
desk_youtube.skp 447us -> 448us 1x
desk_gws.skp 144us -> 144us 1x
tabl_frantzen.skp 42us -> 42us 1x
tabl_gspro.skp 50.1us -> 50us 1x
tabl_googlecalendar.skp 165us -> 165us 1x
desk_twitter.skp 359us -> 358us 1x
desk_wordpress.skp 588us -> 583us 0.99x
desk_jsfiddlebigcar.skp 32.8us -> 32.5us 0.99x
desk_booking.skp 838us -> 827us 0.99x
tabl_androidpolice.skp 1.42ms -> 1.4ms 0.99x
desk_blogger.skp 378us -> 372us 0.98x
desk_wowwiki.skp 1.11ms -> 1.09ms 0.98x
tabl_cnet.skp 115us -> 112us 0.97x
desk_silkfinance.skp 57.7us -> 55.9us 0.97x
tabl_cnn.skp 136us -> 131us 0.97x
desk_sfgate.skp 396us -> 377us 0.95x
tabl_deviantart.skp 107us -> 102us 0.95x
tabl_mozilla.skp 1.4ms -> 1.32ms 0.94x
BUG=437511
Review URL: https://codereview.chromium.org/762313002
2014-12-01 06:59:55 -08:00
mtklein
88fd0fbccc
Bump min picture version.
...
Chrome Stable is M39, which produces picture format v35:
https://chromium.googlesource.com/skia/+/chrome/m39/include/core/SkPicture.h
We don't need any code to deal with pictures older than v35.
(When M40 goes stable, we can step up to v37, the current latest version.)
BUG=skia:
Review URL: https://codereview.chromium.org/770703002
2014-12-01 06:56:38 -08:00
jvanverth
5eefe42e72
Fix assert in GrMaskFormatBytesPerPixel.
...
BUG=skia:3174
Review URL: https://codereview.chromium.org/762553006
2014-11-26 12:07:33 -08:00
joshualitt
267ce482b5
remove proc key
...
BUG=skia:
Review URL: https://codereview.chromium.org/755363002
2014-11-25 14:52:21 -08:00
scroggo
f3ca41c723
Add an Android-framework-only stable ID to SkPixelRef.
...
BUG:b/18245805
Review URL: https://codereview.chromium.org/752203002
2014-11-25 13:42:12 -08:00
bsalomon
a2c2323005
Remove GrSurface::isSameAs
...
Review URL: https://codereview.chromium.org/753783003
2014-11-25 07:41:12 -08:00
mtklein
21180e2651
Revert of Blink hasn't rolled yet, better. (patchset #1 id:1 of https://codereview.chromium.org/758693002/ )
...
Reason for revert:
Try again, for real.
Original issue's description:
> Blink hasn't rolled yet, better.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/89ff0846fd9dacf5f081373746624d450a5f8c26
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/754303004
2014-11-25 07:30:19 -08:00
bsalomon
10e23caea3
Use scratch keys for stencil buffers.
...
BUG=skia:2889
Committed: https://skia.googlesource.com/skia/+/91175f19664a62851da4ca4e0984a7c7c45b258f
Review URL: https://codereview.chromium.org/747043004
2014-11-25 05:52:06 -08:00
reed
26a6bf6a26
free up picturerecorder refs after returning picture or drawable
...
this just accelerates what would happen on the next beginRecording() call or the destructor. chrome has unittests that break (shaders on the stack) if we hold on to the internals past endRecording().
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/758813002
2014-11-24 19:59:23 -08:00
reed
afa278e250
more c
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/736133006
2014-11-24 19:11:48 -08:00
reed
1bdfd3f4f0
option to return drawable from recording
...
patch from issue 747033005 at patchset 80001 (http://crrev.com/747033005#ps80001 )
BUG=skia:
Review URL: https://codereview.chromium.org/732653004
2014-11-24 14:41:51 -08:00
Mike Klein
89ff0846fd
Blink hasn't rolled yet, better.
...
BUG=skia:
Review URL: https://codereview.chromium.org/758693002
2014-11-24 17:31:54 -05:00
mtklein
a2a5cd4405
Revert of Blink hasn't rolled yet. (patchset #1 id:1 of https://codereview.chromium.org/754133002/ )
...
Reason for revert:
Not thorough enough.
Original issue's description:
> Blink hasn't rolled yet.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/fa14113d0563686af9f7e2d8e041dd7bf538cfa2
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/752303002
2014-11-24 14:28:55 -08:00
reed
3c850c561f
restore old convention of asserting refcnt==1 in destructor
...
BUG=skia:
Review URL: https://codereview.chromium.org/757563003
2014-11-24 14:13:55 -08:00
Mike Klein
fa14113d05
Blink hasn't rolled yet.
...
BUG=skia:
Review URL: https://codereview.chromium.org/754133002
2014-11-24 16:26:15 -05:00
mtklein
bbb61d7268
make SkRefCnt::getRefCnt() debug-only, remove it from SkNVRefCnt.
...
Only (unused) API removed.
TBR=reed@google.com
BUG=skia:3160
Review URL: https://codereview.chromium.org/752263002
2014-11-24 13:09:39 -08:00
bsalomon
19cd0f1813
Revert "Use scratch keys for stencil buffers."
...
This reverts commit 91175f1966
.
Revert "Cleanup res cache bench and split out into a unit test."
This reverts commit 4e4303f002
.
Revert "rebaselines"
This reverts commit 65ba7b5775
.
TBR=tomhudson@google.com
Review URL: https://codereview.chromium.org/752233002
2014-11-24 12:19:06 -08:00
reed
90d0ff013b
add some debugging to SkNVRefCnt
...
BUG=skia:
Review URL: https://codereview.chromium.org/745383003
2014-11-24 12:02:31 -08:00
scroggo
01c412e40a
Remove android-framework-only unused parameter.
...
Allows -Werror=unused-parameter to build on android framework.
Review URL: https://codereview.chromium.org/757633002
2014-11-24 09:05:35 -08:00
mtklein
04c9695055
Remove Picture deletion listeners.
...
Looks like we can just have ~SkPicture put the message on the bus directly.
BUG=skia:3144
Review URL: https://codereview.chromium.org/751663002
2014-11-24 08:20:58 -08:00
bsalomon
91175f1966
Use scratch keys for stencil buffers.
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/747043004
2014-11-24 07:05:15 -08:00
bsalomon
932f866987
Create GrOptDrawState directly in the cmd buffer in GrIODB.
...
Review URL: https://codereview.chromium.org/746243002
2014-11-24 06:47:48 -08:00
reed
735f548c51
use int instead of size_t to match skia convention
...
BUG=skia:
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/753903002
2014-11-23 18:37:14 -08:00
mtklein
19ac76753e
SkPicture::SnapshotArray doesn't really stand to benefit from refcounting.
...
BUG=skia:
Review URL: https://codereview.chromium.org/748803005
2014-11-21 12:20:35 -08:00
mtklein
1794651509
Switch SkBitmapProcState's SkFractionalInt to 32.32.
...
16 bits are not enough to hold the integral part of fx in
Clamp_S32_opaque_D32_nofilter_DX_shaderproc.
Weirdly, no GM diffs on my desktop.
BUG=skia:3096
Review URL: https://codereview.chromium.org/733163003
2014-11-21 12:10:33 -08:00
mtklein
09a22e9597
Watch out for SkFixed overflow in SkMipMap.cpp.
...
Tested with -fsanitize=signed-integer-overflow.
This new assert used to trigger in MipMap unit test.
Don't appear to be any GM diffs.
BUG=skia:
Review URL: https://codereview.chromium.org/729373004
2014-11-21 11:38:53 -08:00
mtklein
04038eba9f
public SkNVRefCnt<SnapshotArray>
...
Should fix broken build.
NOTRY=true
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/748143002
2014-11-21 11:13:15 -08:00
mtklein
b7ee349f10
SkData -> SkPicture::SnapshotArray
...
Restores type safety with all the same features.
(Also note, less code: 29 insertions, 50 deletions.)
BUG=skia:
Review URL: https://codereview.chromium.org/746553002
2014-11-21 11:06:04 -08:00
reed
4af267b119
add SkImage::newSurface
...
BUG=skia:
Review URL: https://codereview.chromium.org/741763002
2014-11-21 08:46:38 -08:00
reed
41d2c2e434
simplify uniqueID code in picture
...
patch from issue 750003002 at patchset 1 (http://crrev.com/750003002#ps1 )
BUG=skia:
Review URL: https://codereview.chromium.org/752573002
2014-11-21 08:07:41 -08:00
robertphillips
5b69377507
Add MultiPictureDraw to nanobench
...
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
TBR=bsalomon@google.com
Committed: https://skia.googlesource.com/skia/+/0ddad31012dabfc1267effc8071d37f7d606efbe
Review URL: https://codereview.chromium.org/731973005
2014-11-21 06:19:36 -08:00
robertphillips
e77dadd91a
Revert of Add MultiPictureDraw to nanobench (patchset #7 id:120001 of https://codereview.chromium.org/731973005/ )
...
Reason for revert:
Needs more work
Original issue's description:
> Add MultiPictureDraw to nanobench
>
> I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
>
> TBR=bsalomon@google.com
>
> Committed: https://skia.googlesource.com/skia/+/0ddad31012dabfc1267effc8071d37f7d606efbe
TBR=mtklein@google.com ,bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/750583002
2014-11-21 05:50:21 -08:00
robertphillips
0ddad31012
Add MultiPictureDraw to nanobench
...
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/731973005
2014-11-21 05:35:54 -08:00
Florin Malita
844aa334a4
Add SkNVRefCnt::getRefCnt()
...
Used in Blink unit tests.
TBR=mtklein@google.com ,humper@google.com
Review URL: https://codereview.chromium.org/746693002
2014-11-20 16:56:22 -05:00
fmalita
2d97bc139a
Disable LCD text explicitly in SkPictureImageFilter::onFilterImage()
...
As an intermediate fix for
https://code.google.com/p/skia/issues/detail?id=3142 , we can use a
non-public SkCanvas constructor and force-disable LCD text.
BUG=skia:3142
R=reed@google.com ,senorblanco@google.com
Review URL: https://codereview.chromium.org/725243004
2014-11-20 10:44:58 -08:00
mtklein
d6ab2a8e45
Add SkNVRefCnt::deref().
...
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/744853002
2014-11-20 10:07:54 -08:00
bsalomon
b03c4a35bd
Don't use NULL GrOptDrawState to indicate that draw should be skipped.
...
Review URL: https://codereview.chromium.org/742853002
2014-11-20 09:56:11 -08:00
mtklein
08d1fccf6e
Add SkNVRefCnt, prune down SkPicture's size
...
SkNVRefCnt is a variant of SkRefCnt that's Not Virtual, so weighs 4 bytes
instead of 8 or 16. There's only benefit to doing this if the deriving class
does not otherwise need a vtable, e.g. SkPicture.
I've stripped out some cruft from SkPicture, rearranged fields to pack tightly,
and added compile asserts for the sizes of SkPicture, SkRecord, and
SkVarAlloc.
BUG=skia:3144
Review URL: https://codereview.chromium.org/741793002
2014-11-20 09:18:32 -08:00
bsalomon
072803144a
Stop overloading internal_dispose in SkTextBlob and SkData
...
Review URL: https://codereview.chromium.org/737093002
2014-11-20 08:02:46 -08:00
tomhudson
158fcaa031
Implement SkPicture::bytesUsed() for SkRecord backend
...
BUG=chromium:230419
R=mtklein@google.com ,reed@google.com
Review URL: https://codereview.chromium.org/490253003
2014-11-19 10:41:14 -08:00
mtklein
48b411af76
Remove debug-only fData from SKTDArray.
...
It makes the code harder to read, and makes Debug and Release SkTDArrays
different sizes. Looks like fData is left over from when debuggers weren't
very good at inspecting data structures.
No API changes.
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/739263002
2014-11-19 09:41:27 -08:00
joshualitt
02bcd9db00
move GrGeometryProcessor to src
...
TBR=
BUG=skia:
Review URL: https://codereview.chromium.org/739943003
2014-11-19 08:24:09 -08:00
bsalomon
ae59b77612
Create GrOptDrawState before recording draw in GrInOrderDrawBuffer
...
Review URL: https://codereview.chromium.org/739673002
2014-11-19 08:23:49 -08:00
reed
78e2768897
Allow pictures to have a full bounds
...
This reverts commit 7c4cdd2c5b
.
BUG=skia:
Review URL: https://codereview.chromium.org/738083002
2014-11-19 08:04:34 -08:00
reed
7c4cdd2c5b
Revert of allow pictures to have a full bounds (patchset #3 id:40001 of https://codereview.chromium.org/736583004/ )
...
Reason for revert:
needed to update legacy width() helpers
Original issue's description:
> allow pictures to have a full bounds
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7e76bff26e7c74902841ca4f607eb0b24a833a4a
TBR=fmalita@google.com ,mtklein@google.com,robertphillips@google.com,fmalita@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/722043005
2014-11-19 07:17:17 -08:00
reed
7e76bff26e
allow pictures to have a full bounds
...
BUG=skia:
Review URL: https://codereview.chromium.org/736583004
2014-11-19 06:59:41 -08:00
egdaniel
ec03a46080
Add processor name to comment when printing out shaders.
...
BUG=skia:
Review URL: https://codereview.chromium.org/735153002
2014-11-19 06:22:39 -08:00
reed
b07a94f1cb
add roundOut that returns its result
...
BUG=skia:
Review URL: https://codereview.chromium.org/742663002
2014-11-19 05:03:18 -08:00
reed
d02cf2664d
change roundOut() to take a dst, so we can use that signature to return IRect
...
BUG=skia:
TBR=robertphilips
Review URL: https://codereview.chromium.org/731373003
2014-11-18 18:06:45 -08:00
joshualitt
7eb8c7b00a
drawinfo carries bufferinfo
...
BUG=skia:
Review URL: https://codereview.chromium.org/737723003
2014-11-18 14:24:27 -08:00
halcanary
6fd5e6e261
http://skbug.com/3130 step 4 (include/utils/SkWGL.h gone for good)
...
BUG=skia:3130
Review URL: https://codereview.chromium.org/729363003
2014-11-18 11:30:20 -08:00
reed
6be2aa9a25
wip for drawables
...
Idea:
1. in its mutable recording state, keep a table of drawables on the side, and store an index in the record list.
2. In "immediate-mode" draw, just call the clients drawable directly (need access to our private list to turn the stored index into a proc)
3. when we "snap", we replace the list of drawables with a list of (sub) pictures, and then during playback of the snapped picture, we invoke a private drawable which just calls "drawPicture" on the index'd subpicture.
Review URL: https://codereview.chromium.org/727363003
2014-11-18 11:08:05 -08:00
joshualitt
9853ccef19
Drawstate on stack
...
BUG=skia:
Review URL: https://codereview.chromium.org/732693002
2014-11-17 14:22:49 -08:00
bsalomon
84c8e62fad
Allow GPU resources to not be counted against the cache budget.
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/721353002
2014-11-17 09:33:27 -08:00
mtklein
c6ad9eefa0
More SkPicture cleanup
...
- move field declarations together and pack them a little tighter
- get rid of fData
- remove dead code in debugger, including unused SkPicturePlayback subclass
There are now no more long-lived SkPictureData! (Really, there never were,
but now we don't pretend to support them.)
BUG=skia:
No API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/725143002
2014-11-17 06:45:18 -08:00
Greg Humphreys
21c771b3fc
Revert "move SkPDFD*.h from include to src"
...
This reverts commit 693024300f
.
was breaking canary build
BUG=skia:
Review URL: https://codereview.chromium.org/731173002
2014-11-17 09:42:09 -05:00
halcanary
693024300f
move SkPDFD*.h from include to src
...
BUG=278148
Review URL: https://codereview.chromium.org/727343002
2014-11-17 06:26:21 -08:00
reed
73c2501120
separate c headers
...
BUG=skia:
Review URL: https://codereview.chromium.org/728323002
2014-11-17 06:15:42 -08:00
halcanary
6dd03c899f
Fix Chromium roll broken by http://crrev.com/728823002
...
Review URL: https://codereview.chromium.org/727783004
2014-11-14 17:22:05 -08:00
bsalomon
12299ab7a1
Make GrResourceCache2 responsible for calling release, abandon, and ~.
...
BUG=skia:2889
TBR=robertphillips@google.com
NOTRY=true
Review URL: https://codereview.chromium.org/729683002
2014-11-14 13:33:09 -08:00
halcanary
85588344c3
SkDocument SK_API
...
Review URL: https://codereview.chromium.org/726073002
2014-11-14 13:24:18 -08:00
bsalomon
71cb0c241e
Replace GrResourceCache with GrResourceCache2.
...
BUG=skia:2889
Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6
Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89
Review URL: https://codereview.chromium.org/716143004
2014-11-14 12:10:15 -08:00
djsollen
c87dd2ce96
Enable unused param checking for public includes.
...
This CL cleans up the existing violations and enables the
build time check to ensure that we don't regress.
The motiviation behind this change is to allow clients who include
our headers to be able to build with this warning enabled.
Review URL: https://codereview.chromium.org/726923002
2014-11-14 11:11:46 -08:00
djsollen
33068c19f1
Enforce pure virtual behavior for onMatchFamilyStyleCharacter
...
All impls that previously did not define the functions have been
updated to return NULL.
NOTRY=true
Review URL: https://codereview.chromium.org/728873002
2014-11-14 10:52:53 -08:00
djsollen
082a4620fd
Move WGL header from include to src
...
NOTRY=true
Review URL: https://codereview.chromium.org/728823002
2014-11-14 07:21:29 -08:00
bsalomon
ac49acda52
Revert of Replace GrResourceCache with GrResourceCache2. (patchset #7 id:120001 of https://codereview.chromium.org/716143004/ )
...
Reason for revert:
broken again
Original issue's description:
> Replace GrResourceCache with GrResourceCache2.
>
> BUG=skia:2889
>
> Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6
>
> Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2889
Review URL: https://codereview.chromium.org/726913002
2014-11-14 06:47:39 -08:00
bsalomon
407aa584d1
Replace GrResourceCache with GrResourceCache2.
...
BUG=skia:2889
Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6
Review URL: https://codereview.chromium.org/716143004
2014-11-14 06:29:40 -08:00
djsollen
5ae776504f
Cleanup the XML directory in public includes.
...
Review URL: https://codereview.chromium.org/722343002
2014-11-14 05:52:50 -08:00
tfarina
8816e7bfbe
Cleanup: Delete SkFlattenableBuffers header.
...
It is empty. cs.chromium.org shows no one is including it.
BUG=skia:3108
R=reed@google.com
Review URL: https://codereview.chromium.org/722943002
2014-11-13 14:49:59 -08:00
reed
d54d3fc824
remove unused kLCD_MaskFormat
...
BUG=skia:
Review URL: https://codereview.chromium.org/728673002
2014-11-13 14:39:58 -08:00
fmalita
112e7e2777
Observe surface LCD settings in SkBaseDevice::drawTextBlob()
...
We're currently overwriting the paint LCD text flag based on the the run
font data => this cancels any LCD filtering we might have performed
higher up the stack.
BUG=423362
R=reed@google.com
Review URL: https://codereview.chromium.org/718913003
2014-11-13 14:05:58 -08:00
bsalomon
f21dab9540
Revert of Replace GrResourceCache with GrResourceCache2. (patchset #6 id:100001 of https://codereview.chromium.org/716143004/ )
...
Reason for revert:
Breaking stuff
Original issue's description:
> Replace GrResourceCache with GrResourceCache2.
>
> BUG=skia:2889
>
> Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2889
Review URL: https://codereview.chromium.org/715333003
2014-11-13 13:33:28 -08:00
bsalomon
66a450f21a
Replace GrResourceCache with GrResourceCache2.
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/716143004
2014-11-13 13:19:10 -08:00
djsollen
0b17d6cb34
Cleanup public includes directory.
...
This CL updates various files in the includes directory to ensure that (1) they do
not depend on headers in /src and (2) that they minimize their dependence on external
headers.
To ensure that we don't regress this behavior a new build target has been added to
build a single cpp file that contains all* public includes and is compiled with
only those directories in the include path.
* The exception is those includes that depend on OS specific headers
BUG=skia:2941
NOTRY=true
Review URL: https://codereview.chromium.org/721903002
2014-11-13 12:52:35 -08:00
reed
b2db898573
rename filterTextFlags to disableLCD
...
Under the hood, add SkPixelGeometry to the CreateInfo for new devices, allowing them to see their geometry (SkDeviceProperties) up front, rather than having it changed later.
The only exception is for devices that are used on the root-layer, where we don't see the device until after the fact (at least as long as we allow clients to attach a device to a canvas externally).
We also filter the geometry when we're creating a layer, so we can disable LCD text automatically if the layer is not marked as opaque.
NOTRY=True
-- gammatext flake?
Review URL: https://codereview.chromium.org/719253002
2014-11-13 12:41:02 -08:00
djsollen
e4545210c9
Cleanup GrContextFactory and make it's subclasses private
...
Review URL: https://codereview.chromium.org/723183002
2014-11-13 11:12:41 -08:00
egdaniel
b6cbc38702
Add GrProcOptInfo class to track various output information for color and coverage stages.
...
BUG=skia:
Review URL: https://codereview.chromium.org/719203002
2014-11-13 11:00:34 -08:00
fmalita
6987dcaf25
Rename onCreateDevice -> onCreateCompatibleDevice
...
This is a port of https://codereview.chromium.org/723743002/ with the
following changes:
* drop the legacy onCreateDevice variant completely
* also convert SkXPSDevice & SkGatherPixelRefsAndRects to the new API
This is expected to break canaries and will require a manual/cowboy
roll.
TBR=reed@google.com
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/720213002
2014-11-13 08:33:37 -08:00
reed
5adbf1b579
Revert of move to modify onCreateDevice virtual (patchset #2 id:20001 of https://codereview.chromium.org/723743002/ )
...
Reason for revert:
mac_chromium_rel_ng unittest failures. speculating caused by this cl.
http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/5262
Original issue's description:
> start to replace onCreateDevice with onCreateCompatibleDevice
>
> the new virtual takes a struct which we can amend in the future w/o having to
> update our subclasses in chrome.
>
> BUG=skia:
> NOTRY=True
>
> Committed: https://skia.googlesource.com/skia/+/b122ee50fb56cf6669fe1668b82c8815896e9943
TBR=fmalita@google.com ,fmalita@chromium.org,reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/728433002
2014-11-13 03:31:41 -08:00
reed
b122ee50fb
start to replace onCreateDevice with onCreateCompatibleDevice
...
the new virtual takes a struct which we can amend in the future w/o having to
update our subclasses in chrome.
BUG=skia:
NOTRY=True
Review URL: https://codereview.chromium.org/723743002
2014-11-12 14:31:11 -08:00
bsalomon
69ed47f42d
Make GrGpuResource::gpuMemorySize non-virtual w/ onGpuMemorySize virtual impl
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/702413003
2014-11-12 11:13:39 -08:00
robertphillips
8236591547
Rename GrAccelData to SkLayerInfo and move it to src/core
...
Review URL: https://codereview.chromium.org/719133002
2014-11-12 09:32:34 -08:00
egdaniel
605dd0fbce
Move GrInvariantOutput out of GrProcessor and into its own class.
...
This will help with the ability to subclass, add to, etc. GrInvariantOutput. Also it was simply
getting a little too big to be a "supporting" subclass
BUG=skia:
Review URL: https://codereview.chromium.org/699943003
2014-11-12 08:35:25 -08:00
robertphillips
4e8e3421aa
Move SkRecordComputeLayers and CollectLayers into SkRecordDraw.cpp
...
Rather then exposing parts of FillBounds (as in Expose FillBounds to allow GrPictureUtils::CollectLayers to be layered on top of it - https://codereview.chromium.org/698643002/ ), this CL moves CollectLayers into SkRecordDraw.cpp to accomplish the layering.
Review URL: https://codereview.chromium.org/716913003
2014-11-12 06:46:08 -08:00
reed
6a070dc06a
experimental
...
BUG=skia:
Review URL: https://codereview.chromium.org/716793004
2014-11-11 19:36:10 -08:00
bsalomon
453cf40ac7
Add GrGpuResource::CacheAccess
...
Internal only helper class for manipulating and accessing cache keys.
BUG=skia:2889
Review URL: https://codereview.chromium.org/703303003
2014-11-11 14:15:57 -08:00
joshualitt
4052a8e4f2
Remove coverage from grpaint
...
BUG=skia:
Review URL: https://codereview.chromium.org/683133006
2014-11-11 13:46:30 -08:00
bsalomon
6d4488c5e0
Remove all knowledge of resource keys from the legacy cache.
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/705413002
2014-11-11 07:27:16 -08:00
robertphillips
81f71b6630
Change where layer hoisting data is gathered
...
This CL:
1) removes the EXPERIMENTAL_optimize on SkCanvas & SkDevice
2) moves the saveLayer gathering step to endRecording
3) Replaces GPUOptimize with SkRecordComputeLayers
4) Update bench_pictures & render_pictures to provide the new flag
#2 also necessitated moving the BBH computation (and record optimization) out of SkPicture's ctor (and into endRecording)
Review URL: https://codereview.chromium.org/718443002
2014-11-11 04:54:49 -08:00
scroggo
207a1c96ee
Remove outdated comment in SkImageDecoder.h
...
The comment was no longer relevant with
https://codereview.chromium.org/483593002
Review URL: https://codereview.chromium.org/715673002
2014-11-10 14:18:24 -08:00
bungeman
c9232dcda0
Remove SK_FM_NEW_MATCH_FAMILY_STYLE_CHARACTER.
...
This removes the old guarded code and enables the new api
introduced with "Update fontMgr to take list of bcp47 language tags."
c20386e393
. Blink on Android is
already using the new code.
Review URL: https://codereview.chromium.org/705843004
2014-11-10 13:29:33 -08:00
bsalomon
fe369ee34b
Move GrResourceKey static functions from .h to .cpp to fix shared lib builds
...
TBR=robertphillips@google.com
Review URL: https://codereview.chromium.org/718493002
2014-11-10 11:59:06 -08:00
bsalomon
8b79d23f82
Use GrResourceCache2 to service content key lookups
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/707493002
2014-11-10 10:19:06 -08:00
reed
7c74885e01
flag imageinfo as srgb
...
intended uses:
- flag a SkSurface as sRGB (only supported by Ganesh for now)
- flag images (e.g. png or jpeg) as sRGB if the codec tells us that
wins:
- faster gamma-correct text (esp. w/ distance-fields) when we can use sRGB for text
- better color fidelity when the screen really is sRGB
Review URL: https://codereview.chromium.org/676883003
2014-11-10 08:57:21 -08:00
robertphillips
6beeb8f3cc
Small refactoring of layer discovery code
...
This CL removes CollectLayers' reliance on having the top most picture (by removing the unused fPictureID member). This then allows making CollectLayers' API closer to that of SkRecordFillBounds in order to facilitate using them interchangeably.
Review URL: https://codereview.chromium.org/714533002
2014-11-10 08:48:29 -08:00
joshualitt
4973d9da4a
Default geometry processor
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/ff343074b2a3fdaa5f120600e28717e366bceadd
Review URL: https://codereview.chromium.org/678953002
2014-11-08 09:24:25 -08:00
joshualitt
ee0ea3f0dd
Revert of Default geometry processor (patchset #9 id:160001 of https://codereview.chromium.org/678953002/ )
...
Reason for revert:
breaks nexus 5
Original issue's description:
> Default geometry processor
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/ff343074b2a3fdaa5f120600e28717e366bceadd
TBR=bsalomon@google.com ,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/691313003
2014-11-07 12:08:03 -08:00
joshualitt
ff343074b2
Default geometry processor
...
BUG=skia:
Review URL: https://codereview.chromium.org/678953002
2014-11-07 11:47:10 -08:00
reed
d23f45d047
document the SkStrAppend methods
...
BUG=skia:
Review URL: https://codereview.chromium.org/709063002
2014-11-07 07:37:33 -08:00
mtklein
2ecf86e55e
Revert of Revert of Turn on NVPR 4x MSAA by default when supported in DM and nanobench. (patchset #1 id:1 of https://codereview.chromium.org/693933004/ )
...
Reason for revert:
Try again with loops overflow fix landed.
Original issue's description:
> Revert of Turn on NVPR 4x MSAA by default when supported in DM and nanobench. (patchset #2 id:20001 of https://codereview.chromium.org/704563003/ )
>
> Reason for revert:
> Timing out on nvpr when drawing conics. Fix will take some thought so reverting for now.
>
> Original issue's description:
> > Turn on NVPR 4x MSAA by default when supported in DM and nanobench.
> >
> > This brings DM and nanobench's default configs in line with GM's.
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/31f88675718966bbb7f09718b40de10c7e214739
>
> TBR=bsalomon@google.com ,mtklein@google.com,mtklein@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d5cd4ee5b81b51e43be7ed13f3c0f0f6c1b3fe14
TBR=bsalomon@google.com ,mtklein@chromium.org,egdaniel@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/685923003
2014-11-06 08:06:39 -08:00
egdaniel
e27065ae24
Send coverage VA as floats instead of bytes
...
NOTREECHECKS=True
BUG=skia:
Review URL: https://codereview.chromium.org/700943005
2014-11-06 08:00:48 -08:00
bsalomon
3343557421
Add mock context and use in ResourceCacheTest.
...
BUG=skia:2889
Committed: https://skia.googlesource.com/skia/+/820dd6c335411aad889c1d7e8a857642ecd87e30
Review URL: https://codereview.chromium.org/702083003
2014-11-05 14:47:42 -08:00
egdaniel
d5cd4ee5b8
Revert of Turn on NVPR 4x MSAA by default when supported in DM and nanobench. (patchset #2 id:20001 of https://codereview.chromium.org/704563003/ )
...
Reason for revert:
Timing out on nvpr when drawing conics. Fix will take some thought so reverting for now.
Original issue's description:
> Turn on NVPR 4x MSAA by default when supported in DM and nanobench.
>
> This brings DM and nanobench's default configs in line with GM's.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/31f88675718966bbb7f09718b40de10c7e214739
TBR=bsalomon@google.com ,mtklein@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/693933004
2014-11-05 14:21:33 -08:00
bsalomon
fdcf2c0863
Revert of Add mock context and use in ResourceCacheTest. (patchset #4 id:60001 of https://codereview.chromium.org/702083003/ )
...
Reason for revert:
Breaking tests
Original issue's description:
> Add mock context and use in ResourceCacheTest.
>
> BUG=skia:2889
>
> Committed: https://skia.googlesource.com/skia/+/820dd6c335411aad889c1d7e8a857642ecd87e30
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2889
Review URL: https://codereview.chromium.org/704563004
2014-11-05 12:30:32 -08:00
mtklein
31f8867571
Turn on NVPR 4x MSAA by default when supported in DM and nanobench.
...
This brings DM and nanobench's default configs in line with GM's.
BUG=skia:
Review URL: https://codereview.chromium.org/704563003
2014-11-05 12:28:26 -08:00
bsalomon
820dd6c335
Add mock context and use in ResourceCacheTest.
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/702083003
2014-11-05 12:09:45 -08:00
mtklein
e974c6244c
Whitelist intentionally racy TRACE_EVENT reads and writes.
...
Chrome's tracing framework appears to be intentionally racy on its
quick-reject checks, trading some data loss for better performance
when disabled. People will never notice the data loss, but TSAN does.
Let's assuage TSAN with some annotations.
The 'volatile' val in SK_ANNOTATE_UNPROTECTED_WRITE was making this
not compile, but that volatile doesn't really make sense there: the value we're
writing is not what we care about, it's the destination.
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot
No API changes.
TBR=reed
BUG=skia:
Review URL: https://codereview.chromium.org/702883002
2014-11-05 08:03:27 -08:00
tfarina
f6e59b5035
Cleanup: Remove unused InstallNewHandler() function from SkGraphics.
...
BUG=None
TEST=None
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/701813006
2014-11-05 07:20:51 -08:00
robertphillips
9f2251c73e
Crop the fast path dashed lines to the cull rect
...
Without:
maxrss loops min median mean max stddev samples config bench
56M 1 13.3ms 13.6ms 13.6ms 14.2ms 2% Ooooo..... 8888 GM_dashing5_bw
56M 13 390us 417us 416us 459us 5% ooooO..o.o gpu GM_dashing5_bw
56M 1 13.4ms 13.9ms 14.1ms 15ms 3% Oooo..ooOo 8888 GM_dashing5_aa
56M 13 402us 421us 416us 425us 2% Ooo.ooOOOO gpu GM_dashing5_aa
With:
40M 1 1.53ms 1.54ms 1.54ms 1.55ms 0% oo.O...o.. 8888 GM_dashing5_bw
40M 12 407us 412us 415us 445us 3% ...Oo..... gpu GM_dashing5_bw
40M 1 1.7ms 1.7ms 1.7ms 1.72ms 0% o.O....... 8888 GM_dashing5_aa
43M 13 405us 409us 409us 415us 1% ooo.Ooo..o gpu GM_dashing5_aa
The GM images (including the new one) are the same with and without this CL.
BUG=428296
Review URL: https://codereview.chromium.org/699623003
2014-11-04 13:33:50 -08:00
piotaixr
2bf8d09689
Revert of Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe (patchset #8 id:140001 of https://codereview.chromium.org/613673005/ )
...
Reason for revert:
The patch is breaking the telemetry blink build on some windows configurations
Original issue's description:
> Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe
>
> Depend on https://codereview.chromium.org/663233002
>
> BUG=skia:2947
>
> Committed: https://skia.googlesource.com/skia/+/687732fe046c9cfec940f2d7f661cd97651d10a8
>
> Committed: https://skia.googlesource.com/skia/+/9bb7539a59ab15749fe26fecfec05330cffae684
BUG=skia:2947, 426708
Review URL: https://codereview.chromium.org/705633002
2014-11-04 13:21:41 -08:00
jvanverth
f7007b023d
Enable distance field path rendering in Chrome.
...
- Add stat tracking for df-renderable paths
- Modify GPU rasterization veto to account for df-renderable paths
- Remove #define hiding df paths from Chromium and Android
BUG=skia:2935
Review URL: https://codereview.chromium.org/685113003
2014-11-04 07:59:01 -08:00
reed
1b6ab4417e
add textblobs to lua
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/688363003
2014-11-03 19:55:41 -08:00
fmalita
7c11aadd82
Export (SK_API) SkSurfaceProps
...
R=reed@google.com
Review URL: https://codereview.chromium.org/693973003
2014-11-03 17:07:36 -08:00
reed
615c593780
move SkTextBox into utils
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/696293005
2014-11-03 14:55:40 -08:00
qiankun.miao
fb502f072f
Optimize SkRect::sort()
...
This optimization can reduce comparison and assignments. For
geo_rect_sort benchmark, performance improved to 1.63us from 3.28us.
BUG=skia:
Review URL: https://codereview.chromium.org/695443005
2014-11-03 14:34:31 -08:00
bsalomon
87a94eb163
Rename and clarify semantics of GrContext::resolveRenderTarget.
...
Review URL: https://codereview.chromium.org/696293004
2014-11-03 14:28:32 -08:00
bsalomon
89c62980c1
Don't allow renderTarget==NULL to GrContext::clear() and friends.
...
Review URL: https://codereview.chromium.org/680413005
2014-11-03 12:08:42 -08:00
egdaniel
37b4d866b1
Force input coverage to be only a byte in gpu shaders.
...
Prime coverage invariant output calculations with single component
BUG=skia:
Review URL: https://codereview.chromium.org/649783003
2014-11-03 10:07:07 -08:00
bsalomon
37dd331b20
Add class GrGLTextureRenderTarget for GL texture/rendertarget objects
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/695813003
2014-11-03 08:47:23 -08:00
tfarina
77ae06ba7a
Cleanup: Remove unnecessary forward declarations from some views files.
...
Cautch in
https://skia.googlesource.com/skia/+/a3a706fcd4cc9376a1223a53f57589f29d4a36ea
BUG=None
TEST=None
R=djsollen@google.com
Review URL: https://codereview.chromium.org/680253004
2014-11-03 08:31:23 -08:00
joshualitt
5c55fef032
GrContext no longer ever draws on Gpu
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/7a75e5230872732e71ea99058d9afe5d4b6758b0
Review URL: https://codereview.chromium.org/683733005
2014-10-31 14:04:35 -07:00
joshualitt
b9e8230b50
Revert of GrContext no longer ever draws on Gpu (patchset #7 id:120001 of https://codereview.chromium.org/683733005/ )
...
Reason for revert:
breaks some android bots
Original issue's description:
> GrContext no longer ever draws on Gpu
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7a75e5230872732e71ea99058d9afe5d4b6758b0
TBR=bsalomon@google.com ,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/694983002
2014-10-31 12:20:08 -07:00
joshualitt
7a75e52308
GrContext no longer ever draws on Gpu
...
BUG=skia:
Review URL: https://codereview.chromium.org/683733005
2014-10-31 11:34:53 -07:00
stephana
0b5fc9774f
Quick and dirty test to call the C interface from GO.
...
BUG=skia:
Review URL: https://codereview.chromium.org/670303005
2014-10-31 07:11:19 -07:00
tfarina
38406c82b9
Cleanup: Go with SkDebugf instead of GrPrintf.
...
Since GrPrintf is just defined to SkDebugf, we can go with the later
directly.
BUG=None
TEST=None
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/695663003
2014-10-31 07:11:12 -07:00
tfarina
58f467c210
Cleanup: Remove GR_ARRAY_COUNT macro.
...
It is defined to SK_ARRAY_COUNT, and there are no uses of it.
Lets just use the SK_ variant.
BUG=None
TEST=None
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/691133003
2014-10-31 07:06:01 -07:00
reed
bd1605905b
begin clean up for scalar is double option
...
BUG=skia:
Review URL: https://codereview.chromium.org/694693002
2014-10-31 06:55:41 -07:00
robertphillips
d8aa7b74c8
Upgrade GPUOptimize
...
This will be a bit hairy to review.
The FillBounds and CollectLayers code has diverged significantly resulting in the rendering path seeing different bounds than the hoisting path. This CL merges the FillBounds changes into CollectLayers. A follow on CL will, hopefully, find a way to layer CollectLayers on top of FillBounds.
The only code in CollectLayers that is different from FillBounds is bracketed by "LAYER HOISTING" comments.
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/685263004
2014-10-30 16:45:02 -07:00
djsollen
a3a706fcd4
Cleanup android to ensure it can compile with clang
...
Review URL: https://codereview.chromium.org/694533002
2014-10-30 11:39:13 -07:00
halcanary
902d4d18de
Add SkDocument::getStream() method.
...
Motivation: SkDocument_PDF can be refactored to stream all
PDF objects as SkCanvas calls are made, to save memory!
BUG=skia:3030
BUG=skia:2683
Review URL: https://codereview.chromium.org/691783002
2014-10-30 11:29:00 -07:00
mtklein
e71cd54ed4
SkTaskGroup::batch(fn, args, N)
...
Porting QuiltTask isn't important in itself; this is mostly an API feeler.
BUG=skia:
Review URL: https://codereview.chromium.org/689673003
2014-10-29 14:17:13 -07:00
reed
89889b6939
MultiPictureDraw is taskgroup aware.
...
SampleApp is multipicturedraw aware.
BUG=skia:
Review URL: https://codereview.chromium.org/684923002
2014-10-29 12:36:45 -07:00
senorblanco
8f3937d9fc
Fix bounds computation of all 0-input filters.
...
The SkRectShaderImageFilter had the same bug as previously fixed for
SkBitmapSource and SkPictureImageFilter. Rather than copy-and-paste
the implementation, this change makes all filters with 0 inputs return
their source bounds, instead of returning false.
BUG=427251
Review URL: https://codereview.chromium.org/681643003
2014-10-29 12:36:32 -07:00
bungeman
a5cf665997
Issue acquire barrier in SkRefCnt::unique().
...
When unique() returns true, it must also issue an acquire barrier.
Note that this change may adversly impact SkPath performance,
but editing SkPaths is already a performance issue.
BUG=chromium:258499
No API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/687293002
2014-10-29 12:31:33 -07:00
bsalomon
81b0928673
fix typo in legacy flag alias
...
TBR=joshualitt@google.com
NOTRY=true
Review URL: https://codereview.chromium.org/675173005
2014-10-28 15:17:39 -07:00
bsalomon
f2703d83da
rename GrTextureDesc->GrSurfaceDesc, GrTextureFlags->GrSurfaceFlags
...
Review URL: https://codereview.chromium.org/682223002
2014-10-28 14:33:06 -07:00
joshualitt
0e602827df
Working patch to remove constant attributes. This may cause some gm mismatches, I will rebaseline tonight.
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/84c94c0dfd1e12e97d8a835882dda575f36e41d2
Committed: https://skia.googlesource.com/skia/+/95f5194abce19e8ed875f3495fd16c79a9b931b4
Review URL: https://codereview.chromium.org/678073005
2014-10-28 10:27:44 -07:00
joshualitt
98102a8f79
Revert of Patch to remove constant attributes (patchset #8 id:120002 of https://codereview.chromium.org/678073005/ )
...
Reason for revert:
I'll checkin tonight when the tree is quieter
Original issue's description:
> Working patch to remove constant attributes. This may cause some gm mismatches, I will rebaseline tonight.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/84c94c0dfd1e12e97d8a835882dda575f36e41d2
>
> Committed: https://skia.googlesource.com/skia/+/95f5194abce19e8ed875f3495fd16c79a9b931b4
TBR=bsalomon@google.com ,egdaniel@google.com,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/683203002
2014-10-28 09:08:35 -07:00
piotaixr
e5909d3d69
Override SkCanvas::drawImage[Rect]() in SkProxyCanvas
...
BUG=skia:2947
Review URL: https://codereview.chromium.org/679293002
2014-10-28 08:10:42 -07:00
joshualitt
95f5194abc
Working patch to remove constant attributes. This may cause some gm mismatches, I will rebaseline tonight.
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/84c94c0dfd1e12e97d8a835882dda575f36e41d2
Review URL: https://codereview.chromium.org/678073005
2014-10-28 07:54:54 -07:00
junov
ed53742e92
Add SK_API to global scope operators of SkMatrix
...
Review URL: https://codereview.chromium.org/678153002
2014-10-28 07:14:58 -07:00
hcm
d0f1969100
Revert of Fix bounds computation of all 0-input filters. (patchset #2 id:20001 of https://codereview.chromium.org/681643003/ )
...
Reason for revert:
try again
Original issue's description:
> Fix bounds computation of all 0-input filters.
>
> The SkRectShaderImageFilter had the same bug as previously fixed for
> SkBitmapSource and SkPictureImageFilter. Rather than copy-and-paste
> the implementation, this change makes all filters with 0 inputs return
> their source bounds, instead of returning false.
>
> BUG=427251
>
> Committed: https://skia.googlesource.com/skia/+/ba036cc82b5a543a13cafd11a19ba0e3087fca38
TBR=bsalomon@google.com ,senorblanco@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=427251
Review URL: https://codereview.chromium.org/678273002
2014-10-27 20:55:01 -07:00
joshualitt
9f2825f249
Revert of Patch to remove constant attributes (patchset #6 id:100001 of https://codereview.chromium.org/678073005/ )
...
Reason for revert:
Breaks the K1
Original issue's description:
> Working patch to remove constant attributes. This may cause some gm mismatches, I will rebaseline tonight.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/84c94c0dfd1e12e97d8a835882dda575f36e41d2
TBR=bsalomon@google.com ,egdaniel@google.com,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/679363002
2014-10-27 17:56:18 -07:00
joshualitt
84c94c0dfd
Working patch to remove constant attributes. This may cause some gm mismatches, I will rebaseline tonight.
...
BUG=skia:
Review URL: https://codereview.chromium.org/678073005
2014-10-27 15:33:33 -07:00
senorblanco
ba036cc82b
Fix bounds computation of all 0-input filters.
...
The SkRectShaderImageFilter had the same bug as previously fixed for
SkBitmapSource and SkPictureImageFilter. Rather than copy-and-paste
the implementation, this change makes all filters with 0 inputs return
their source bounds, instead of returning false.
BUG=427251
Review URL: https://codereview.chromium.org/681643003
2014-10-27 13:38:13 -07:00
egdaniel
27c1521ccf
Add gpu support for glVertexAttrb1f, 2fv, and 3fv
...
BUG=skia:
Review URL: https://codereview.chromium.org/662583003
2014-10-24 15:00:50 -07:00
halcanary
f622a6c8fd
Add SkIRect bounds()
convenience method to SkImageInfo and SkBitmap.
...
Review URL: https://codereview.chromium.org/646213003
2014-10-24 12:54:53 -07:00
bsalomon
a0036c6e33
Delete unused method aliases and texture flag.
...
Committed: https://skia.googlesource.com/skia/+/7fdffe41494cbd78a8ee2a6ef0509e46ec77039f
Review URL: https://codereview.chromium.org/672753002
2014-10-24 12:46:57 -07:00
joshualitt
74077b9941
Added varying struct
...
TBR=
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/852ae80b9c3c6fd53f993ac35133d80863993cbe
Review URL: https://codereview.chromium.org/671023002
2014-10-24 11:26:03 -07:00
reed
e332396d2f
move c api into include
...
BUG=skia:
Review URL: https://codereview.chromium.org/665203004
2014-10-24 11:16:19 -07:00
bsalomon
24234fe777
Build gpu stats tracking in dev builds.
...
Fix cache stats, add more info.
BUG=skia:2889
Review URL: https://codereview.chromium.org/655263005
2014-10-24 09:34:41 -07:00
joshualitt
c6f3e2c17b
Revert of Added varying struct (patchset #9 id:160001 of https://codereview.chromium.org/671023002/ )
...
Reason for revert:
may have caused gm change on arm
Original issue's description:
> Added varying struct
>
> TBR=
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/852ae80b9c3c6fd53f993ac35133d80863993cbe
TBR=bsalomon@google.com ,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/675193002
2014-10-24 08:24:08 -07:00
tfarina
20b7960798
Add isScale() helper function to SkMatrix44.
...
This will be used later in Chromium to cleanup gfx::Transform::IsScale2d().
BUG=408710,skia:997
TEST=None
R=bsalomon@google.com ,danakj@chromium.org
Review URL: https://codereview.chromium.org/676583002
2014-10-24 08:07:05 -07:00
joshualitt
852ae80b9c
Added varying struct
...
TBR=
BUG=skia:
Review URL: https://codereview.chromium.org/671023002
2014-10-24 07:56:04 -07:00
jvanverth
b3eb687f8a
Set temporary paths volatile so we don't cache them.
...
Any path that is generated frame-to-frame should not be rendered by using the
DistanceFieldPathRenderer, because generating the initial distance field,
uploading it and rendering it takes longer than the SoftwarePathRenderer.
BUG=skia:2935
Review URL: https://codereview.chromium.org/677463002
2014-10-24 07:12:51 -07:00
sugoi
234f036b3e
Adding an option to render only the shadow in SkDropShadowImageFilter
...
This is basically how blink uses the filter. Currently, I can't use it for "ShadowOnly" mode with the filter at all, but instead of copying the code and risking to have the codepaths diverge, I'm simply going to add the option here.
BUG=skia:
Review URL: https://codereview.chromium.org/646213004
2014-10-23 13:59:52 -07:00
djsollen
e3aee8fb7b
Remove android specific genID from SkPaint.
...
Review URL: https://codereview.chromium.org/677453002
2014-10-23 10:23:07 -07:00
bsalomon
26979c8260
Revert of Delete unused method aliases and texture flag. (patchset #1 id:1 of https://codereview.chromium.org/672753002/ )
...
Reason for revert:
Need to remove one more reference to this in blink before relanding.
Original issue's description:
> Delete unused method aliases and texture flag.
>
> Committed: https://skia.googlesource.com/skia/+/7fdffe41494cbd78a8ee2a6ef0509e46ec77039f
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/671203002
2014-10-23 07:41:29 -07:00
bungeman
c20386e393
Update fontMgr to take list of bcp47 language tags.
...
This will enable clients to pass more than one bcp47 tag to ensure
that the most appropriate font is selected.
BUG=chromium:422180
Review URL: https://codereview.chromium.org/670243002
2014-10-23 07:08:06 -07:00
bsalomon
7fdffe4149
Delete unused method aliases and texture flag.
...
Review URL: https://codereview.chromium.org/672753002
2014-10-23 06:56:55 -07:00
reed
a0c814cffb
Add SkTypeface::getBounds()
...
mirrored from https://codereview.chromium.org/666303002/
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/676523002
2014-10-22 13:20:58 -07:00
scroggo
2a1208017d
Qualify the return value of SkImageDecoder::decode
...
Add a new enum to differentiate between a complete decode and a
partial decode (with the third value being failure). Return this
value from SkImageDecoder::onDecode (in all subclasses, plus
SkImageDecoder_empty) and ::decode.
For convenience, if the enum is treated as a boolean, success and
partial success are both considered true.
Note that the static helper functions (DecodeFile etc) still return
true and false (for one thing, this allows us to continue to use
SkImageDecoder::DecodeMemory as an SkPicture::InstallPixelRefProc in
SkPicture::CreateFromStream).
Also correctly report failure in SkASTCImageDecoder::onDecode when
SkTextureCompressor::DecompressBufferFromFormat fails.
BUG=skia:3037
BUG:b/17419670
Review URL: https://codereview.chromium.org/647023006
2014-10-22 12:07:00 -07:00
reed
727b8c1d1c
explicitly size fType in SkRRect, to ensure the are no uninitialized bytes
...
(so it can be used as a key in a cache)
BUG=skia:
Review URL: https://codereview.chromium.org/670183002
2014-10-22 11:23:56 -07:00
piotaixr
9bb7539a59
Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe
...
Depend on https://codereview.chromium.org/663233002
BUG=skia:2947
Committed: https://skia.googlesource.com/skia/+/687732fe046c9cfec940f2d7f661cd97651d10a8
Review URL: https://codereview.chromium.org/613673005
2014-10-22 11:02:32 -07:00
reed
39393e3ac3
add round/ceil/etc. for SkMScalar
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/645793006
2014-10-21 12:33:21 -07:00
senorblanco
b0e89dcc1d
Fix image filters for PDF backend.
...
Currently, the PDF backend does not support image filters (since PDF
does not have that functionality), so it simply removes them. This is
causing Chrome print preview to render incorrectly (see bug). The fix
here is to fall back to a raster device for image filters, as we used
to do in Blink. The resulting bitmap will be drawn to the destination
device as a normal main-memory-backed bitmap.
Note: this change invalidates the PDF results of all GMs containing
image filters (since they'll actually be rendered).
BUG=422144
Review URL: https://codereview.chromium.org/644323006
2014-10-20 14:03:13 -07:00
bungeman
a4c4a2d8cd
Replace SkTypeface::Style with SkFontStyle.
...
Committed: https://skia.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20
Review URL: https://codereview.chromium.org/488143002
2014-10-20 13:33:19 -07:00
mtklein
802ad83dca
Revert of Replace SkTypeface::Style with SkFontStyle. (patchset #9 id:160001 of https://codereview.chromium.org/488143002/ )
...
Reason for revert:
CrOS GM failures:
[*] 2 ExpectationsMismatch: fontmgr_iter_565.png fontmgr_iter_8888.png
Original issue's description:
> Replace SkTypeface::Style with SkFontStyle.
>
> Committed: https://skia.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20
TBR=reed@google.com ,bungeman@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/667023002
2014-10-20 12:54:31 -07:00
bungeman
43b8b36b20
Replace SkTypeface::Style with SkFontStyle.
...
Review URL: https://codereview.chromium.org/488143002
2014-10-20 12:33:59 -07:00
mtklein
dba3e64ab9
Revert of Start to vectorize SkTileGrid. (patchset #48 id:1670001 of https://codereview.chromium.org/634543004/ )
...
Reason for revert:
breaks chrome GPU debug bots
Original issue's description:
> Start to vectorize SkTileGrid.
>
> This adds Sk4x.h to help.
>
> BUG=skia:3041
>
> Committed: https://skia.googlesource.com/skia/+/90c7992bfc6330f070f7704d63372a0ec8410170
>
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu12-ShuttleA-GTX660-x86-Debug-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/958e9628d5f9a81aeafa78572cb4afc4b19a455a
TBR=reed@google.com ,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:3041
Review URL: https://codereview.chromium.org/637863005
2014-10-20 10:43:55 -07:00
mtklein
958e9628d5
Start to vectorize SkTileGrid.
...
This adds Sk4x.h to help.
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/90c7992bfc6330f070f7704d63372a0ec8410170
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu12-ShuttleA-GTX660-x86-Debug-Trybot
Review URL: https://codereview.chromium.org/634543004
2014-10-20 07:12:34 -07:00
mtklein
a71aee6afd
Remove obsolete SkRecording.
...
Can land after https://codereview.chromium.org/664583002/ does.
BUG=skia:
Only API removed.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/660903002
2014-10-20 06:44:58 -07:00
rmistry
6fedd3a4e6
Revert of Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe (patchset #5 id:80001 of https://codereview.chromium.org/613673005/ )
...
Reason for revert:
Trying to fix DEPS roll failure:
https://codereview.chromium.org/660113002/
Link to failing builds:
http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/29578
http://build.chromium.org/p/tryserver.blink/builders/linux_blink_dbg/builds/29354
Original issue's description:
> Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe
>
> BUG=skia:2947
>
> Committed: https://skia.googlesource.com/skia/+/687732fe046c9cfec940f2d7f661cd97651d10a8
TBR=junov@chromium.org ,reed@google.com,bsalomon@chromium.org,piotaixr@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2947
Review URL: https://codereview.chromium.org/658293004
2014-10-17 06:19:27 -07:00
mtklein
2348199907
Revert of Start to vectorize SkTileGrid. (patchset #45 id:1430002 of https://codereview.chromium.org/634543004/ )
...
Reason for revert:
Many GCC bots missing __builtin_shuffle, e.g. Test-Ubuntu12-ShuttleA-GTX660-x86-Debug-Trybot.
Original issue's description:
> Start to vectorize SkTileGrid.
>
> This adds Sk4x.h to help.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/90c7992bfc6330f070f7704d63372a0ec8410170
TBR=reed@google.com ,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/663663002
2014-10-16 15:27:47 -07:00
mtklein
90c7992bfc
Start to vectorize SkTileGrid.
...
This adds Sk4x.h to help.
BUG=skia:
Review URL: https://codereview.chromium.org/634543004
2014-10-16 15:21:43 -07:00
bsalomon
427cf28861
Remove AutoScratchTexture
...
Remove AST from GrClipMaskCache
Remove AST from GrClipMaskManager
BUG=skia:2889
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/663583002
2014-10-16 13:41:43 -07:00
sugoi
b227e37eae
JPEG YUV Decoding
...
Enabling JPEG YUV Decoding in Skia
BUG=skia:3005, skia:1674, skia:3029
Committed: https://skia.googlesource.com/skia/+/8e6c3b93a39e19111662a760ede97df55e51d39f
Review URL: https://codereview.chromium.org/399683007
2014-10-16 13:10:57 -07:00
piotaixr
687732fe04
Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe
...
BUG=skia:2947
Review URL: https://codereview.chromium.org/613673005
2014-10-16 11:55:35 -07:00
bsalomon
420d7e9a79
Auto-compare GrProcessors' texture accesses in isEqual().
...
R=joshualitt@google.com
Review URL: https://codereview.chromium.org/654313002
2014-10-16 09:18:09 -07:00
jvanverth
aab626c367
Revert of Change drawText() to generate positions and send to drawPosText() (patchset #4 id:60001 of https://codereview.chromium.org/653133004/ )
...
Reason for revert:
A large number of GMs on Ubuntu12 are failing. The text layout on GPU is visibly different than that for 8888.
Original issue's description:
> Change drawText() to generate positions and send to drawPosText()
>
> The idea here is to have a central place that does layout for drawText(), and
> then always feed text through drawPosText(). This both makes all of the
> GrTextContexts consistent in drawText() output, and does a better job of
> stressing drawPosText().
>
> Because of the effect of matrices on hinting and approximation error, the
> generated text is not 100% identical to that produced by the raster pipeline.
>
> BUG=skia:2778
>
> Committed: https://skia.googlesource.com/skia/+/7851a56895c9c076f73a835a7dd51d3c6180c16f
TBR=cdalton.nvidia@gmail.com ,bungeman@google.com,reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2778
Review URL: https://codereview.chromium.org/659993003
2014-10-16 08:04:39 -07:00
jvanverth
7851a56895
Change drawText() to generate positions and send to drawPosText()
...
The idea here is to have a central place that does layout for drawText(), and
then always feed text through drawPosText(). This both makes all of the
GrTextContexts consistent in drawText() output, and does a better job of
stressing drawPosText().
Because of the effect of matrices on hinting and approximation error, the
generated text is not 100% identical to that produced by the raster pipeline.
BUG=skia:2778
Review URL: https://codereview.chromium.org/653133004
2014-10-16 06:20:35 -07:00
kkinnunen
30bc88ccd5
Refactor SkGLContext to be actually extendable
...
Refactor SkGLContext to be actually extendable. Before, non-trivial subclass
would need to destroy the GL connection upon running the destructor. However,
the base class would run GL commands in its own destructor (with destroyed GL
connection)
Refactor so that SkGLContext subclass object creation is completely done by
the factory function. If the factory function returns a non-NULL ptr, it means the context
is usable.
The destruction is done with the destructor instead of virtual function called
upon destruction. Make the destructors not to call virtual functions, for
clarity.
Remove custom 1x1 FBO setup code from the base class. It appears not to be used
anymore.
BUG=skia:2992
Review URL: https://codereview.chromium.org/640283004
2014-10-15 23:03:54 -07:00
bsalomon
de258cd6b4
Make GrFragmentProcessor auto-compare coord xforms.
...
Review URL: https://codereview.chromium.org/657923002
2014-10-15 19:06:21 -07:00
bsalomon
f2765410ba
Last round of effect->processor (for now)
...
R=joshualitt@google.com
Review URL: https://codereview.chromium.org/659803005
2014-10-15 18:34:46 -07:00
bungeman
8dfdfff98d
Don't use 'defined' in macro expansion.
...
A careful reading of the preprocessor specification indicates that
any use of the 'defined' operator outside the form of 'defined X' or
'defined ( X )' directly in the constant expression of a '#if' or
'#elif' may cause undefined behavior.
In particular, msvc is very unpredictable. The 'defined X' and
'defined ( X )' forms behave differently when created from marco
expansion, with 'defined ( X )' generally evaluating to '0L'. The
'defined X' form generally behaves more the way one would expect,
but still has a number of quirks which should simply be considered
undefined behavior.
BUG=chromium:419245
Review URL: https://codereview.chromium.org/657183002
2014-10-15 13:53:55 -07:00
egdaniel
9e4d6d180f
Move willUseInputColor check to computeInvariantOutput
...
BUG=skia:
Review URL: https://codereview.chromium.org/656503002
2014-10-15 13:49:02 -07:00
rmistry
3ac569b37a
Revert of JPEG YUV Decoding (patchset #5 id:180001 of https://codereview.chromium.org/399683007/ )
...
Reason for revert:
Caused many test bots to go red:
http://build.chromium.org/p/client.skia/builders/Test-ChromeOS-Alex-GMA3150-x86-Release/builds/22/steps/dm/logs/stdio
http://build.chromium.org/p/client.skia/builders/Test-ChromeOS-Link-HD4000-x86_64-Debug/builds/168/steps/dm/logs/stdio
http://build.chromium.org/p/client.skia/builders/Test-Ubuntu12-ShuttleA-GTX660-x86-Release/builds/38/steps/dm/logs/stdio
Original issue's description:
> JPEG YUV Decoding
>
> Enabling JPEG YUV Decoding in Skia
>
> BUG=skia:3005, skia:1674
>
> Committed: https://skia.googlesource.com/skia/+/8e6c3b93a39e19111662a760ede97df55e51d39f
TBR=reed@google.com ,scroggo@google.com,sugoi@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:3005, skia:1674
Review URL: https://codereview.chromium.org/656163002
2014-10-15 13:15:58 -07:00