| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/817283005/)
Reason for revert:
need fix in edgebuilder+aa
Original issue's description:
> use conics for ovals and roundrects
>
> adapted from https://codereview.chromium.org/831313002/
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/2bf1c4d58b84c73c6421edcb25e3afb4971da200
TBR=reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/840573002
|
|
|
|
|
|
|
|
|
| |
adapted from https://codereview.chromium.org/831313002/
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/817283005
|
|
|
|
|
|
|
|
|
|
| |
AFAICT the asRect entry point is not needed.
Greg: GPU
Reed: API
Cary: Path
Review URL: https://codereview.chromium.org/833193002
|
|
|
|
|
|
|
|
|
|
|
| |
When both edges of a thin (sub-unit) stroke fall within the same pixel, we compute the wrong coverage and also blit the same line twice.
To avoid these issues, tweak the inner/outer hulls to ensure one of the edges is always pixel-aligned.
BUG=skia:3278
R=reed@google.com
Review URL: https://codereview.chromium.org/819253003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/832083002
|
|
|
|
|
|
|
|
| |
This is intended to provide additional information for a flaky assertion failure on ChromeOS Daisy.
BUG=skia:3282
Review URL: https://codereview.chromium.org/821683002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
#1 id:1 of https://codereview.chromium.org/835913002/)
Reason for revert:
test to see if it wasn't this CL that broke chromeos
Original issue's description:
> Revert of move remaining virtual draw methods to onDraw (patchset #5 id:80001 of https://codereview.chromium.org/817723005/)
>
> Reason for revert:
> did this cause chromeos heap corruption on skp?
>
> Original issue's description:
> > move remaining virtual draw methods to onDraw
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/2e0f7d53bba5438c9bf11ee5ccae2c301e348419
>
> TBR=robertphillips@google.com,djsollen@google.com,bsalomon@google.com,mtklein@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/e87e383351e1547b21d96d02bcd0c3cbbe0837f1
TBR=robertphillips@google.com,djsollen@google.com,bsalomon@google.com,mtklein@google.com,reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/831253002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the SkRecords::Clear struct and everything that refers to it.
Notice there is nothing actually creating a Clear, which means this is all
dead code.
Now that all ops obey the clip, I don't think we need the weird
inflate-empty-to-epsilon hack for BBH queries.
BUG=skia:
Review URL: https://codereview.chromium.org/835813002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
id:80001 of https://codereview.chromium.org/817723005/)
Reason for revert:
did this cause chromeos heap corruption on skp?
Original issue's description:
> move remaining virtual draw methods to onDraw
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/2e0f7d53bba5438c9bf11ee5ccae2c301e348419
TBR=robertphillips@google.com,djsollen@google.com,bsalomon@google.com,mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/835913002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/817723005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/830083002
|
|
|
|
|
|
|
|
| |
intersect doesn't change the bounds when the two bounds do not intersect. This is definitely not the intended behavior.
With the SKPs captured on 12/23/14, Chrome began passing Skia drawPicture ops that did not intersect the current clip - which revealed this bug.
Review URL: https://codereview.chromium.org/817483004
|
|
|
|
|
|
|
|
|
|
| |
This basically recreates what was done in:
https://codereview.chromium.org/16950021/ (add rect-output parameter to isRect, allowing us to return the correct bounds even if a rectagular path has a trailing moveTo) with the addition of GM representation
BUG=skia:247770
Review URL: https://codereview.chromium.org/834503002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Oddly enough this was fixed in:
https://codereview.chromium.org/16950021/ (add rect-output parameter to isRect, allowing us to return the correct bounds even if a rectagular path has a trailing moveTo)
but was reverted here:
https://skia.googlesource.com/skia/+/8fd160350ca5f57fbb1b2e03383c5778414a9b48
since it appeared to be crashing Chrome's trybots. I think it just fell through the cracks after that.
If this sticks I will land a follow on patch for the stroke issue reported in the original bug (crbug.com/247770).
BUG=247770,445368
Review URL: https://codereview.chromium.org/834483002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/816003002
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/791473006
|
|
|
|
|
|
| |
BUG=skia:3272
Review URL: https://codereview.chromium.org/806853005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/819123003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/791823003
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=robertphilips@google.com
Review URL: https://codereview.chromium.org/807083003
|
|
|
|
|
|
|
|
| |
Let's land this and then leave for 2 weeks.
BUG=skia:3119
Review URL: https://codereview.chromium.org/817033002
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/820903002
|
|
|
|
|
|
| |
This isn't definitive but at least makes something show up in the debugger.
Review URL: https://codereview.chromium.org/789163006
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/815223002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/788143007
|
|
|
|
|
|
|
|
|
|
|
| |
I found no external mentions of SkRRect::kUnknown_Type.
Motivating race found by TSAN:
http://build.chromium.org/p/client.skia/builders/Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot/builds/48/steps/dm/logs/stdio
BUG=skia:
Review URL: https://codereview.chromium.org/801693003
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/812063002
|
|
|
|
|
|
|
|
|
|
| |
Nobody that is including SkFontHost is using SkFontHost API, so lets
remove this includes, since the API per se is deprecated.
BUG=None
R=reed@google.com
Review URL: https://codereview.chromium.org/803733006
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/808703006
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/792493005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/455043002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL fixes 5 bugs related to hoisting image filters:
For image filters the src layer (the one prior to filtering) often needs to be
smaller then the final layer. This requires the saveLayer's optional bounds
to be stored (in SkLayerInfo.h and SkRecordDraw.cpp) and then used in
compute_source_rect and carried around in GrCachedLayer.
The image filters can add an extra offset to the final draw operation.
This is now computed in GrLayerHoister::FilterLayer and carried around in
GrCachedLayer.
Filtered layers must use exact matches. This is now done in GrLayerCache::lock.
The filter cache requires a valid matrix so it can compute the correct offset.
This is now done in GrLayerHoister::FilterLayer.
Filtered layers need to be drawn with drawSprite while unfiltered (and therefore
hopefully atlased) layers can be drawn with drawBitmap. This is now done in
draw_replacement_bitmap.
Committed: https://skia.googlesource.com/skia/+/702eb9622102599d94ab6798e6227cf29f48c2d3
Review URL: https://codereview.chromium.org/803183003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of https://codereview.chromium.org/803183003/)
Reason for revert:
Breaking DM
Original issue's description:
> Fix layer hoisting image filter corner cases
>
> This CL fixes 5 bugs related to hoisting image filters:
>
> For image filters the src layer (the one prior to filtering) often needs to be
> smaller then the final layer. This requires the saveLayer's optional bounds
> to be stored (in SkLayerInfo.h and SkRecordDraw.cpp) and then used in
> compute_source_rect and carried around in GrCachedLayer.
>
> The image filters can add an extra offset to the final draw operation.
> This is now computed in GrLayerHoister::FilterLayer and carried around in
> GrCachedLayer.
>
> Filtered layers must use exact matches. This is now done in GrLayerCache::lock.
>
> The filter cache requires a valid matrix so it can compute the correct offset.
> This is now done in GrLayerHoister::FilterLayer.
>
> Filtered layers need to be drawn with drawSprite while unfiltered (and therefore
> hopefully atlased) layers can be drawn with drawBitmap. This is now done in
> draw_replacement_bitmap.
>
> Committed: https://skia.googlesource.com/skia/+/702eb9622102599d94ab6798e6227cf29f48c2d3
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/790643009
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL fixes 5 bugs related to hoisting image filters:
For image filters the src layer (the one prior to filtering) often needs to be
smaller then the final layer. This requires the saveLayer's optional bounds
to be stored (in SkLayerInfo.h and SkRecordDraw.cpp) and then used in
compute_source_rect and carried around in GrCachedLayer.
The image filters can add an extra offset to the final draw operation.
This is now computed in GrLayerHoister::FilterLayer and carried around in
GrCachedLayer.
Filtered layers must use exact matches. This is now done in GrLayerCache::lock.
The filter cache requires a valid matrix so it can compute the correct offset.
This is now done in GrLayerHoister::FilterLayer.
Filtered layers need to be drawn with drawSprite while unfiltered (and therefore
hopefully atlased) layers can be drawn with drawBitmap. This is now done in
draw_replacement_bitmap.
Review URL: https://codereview.chromium.org/803183003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(patchset #1 id:1 of https://codereview.chromium.org/805983003/)
Reason for revert:
Test-Win7-ShuttleA-HD2000-x86-Debug-GDI
Original issue's description:
> Use SkPaint::getFontBounds() for text bounding boxes in pictures.
>
> Now that SkTextBlobs have landed, this is a perf no-op, but it at least lets us eliminate a bunch of questionable hacks.
>
> CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot,Test-Mac10.8-MacMini4.1-GeForce320M-x86_64-Debug-Trybot
>
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/02d2b9831579173e783569530ab7bae08de907e9
TBR=reed@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/789793004
|
|
|
|
|
|
|
|
|
|
| |
Now that SkTextBlobs have landed, this is a perf no-op, but it at least lets us eliminate a bunch of questionable hacks.
CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot,Test-Mac10.8-MacMini4.1-GeForce320M-x86_64-Debug-Trybot
BUG=skia:
Review URL: https://codereview.chromium.org/805983003
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/797963002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/804903006
|
|
|
|
|
|
|
|
|
|
| |
radius to a bounds coordinate.
add test that triggers assert in addRRect
BUG=skia:3239
Review URL: https://codereview.chromium.org/803153003
|
|
|
|
|
|
| |
BUG=3245
Review URL: https://codereview.chromium.org/803913005
|
|
|
|
|
|
|
|
|
|
| |
This was done automatically by running clang-modernize -add-override -override-macros.
It's not clear to me whether include/ is already clean or I just can't get the tool to work for headers.
BUG=skia:
Review URL: https://codereview.chromium.org/808463002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/801383002
|
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/806543002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/801003003
|
|
|
|
|
|
|
| |
Move code from the GPU path utilities into geometry so that
path ops can share.
Review URL: https://codereview.chromium.org/787763007
|
|
|
|
| |
Review URL: https://codereview.chromium.org/798723002
|
|
|
|
|
|
|
|
| |
These calls are unused and going away. Waiting on crrev.com/796083002.
BUG=skia:
Review URL: https://codereview.chromium.org/794263002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we added the 64K allocation cap, the bots showed we took a perf hit
on some large .skps like desk_pokemonwiki.skp, despite not seeing a local
effect. I'm still not seeing that locally, but I'd like to try removing the cap on
the bots to see what happens. For big monolithic pictures, really packing into
memory tightly is probably not as important as it is for tiny ones.
Similarly, we're probably being too cautious about making tiny allocations.
Today we start at 16 bytes, which isn't really enough to record anything.
Even the smallest picture, say,
save
clipRect
drawRect
restore
requires ~200 bytes, so we might as well move our minimum block size up
near there.
I don't know if 16 bytes is too small to start for GrTextStrikes, so I've left the
behavior the same (though the max is still gone).
Local recording performance is neutral-to-positive:
tabl_deviantart.skp 126us -> 129us 1.02x
tabl_nytimes.skp 110us -> 112us 1.02x
tabl_cuteoverload.skp 521us -> 530us 1.02x
desk_mobilenews.skp 673us -> 682us 1.01x
desk_chalkboard.skp 843us -> 854us 1.01x
desk_sfgate.skp 528us -> 535us 1.01x
desk_silkfinance.skp 68.2us -> 69us 1.01x
desk_youtube.skp 623us -> 629us 1.01x
desk_blogger.skp 472us -> 475us 1.01x
desk_jsfiddlehumperclip.skp 42.2us -> 42.5us 1.01x
desk_espn.skp 255us -> 256us 1.01x
desk_ebay.skp 174us -> 174us 1x
desk_twitter.skp 454us -> 455us 1x
tabl_pravda.skp 200us -> 201us 1x
desk_wordpress.skp 782us -> 784us 1x
desk_samoasvg.skp 762us -> 761us 1x
tabl_mozilla.skp 1.58ms -> 1.58ms 1x
tabl_slashdot.skp 107us -> 107us 1x
tabl_techmeme.skp 102us -> 102us 0.99x
tabl_gamedeksiam.skp 729us -> 724us 0.99x
tabl_nofolo.skp 65.3us -> 64.7us 0.99x
desk_gmailthread.skp 339us -> 336us 0.99x
tabl_sahadan.skp 91us -> 90us 0.99x
desk_yahooanswers.skp 144us -> 142us 0.99x
tabl_cnet.skp 143us -> 141us 0.99x
tabl_googleblog.skp 206us -> 203us 0.99x
tabl_cnn.skp 160us -> 158us 0.99x
tabl_frantzen.skp 50.5us -> 49.6us 0.98x
desk_linkedin.skp 328us -> 323us 0.98x
tabl_digg.skp 790us -> 769us 0.97x
desk_jsfiddlebigcar.skp 40.6us -> 39.5us 0.97x
desk_mapsvg.skp 1.57ms -> 1.52ms 0.97x
tabl_gmail.skp 19.4us -> 18.6us 0.96x
tabl_hsfi.skp 9.81us -> 9.11us 0.93x
BUG=skia:
Review URL: https://codereview.chromium.org/793033002
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/796803005
|
|
|
|
| |
Review URL: https://codereview.chromium.org/795223002
|