kkinnunen [Wed, 14 Jan 2015 07:09:19 +0000 (23:09 -0800)]
Remove incremental draw optimization from SkDebugCanvas
The SkDebugCanvas can be (or is currently) being used to draw to multiple
different canvases. If this use-case is intended, then storing draw
-related state in the canvas causes bugs.
Remove incremental draw from SkDebugCanvas. It can only optimize the
case where draw command index is advanced, no other changes are done
and no visualization is used. This case is not that critical, as it
happens only once per new frame at most. It causes bugs, because
one SkDebugCanvas is used to draw to multiple canvases.
Leave the draw to canvas in same state as it was passed in.
This fixes the debugger bugs where:
* Old, stale image would stay on the raster canvas when a new image is
loaded. Also happened with resizes.
* Proper image for overdraw filter would be visible only for the first
frame
Review URL: https://codereview.chromium.org/
844493003
kkinnunen [Wed, 14 Jan 2015 06:49:02 +0000 (22:49 -0800)]
debugger: SW rasterize the picture only when it changes
Rasterize the picture only when it changes, not every time
raster widget paints itself.
Removes include SkForceLinking.h while organizing the SkDebuggerGUI.cpp
includes.
This is part of the work trying to remove bugs that come from
SkDebugCanvas stateful draw. Part of the state comes from some
optimization that this tries to reproduce in a different way.
Review URL: https://codereview.chromium.org/
839743003
reed [Wed, 14 Jan 2015 03:43:04 +0000 (19:43 -0800)]
delete the dreaded TransitionView
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
850843002
joshualitt [Wed, 14 Jan 2015 02:54:00 +0000 (18:54 -0800)]
rebase + ignores
NOTRY=True
TBR=
BUG=skia:
Review URL: https://codereview.chromium.org/
841873007
joshualitt [Wed, 14 Jan 2015 01:50:27 +0000 (17:50 -0800)]
rebase of expectations
TBR=
NOTRY=True
BUG=skia:
Review URL: https://codereview.chromium.org/
847313002
joshualitt [Wed, 14 Jan 2015 01:05:03 +0000 (17:05 -0800)]
fix for winvdows nvpr
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
804023005
joshualitt [Tue, 13 Jan 2015 23:02:10 +0000 (15:02 -0800)]
Move most of the transform logic into the primitive processors
BUG=skia:
Review URL: https://codereview.chromium.org/
822423004
reed [Tue, 13 Jan 2015 21:51:00 +0000 (13:51 -0800)]
rename blitrow::proc and add (uncalled) hook for colorproc16
BUG=skia:3302
Review URL: https://codereview.chromium.org/
847443003
mtklein [Tue, 13 Jan 2015 21:27:25 +0000 (13:27 -0800)]
Allow -DGOOGLE3 to bypass our normal platform intrinsic dispatch.
The current code that pound-includes another define doesn't seem to be working there.
BUG=skia:
No API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
820643005
joshualitt [Tue, 13 Jan 2015 21:13:59 +0000 (13:13 -0800)]
fix for FB fetch on nexus 10 ES3.0
BUG=skia:3304
Review URL: https://codereview.chromium.org/
807143006
rmistry [Tue, 13 Jan 2015 19:52:28 +0000 (11:52 -0800)]
Add pageset for ugamsolutions.com
BUG=skia:3306
NOTRY=true
Review URL: https://codereview.chromium.org/
851743004
robertphillips [Tue, 13 Jan 2015 18:54:37 +0000 (10:54 -0800)]
Revert of Switch to a more complete method of filtering hoisted layers (patchset #1 id:1 of https://codereview.chromium.org/
842323003/)
Reason for revert:
nanobench woes
Original issue's description:
> Switch to a more complete method of filtering hoisted layers
>
> Committed: https://skia.googlesource.com/skia/+/
74668a8e818fd891a08c4966cc5973b04c1ad992
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
851773002
mtklein [Tue, 13 Jan 2015 18:51:36 +0000 (10:51 -0800)]
allow simple
BUG=skia:
Review URL: https://codereview.chromium.org/
824753006
robertphillips [Tue, 13 Jan 2015 18:37:55 +0000 (10:37 -0800)]
Switch to a more complete method of filtering hoisted layers
Review URL: https://codereview.chromium.org/
842323003
mtklein [Tue, 13 Jan 2015 16:40:23 +0000 (08:40 -0800)]
namespace {} trick for SK_DECLARE_STATIC_ONCE
Like all our other SK_DECLARE_STATIC_*, it's usually not a thread-safe
thing to put inside a function. Adding namespace {} prevents that
syntactically.
Needs https://codereview.chromium.org/
841263004/ to land first.
BUG=chromium:447890
No public API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
806473006
torne [Tue, 13 Jan 2015 16:37:34 +0000 (08:37 -0800)]
Hide ARM assembly memset symbols.
Prevent these symbols from being exported from any library which
includes skia by marking them .hidden, as they are implementation
details of skia.
BUG=skia:3303
Review URL: https://codereview.chromium.org/
831663004
mtklein [Tue, 13 Jan 2015 16:22:43 +0000 (08:22 -0800)]
Simplify SkInstCnt
This code requires fewer macros to use it (just one), has less code in macro
definitions, and has simpler synchronization code (just atomic ints, no SkOnce,
no SkMutex, etc.)
A minor downside, we lose indentation and reverse-ordering in the final report:
Leaked SkRefCntBase: 7
Leaked SkFontMgr: 1
Leaked SkWeakRefCnt: 1
Leaked SkTypeface: 1
Leaked SkFlattenable: 3
Leaked SkXfermode: 3
Leaked SkPathRef: 1
Leaked SkPixelRef: 1
Leaked SkMallocPixelRef: 1
becomes
Leaked SkXfermode: 3
Leaked SkMallocPixelRef: 1
Leaked SkPixelRef: 1
Leaked SkPathRef: 1
Leaked SkFlattenable: 3
Leaked SkTypeface: 1
Leaked SkWeakRefCnt: 1
Leaked SkFontMgr: 1
Leaked SkRefCntBase: 7
This is motivated by wanting to land https://codereview.chromium.org/
806473006/,
which makes sure all static use of SkOnce are in global scope. The current
implementation of SkInstCnt uses them in function scope, which isn't safe.
BUG=skia:
No public API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
841263004
fmalita [Tue, 13 Jan 2015 16:06:11 +0000 (08:06 -0800)]
Generic PDF shader fallback
Instead of ignoring unsupported shaders (and essentially filling with
solid black), convert them to bitmap shaders using on-the-fly
rasterization.
BUG=skia:3299
R=reed@google.com,halcanary@google.com
Review URL: https://codereview.chromium.org/
841763005
halcanary [Tue, 13 Jan 2015 15:12:57 +0000 (07:12 -0800)]
In SkPDFDocument::emitPDF(), stop pre-calculating file offsets.
* Add Streamer utility class which measures the current
pdf offset by calling SkWStream::bytesWritten(). Calls
SkPDFCatalog::setFileOffset() and SkPDFObject::emit() at
the same time to guarantee that everything works out.
* SkPDFCatalog::setFileOffset() no longer calculates the
object's size.
* SkPDFCatalog::setSubstituteResourcesOffsets() removed.
* SkPDFCatalog::emitSubstituteResources() removed and
getSubstituteList() made public in its place.
* Remove SkPDFPage::getPageSize and SkPDFPage::emitPage.
Replace with SkPDFPage::getContentStream().
* SkPDFObject::getOutputSize no longer virtual, only used in
unit tests. All SkPDFObject subclasses getOutputSize()
overrides removed.
* SkPDFObject::getIndirectOutputSize removed.
* PDFPrimitivesTest updated for new functions.
Review URL: https://codereview.chromium.org/
846023003
skia.buildbots [Tue, 13 Jan 2015 12:26:37 +0000 (04:26 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
819403005
reed [Tue, 13 Jan 2015 12:00:55 +0000 (04:00 -0800)]
remove NewTexture?
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
831323005
robertphillips [Tue, 13 Jan 2015 02:26:01 +0000 (18:26 -0800)]
Revert of Fix GPU clipped-AA vs. non-AA drawRect discrepancy (patchset #2 id:20001 of https://codereview.chromium.org/
839883003/)
Reason for revert:
This CL introduces rendering conflicts with hairlines (i.e., the hairlines get overwritten). These conflicts are particularly visible on the following GMs (for the Ubuntu and Android gpu configs):
coloremoji & complexclip2_rrect_bw
Original issue's description:
> Fix GPU clipped-AA vs. non-AA drawRect discrepancy
>
> In the clip stack we were manually rounding out non-AA clip rects but leaving the hardening of non-AA drawRects up to the GPU. In some border cases the GPU can truncate rather than round out resulting in visual discrepancies.
>
> BUG=423834
>
> Committed: https://skia.googlesource.com/skia/+/
933a03fecb65c83f81cf65d5cf9870c69aa379ff
TBR=bsalomon@google.com,jvanverth@google.com
NOTREECHECKS=true
NOTRY=true
BUG=423834
Review URL: https://codereview.chromium.org/
847033002
robertphillips [Mon, 12 Jan 2015 23:50:38 +0000 (15:50 -0800)]
Fix GPU clipped-AA vs. non-AA drawRect discrepancy
In the clip stack we were manually rounding out non-AA clip rects but leaving the hardening of non-AA drawRects up to the GPU. In some border cases the GPU can truncate rather than round out resulting in visual discrepancies.
BUG=423834
Review URL: https://codereview.chromium.org/
839883003
halcanary [Mon, 12 Jan 2015 23:27:46 +0000 (15:27 -0800)]
SIMPLE_GM generates less code
Review URL: https://codereview.chromium.org/
811703005
halcanary [Mon, 12 Jan 2015 18:07:50 +0000 (10:07 -0800)]
Change function signature of SkPDFObject::emitObject.
Replace virutal SkPDFObject::emitObject(s, c, true) with non-virtual
SkPDFObject::emitIndirectObject(s, c), since none of the subclasses do
(or should do) anything different.
Replace object->emitObject(s, c, false) with object->emitObject(s, c)
This is one step in simplifying the SkPDFObject interface to allow for
the next step in refactoring.
Review URL: https://codereview.chromium.org/
827733004
qiankun.miao [Mon, 12 Jan 2015 15:50:25 +0000 (07:50 -0800)]
Fix overlap test for 64-bit pointers in SkMatrix
BUG=skia:3297
Review URL: https://codereview.chromium.org/
803493008
fmalita [Mon, 12 Jan 2015 14:20:39 +0000 (06:20 -0800)]
Remove SK_SUPPORT_LEGACY_GRADIENT_PRECISION
No longer used by Chromium.
BUG=447870
R=reed@google.com
Review URL: https://codereview.chromium.org/
824063004
skia.buildbots [Mon, 12 Jan 2015 06:29:47 +0000 (22:29 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
846843002
skia.buildbots [Sun, 11 Jan 2015 06:58:16 +0000 (22:58 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
828243004
reed [Sun, 11 Jan 2015 01:59:31 +0000 (17:59 -0800)]
add stroke params to c api
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
848553002
halcanary [Sat, 10 Jan 2015 19:18:04 +0000 (11:18 -0800)]
add --rasterPDF flag to DM
If no rasterizer is compiled in, this flag does nothing. Default
value (true) gives the same behavior as before.
Review URL: https://codereview.chromium.org/
830333005
skia.buildbots [Sat, 10 Jan 2015 07:07:53 +0000 (23:07 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
845093003
reed [Fri, 9 Jan 2015 22:17:40 +0000 (14:17 -0800)]
remove (dead) SK_SUPPORT_LEGACY_DRAWDATA and SK_SUPPORT_LEGACY_CANVAS_VIRTUAL
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
844053002
jcgregorio [Fri, 9 Jan 2015 18:35:52 +0000 (10:35 -0800)]
Document some skia perf interesting queries.
Preview here: http://skiadocs.com:8000/dev/tools/skiaperf?cl=
839303002
BUG=skia:
Review URL: https://codereview.chromium.org/
839303002
mtklein [Fri, 9 Jan 2015 18:06:39 +0000 (10:06 -0800)]
Fix up all the easy virtual ... SK_OVERRIDE cases.
This fixes every case where virtual and SK_OVERRIDE were on the same line,
which should be the bulk of cases. We'll have to manually clean up the rest
over time unless I level up in regexes.
for f in (find . -type f); perl -p -i -e 's/virtual (.*)SK_OVERRIDE/\1SK_OVERRIDE/g' $f; end
BUG=skia:
Review URL: https://codereview.chromium.org/
806653007
Mike Klein [Fri, 9 Jan 2015 17:29:08 +0000 (12:29 -0500)]
Can't include SkTypes.h from ports/
BUG=skia:
Review URL: https://codereview.chromium.org/
847533002
mtklein [Fri, 9 Jan 2015 17:02:44 +0000 (09:02 -0800)]
Use error-checking mutexes in Debug builds.
Upside: our deadlock detection is now thread-safe.
Downside: static mutexes on Macs won't have deadlock detection until we drop 10.6.
BUG=skia:3294
Review URL: https://codereview.chromium.org/
816833005
reed [Fri, 9 Jan 2015 16:36:42 +0000 (08:36 -0800)]
rebaseline after conic change
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
840333002
mtklein [Fri, 9 Jan 2015 16:33:36 +0000 (08:33 -0800)]
PictureNestingBench: stay in ints.
BUG=skia:
Review URL: https://codereview.chromium.org/
784173004
djsollen [Fri, 9 Jan 2015 16:18:13 +0000 (08:18 -0800)]
Upstream custom freetype embolding strength from Android
BUG=skia:2377
Review URL: https://codereview.chromium.org/
839243002
mtklein [Fri, 9 Jan 2015 14:41:48 +0000 (06:41 -0800)]
Remove SkTileGrid (except for TileGridInfo).
TBR=reed@google.com
BUG=skia:3085
Review URL: https://codereview.chromium.org/
845623002
reed [Fri, 9 Jan 2015 14:36:49 +0000 (06:36 -0800)]
rebaseline NexusPlayer after conic fix
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
843063003
reed [Fri, 9 Jan 2015 14:09:32 +0000 (06:09 -0800)]
remove unneeded flags
BUG=skia:
Review URL: https://codereview.chromium.org/
842203002
skia.buildbots [Fri, 9 Jan 2015 07:13:52 +0000 (23:13 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
843933002
jcgregorio [Thu, 8 Jan 2015 21:42:13 +0000 (13:42 -0800)]
Add a favicon for docs.
BUG=skia:
Review URL: https://codereview.chromium.org/
845593002
halcanary [Thu, 8 Jan 2015 20:36:30 +0000 (12:36 -0800)]
rebaseline after crrev.com/
840653002
NOTRY=true
TBR=
Review URL: https://codereview.chromium.org/
838183003
halcanary [Thu, 8 Jan 2015 20:11:42 +0000 (12:11 -0800)]
Modify transparency_check GM to always tile correctly.
Review URL: https://codereview.chromium.org/
842013002
jcgregorio [Thu, 8 Jan 2015 19:28:51 +0000 (11:28 -0800)]
Add Linux quick start docs
Preview: http://skiadocs.com:8000/user/quick/linux?cl=
846523002
BUG=skia:
Review URL: https://codereview.chromium.org/
846523002
reed [Thu, 8 Jan 2015 19:08:36 +0000 (11:08 -0800)]
rebaseline after change to GM:c_gms
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
843843002
halcanary [Thu, 8 Jan 2015 19:05:35 +0000 (11:05 -0800)]
SkPDFImage no longer caches a unpremul version of N32 bitmaps.
This reduces PDF memory overhead by 30% over all GMs.
This reduces PDF memory overhead by 41% over all SKPs in
chromium-skia-gm/playback_${SKP_VERSION}/skps.
BUG=skia:3030
Review URL: https://codereview.chromium.org/
840653002
hcm [Thu, 8 Jan 2015 18:43:34 +0000 (10:43 -0800)]
Adding user doc section and core files for new site
- Updated QSGs with relative links to download page, removed outdated and googler-only iOS instructions.
- Will add "contributing" page and update project roles link in next batch with developer section
link: http://skiadocs.com:8000/user/quick/android?cl=834353003
BUG=skia:
Review URL: https://codereview.chromium.org/
834353003
reed [Thu, 8 Jan 2015 18:20:05 +0000 (10:20 -0800)]
remove flags that are now in chrome's SkUserConfig.h
to land after https://codereview.chromium.org/
844783002/
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
843683007
robertphillips [Thu, 8 Jan 2015 18:15:25 +0000 (10:15 -0800)]
Allow non-atlasable layer to still be hoisted
The PlausiblyAtlasable check was preventing large layers from ever being hoisted in the FindLayersToHoist path.
Review URL: https://codereview.chromium.org/
844613002
bungeman [Thu, 8 Jan 2015 16:33:44 +0000 (08:33 -0800)]
Work around changes in OSX 10.10.
In 10.10.1 CTFontGetAdvancesForGlyphs applies the font
transform to the width of the advance but always sets the
height of the advance to 0. Work around this by measuring the
advance with an unrotated font and apply the transform
manually.
In 10.7 through 10.9 CTFontDrawGlyphs appears to take
'positions' in text space and acts like
CGContextShowGlyphsAtPosition. In 10.10.1, these 'positions' now appear to be in glyph space, and
CTFontDrawGlyphs maps the glyph positions internally.
BUG=chromium:442574
Review URL: https://codereview.chromium.org/
841843002
reed [Thu, 8 Jan 2015 16:02:49 +0000 (08:02 -0800)]
rebaseline after changing GM
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
843553003
skia.buildbots [Thu, 8 Jan 2015 07:10:13 +0000 (23:10 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
827323003
qiankun.miao [Thu, 8 Jan 2015 03:20:49 +0000 (19:20 -0800)]
Revert of Cache blur mask for rects which can not break into nine-patch (patchset #10 id:200001 of https://codereview.chromium.org/
729463002/)
Reason for revert:
revert it due to a memory leak.
==8017==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 25992 byte(s) in 2 object(s) allocated from:
#0 0x7feb53030e0b in __interceptor_malloc
(/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/gm+0x24fe0b)
#1 0x7feb54d54f76 in sk_malloc_flags(unsigned long, unsigned int)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/ports/SkMemory_malloc.cpp:54:15
#2 0x7feb54d54d4a in sk_malloc_throw(unsigned long)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/ports/SkMemory_malloc.cpp:40:12
#3 0x7feb539f5a77 in SkMask::AllocImage(unsigned long)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkMask.cpp:37:22
#4 0x7feb53fe5c34 in (anonymous
namespace)::copy_cacheddata_to_mask(SkCachedData*, SkMask*)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkMaskCache.cpp:25:20
#5 0x7feb53fea064 in SkMaskCache::FindAndCopy(float, SkBlurStyle,
SkBlurQuality, SkRect const*, int, SkMask*)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkMaskCache.cpp:224:26
#6 0x7feb539f957e in SkMaskFilter::filterPath(SkPath const&, SkMatrix
const&, SkRasterClip const&, SkBlitter*, SkPaint::Style) const
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkMaskFilter.cpp:270:14
#7 0x7feb5392e920 in SkDraw::drawPath(SkPath const&, SkPaint const&,
SkMatrix const*, bool, bool, SkBlitter*) const
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkDraw.cpp:1117:13
#8 0x7feb53694afc in SkDraw::drawPath(SkPath const&, SkPaint const&,
SkMatrix const*, bool) const
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../include/core/SkDraw.h:54:9
#9 0x7feb5368d799 in SkBitmapDevice::drawPath(SkDraw const&, SkPath const&,
SkPaint const&, SkMatrix const*, bool)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkBitmapDevice.cpp:216:5
#10 0x7feb5386aa57 in SkCanvas::onDrawPath(SkPath const&, SkPaint const&)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkCanvas.cpp:1908:9
#11 0x7feb5386386b in SkCanvas::drawPath(SkPath const&, SkPaint const&)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../src/core/SkCanvas.cpp:1703:5
#12 0x7feb53109572 in Blur2RectsNonNinePatchGM::onDraw(SkCanvas*)
/home/default/storage/skia-repo/buildbot/skiabot-linux-xsan-000/build/slave/Test-Ubuntu13_10-GCE-NoGPU-x86_64-Debug-ASAN/build/skia/out/Debug/../../gm/blurs.cpp:166:9
Original issue's description:
> Cache blur mask for rects which can not break into nine-patch
>
> With this CL performance improves:
> blurrectsnonninepatch 42.4us -> 20.5us 0.48x
>
> BUG=431021,skia:3118
>
> Committed: https://skia.googlesource.com/skia/+/
5a5b4e900ee69540fc35952882a323c63d6d0db9
TBR=reed@google.com,humper@google.com,reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=431021,skia:3118
Review URL: https://codereview.chromium.org/
844673002
qiankun.miao [Thu, 8 Jan 2015 02:37:47 +0000 (18:37 -0800)]
Cache blur mask for rects which can not break into nine-patch
With this CL performance improves:
blurrectsnonninepatch 42.4us -> 20.5us 0.48x
BUG=431021,skia:3118
Review URL: https://codereview.chromium.org/
729463002
reed [Thu, 8 Jan 2015 02:20:16 +0000 (18:20 -0800)]
need to rebaseline (changed) c_gms, update dox
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
844663002
reed [Thu, 8 Jan 2015 02:04:45 +0000 (18:04 -0800)]
add ImageGenerator::NewFromData to porting layer
BUG=skia:3275
Review URL: https://codereview.chromium.org/
834633006
sugoi [Wed, 7 Jan 2015 21:28:08 +0000 (13:28 -0800)]
Adding check on input count
An integer overflow is causing a memory allocation to succeed while it should fail for being too large.
BUG=445810
Review URL: https://codereview.chromium.org/
831583004
halcanary [Wed, 7 Jan 2015 21:23:09 +0000 (13:23 -0800)]
Add Alpha fade GM.
Review URL: https://codereview.chromium.org/
804813009
robertphillips [Wed, 7 Jan 2015 20:16:10 +0000 (12:16 -0800)]
It is dangerous to ignore SkRect::intersect's return value
Committed: https://skia.googlesource.com/skia/+/
152f524fd325b7776b01f84afbfe2fa071648a05
Review URL: https://codereview.chromium.org/
833943002
jvanverth [Wed, 7 Jan 2015 18:12:16 +0000 (10:12 -0800)]
Remove distance field generation and storage from SkGlyphCache.
BUG=skia:3103
Review URL: https://codereview.chromium.org/
834103004
robertphillips [Wed, 7 Jan 2015 17:12:43 +0000 (09:12 -0800)]
Revert of It is dangerous to ignore SkRect::intersect's return value (patchset #6 id:100001 of https://codereview.chromium.org/
833943002/)
Reason for revert:
Still more Chromium clean up to do
Original issue's description:
> It is dangerous to ignore SkRect::intersect's return value
>
> Committed: https://skia.googlesource.com/skia/+/
152f524fd325b7776b01f84afbfe2fa071648a05
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
825983005
mtklein [Wed, 7 Jan 2015 17:06:08 +0000 (09:06 -0800)]
Remove macros that make it look like it's a good idea to not be able to flatten.
There are only a handful of SkFlattenables that are not flattenable. That
there are any seems highly illogical. To make this look less like a normal
thing, this removes both macros that marked SkFlattenables as non-flattenable
(in slightly different ways).
The handful of SkFlattenables in our codebase that can't be flattened now
assert violently that they can't be flattened. They're internal or
part of animator... places where we'll never actually flatten them.
TestLooper and DummyRasterizer were so trivial that I just made them flattenable.
BUG=skia:
Review URL: https://codereview.chromium.org/
841753002
robertphillips [Wed, 7 Jan 2015 17:01:12 +0000 (09:01 -0800)]
It is dangerous to ignore SkRect::intersect's return value
Review URL: https://codereview.chromium.org/
833943002
sugoi [Wed, 7 Jan 2015 16:47:44 +0000 (08:47 -0800)]
Verify size_t overflow
In 32 bits, it's possible that multiplying 2 32b values might overflow a size_t, which could be 32b unsigned in that context, so I added a check for size_t overflow.
BUG=445831
Review URL: https://codereview.chromium.org/
836733005
mtklein [Wed, 7 Jan 2015 16:02:28 +0000 (08:02 -0800)]
Make DCShader serializable.
This allows a test pipeline like dcshader GM -> pipe -> gpu backend.
BUG=skia:
Review URL: https://codereview.chromium.org/
816403007
caryclark [Wed, 7 Jan 2015 15:36:52 +0000 (07:36 -0800)]
revert buildbot breaker
Hals's change broke a buildbot has shown here
http://build.chromium.org/p/client.skia/builders/Test-Win7-ShuttleA-HD2000-x86-Release/builds/510/steps/gm/logs/stdio
Got unknown flag "--useDocumentInsteadOfDevice". Exiting.
TBR=halcanary
Review URL: https://codereview.chromium.org/
832183006
kkinnunen [Wed, 7 Jan 2015 15:33:46 +0000 (07:33 -0800)]
debugger: Update inspector view data consistently while paused
Make all fields of inspector view (details tab, clipstack tab, geometry
view) update the correct info when user selects a draw command. Also
update the info regardless if the painting is paused or not.
Current clip and matrix will not update consistently even after this
patch, as they depend on stateful debug canvas draw (may be fixed
later).
Review URL: https://codereview.chromium.org/
835903002
skia.buildbots [Wed, 7 Jan 2015 15:31:47 +0000 (07:31 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
843493002
robertphillips [Wed, 7 Jan 2015 15:28:41 +0000 (07:28 -0800)]
Rename SkDrawPictureCallback to SkPicture::AbortCallback
Committed: https://skia.googlesource.com/skia/+/
7ef197255deb4e2fa64c03c7130d56ddf164e83c
Review URL: https://codereview.chromium.org/
829983003
egdaniel [Wed, 7 Jan 2015 15:26:39 +0000 (07:26 -0800)]
Rebasing more conic stuff
TBR=
NOTRY=True
NOTREECHECKS=True
BUG=skia:
Review URL: https://codereview.chromium.org/
837913002
reed [Wed, 7 Jan 2015 15:04:09 +0000 (07:04 -0800)]
rebaseline after use-conics
BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/
800193004
egdaniel [Wed, 7 Jan 2015 14:51:02 +0000 (06:51 -0800)]
More rebases from conic change
TBR=
NOTRY=True
NOTREECHECKS=True
BUG=skia:
Review URL: https://codereview.chromium.org/
841693003
reed [Wed, 7 Jan 2015 14:08:50 +0000 (06:08 -0800)]
rebaseline after use-conics
BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/
841703002
reed [Wed, 7 Jan 2015 00:26:16 +0000 (16:26 -0800)]
use conics for ovals and roundrects
This reverts commit
e3b61eb7997d12c5f9b844dd3af1847492d9f411.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
834303002
reed [Wed, 7 Jan 2015 00:15:25 +0000 (16:15 -0800)]
Revert of Rename SkDrawPictureCallback to SkPicture::AbortCallback (patchset #2 id:20001 of https://codereview.chromium.org/
829983003/)
Reason for revert:
speculative revert to unblock DEPS roll
Original issue's description:
> Rename SkDrawPictureCallback to SkPicture::AbortCallback
>
> Committed: https://skia.googlesource.com/skia/+/
7ef197255deb4e2fa64c03c7130d56ddf164e83c
TBR=reed@google.com,robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
824013004
halcanary [Tue, 6 Jan 2015 23:13:49 +0000 (15:13 -0800)]
Remove SkPDFDocument and SkPDFDevice from the public headers.
Committed: https://skia.googlesource.com/skia/+/
8b1f761365df6652ea9304b6572d2dd91917b9aa
Review URL: https://codereview.chromium.org/
841533002
tomhudson [Tue, 6 Jan 2015 20:59:05 +0000 (12:59 -0800)]
Comment out unused names in src/core/SkGlyphCache.h
Android violates our encapsulation and depends on this file;
to keep their compiles clean they want us to hide the names
of unused parameters.
Follow-up to https://codereview.chromium.org/
726923002/.
R=djsollen@google.com
Review URL: https://codereview.chromium.org/
839583005
robertphillips [Tue, 6 Jan 2015 20:26:08 +0000 (12:26 -0800)]
Rename SkDrawPictureCallback to SkPicture::AbortCallback
Review URL: https://codereview.chromium.org/
829983003
reed [Tue, 6 Jan 2015 19:30:45 +0000 (11:30 -0800)]
will write a custom one for blink later
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
810603003
reed [Tue, 6 Jan 2015 17:55:33 +0000 (09:55 -0800)]
rebaseline after conic fixes
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/
831993004
reed [Tue, 6 Jan 2015 17:54:13 +0000 (09:54 -0800)]
Revert "Remove SkPDFDocument and SkPDFDevice from the public headers."
This reverts commit
8b1f761365df6652ea9304b6572d2dd91917b9aa.
BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/
839603002
halcanary [Tue, 6 Jan 2015 17:30:10 +0000 (09:30 -0800)]
Remove SkPDFDocument and SkPDFDevice from the public headers.
Review URL: https://codereview.chromium.org/
841533002
robertphillips [Tue, 6 Jan 2015 17:17:02 +0000 (09:17 -0800)]
Require explicit disabling of cross process pictureimagefilters
This is to allow capturing .skp files with their pictureimagefilters intact.
This is a companion to https://codereview.chromium.org/
810933004/ (Provide a way of allowing cross process pictureimagefilters).
Review URL: https://codereview.chromium.org/
834673006
reed [Tue, 6 Jan 2015 15:44:21 +0000 (07:44 -0800)]
fixes for conics
- use std tolerance in edgebuilder, since the path has not been scaled-up to its super-sample size (that happens in the builder methods.
- off-by-1 fix for pathops when using the output of the conicquadder
BUG=skia:
Review URL: https://codereview.chromium.org/
837023002
reed [Tue, 6 Jan 2015 15:39:55 +0000 (07:39 -0800)]
add --listfailingbase option
BUG=skia:
Review URL: https://codereview.chromium.org/
833223002
skia.buildbots [Tue, 6 Jan 2015 15:19:59 +0000 (07:19 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
840533002
reed [Tue, 6 Jan 2015 15:17:49 +0000 (07:17 -0800)]
Revert of use conics for ovals and roundrects (patchset #1 id:1 of 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
reed [Tue, 6 Jan 2015 15:13:19 +0000 (07:13 -0800)]
improve sanity checks on gradient constructor parameters
BUG=445807
Review URL: https://codereview.chromium.org/
837013002
reed [Tue, 6 Jan 2015 15:12:42 +0000 (07:12 -0800)]
Revert of add missed tests for conics (patchset #1 id:1 of https://codereview.chromium.org/
835993004/)
Reason for revert:
need to fix edgebuilder+aa
Original issue's description:
> add missed tests for conics
>
> BUG=skia:
> TBR=
> NOTRY=True
> NOTREECHECKS=True
>
> Committed: https://skia.googlesource.com/skia/+/
6b0f701687edcdfc4fc996aed085054912866aff
TBR=reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
797403003
reed [Tue, 6 Jan 2015 05:01:40 +0000 (21:01 -0800)]
add missed tests for conics
BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/
835993004
reed [Tue, 6 Jan 2015 04:15:28 +0000 (20:15 -0800)]
use conics for ovals and roundrects
adapted from https://codereview.chromium.org/
831313002/
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
817283005
tfarina [Tue, 6 Jan 2015 01:18:51 +0000 (17:18 -0800)]
Cleanup: More override fixes - another round.
BUG=skia:3075
TEST=ninja -C out/Debug
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
831113002
fmalita [Tue, 6 Jan 2015 00:10:37 +0000 (16:10 -0800)]
Rebaseline thinstrokedrects GM
BUG=skia:3278
TBR=caryclark@google.com
NOTRY=true
Review URL: https://codereview.chromium.org/
836023002
kkinnunen [Mon, 5 Jan 2015 20:58:56 +0000 (12:58 -0800)]
Remove draw window size state from SkDebugCanvas
The SkDebugCanvas can be (or is currently) being used to draw to multiple
different canvases. If this use-case is intended, then storing draw
-related state in the canvas causes bugs.
Remove draw window size state form SkDebugCanvas. Instead, use the canvas
base layer size as the window size to clip to. This is consistent with
the current use in debugger.
This is part of work trying to remove bugs in debugger that result from
replaying one SkDrawCanvas to two different canvases. Currently the
SkDrawCanvas stores state that can only be valid if it is used for one
canvas.
Review URL: https://codereview.chromium.org/
835113002
egdaniel [Mon, 5 Jan 2015 20:55:46 +0000 (12:55 -0800)]
Rebase perspective gpu gm's after conic change
TBR=
BUG=skia:
Review URL: https://codereview.chromium.org/
831333002
robertphillips [Mon, 5 Jan 2015 20:29:15 +0000 (12:29 -0800)]
Cap id size returned by GrScratchKey::GenerateResourceType
kkinnunen@ has been seeing compiler warnings on GrScratchKey::GenerateResourceType (https://codereview.chromium.org/
833913002/ - Cast the scratch resource key in order to fix a warning)(presumably due to the unsigned/signed comparison in kInvalidResourceType == type). This CL limits the returned id to its effective range to, hopefully, clarify the whole int32_t -> uint32_t conversion & wrapping problem.
Review URL: https://codereview.chromium.org/
827923006