Commit Graph

7929 Commits

Author SHA1 Message Date
halcanary
f0de423f09 for X in {Dec,BigDec,Scalar}, SkWStream::write"X"AsText no longer mallocs
Review URL: https://codereview.chromium.org/706063002
2014-11-07 06:07:23 -08:00
cdalton
38e13adc18 Remove 1d glyph positions from nvpr text
Removes the case for x-only glyph positions from nvpr text, opting to
always send 2d glyph positions instead. The 1d glyph positions saved a
bit on memory bandwidth, but ended up a net loss because they required
more updates to the view matrix. Now we can draw an entire paragraph
without touching the GL state, whereas before we would have to update
the view matrix at every new line.

BUG=skia:

Review URL: https://codereview.chromium.org/700283002
2014-11-07 06:02:15 -08:00
jvanverth
aa30ab3079 Revert of Get gpudft support working in dm, gm, nanobench and bench_pictures (patchset #2 id:20001 of https://codereview.chromium.org/699453005/)
Reason for revert:
Not compiling in ANGLE build

Original issue's description:
> Get gpudft support working in dm, gm, nanobench and bench_pictures
>
> Adds a new config to test distance field text.
> Clean up some flags and #defines to read "distance field text",
> not "distance field fonts" to be consistent with Chromium
>
> NOTREECHECKS=true
>
> Committed: https://skia.googlesource.com/skia/+/06ba179838ba4fe187cf290750aeeb4a02a2960b

TBR=bsalomon@google.com,mtklein@google.com,reed@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/707723005
2014-11-06 13:52:45 -08:00
jvanverth
06ba179838 Get gpudft support working in dm, gm, nanobench and bench_pictures
Adds a new config to test distance field text.
Clean up some flags and #defines to read "distance field text",
not "distance field fonts" to be consistent with Chromium

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/699453005
2014-11-06 13:38:52 -08:00
joshualitt
2c93efeb6f Clip in grdrawtarget
NOTREECHECKS=true
BUG=skia:

Review URL: https://codereview.chromium.org/685883003
2014-11-06 12:57:13 -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
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
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
225fb98e1e Avoid dec = -dec overflow when appending most negative signed integers.
BUG=skia:3096

Review URL: https://codereview.chromium.org/700953003
2014-11-05 11:35:21 -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
egdaniel
a3d3065eea Revert of Bisect Mac performance regression. (patchset #6 id:100001 of https://codereview.chromium.org/693213002/)
Reason for revert:
Block deps roll by breaking webkit test hit-test-counts on mac.

Original issue's description:
> With https://chromium.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20 blink_perf.layout regressed. It appears that the typeface cache is being missed. This is a partial revert of the Skia change which reverts the smallest amount of code to restore performance.
>
> BUG=chromium:425566
>
> Committed: https://skia.googlesource.com/skia/+/47eda52e8fb88f0725b401762a3e0bddc98e9fb3

TBR=reed@google.com,bungeman@google.com
NOTREECHECKS=true
NOTRY=true
BUG=chromium:425566

Review URL: https://codereview.chromium.org/683753003
2014-11-05 07:40:07 -08:00
bsalomon
63b2196286 Workaround for PowerVR clear issue.
BUG=skia:

Review URL: https://codereview.chromium.org/701573002
2014-11-05 07:05:34 -08:00
egdaniel
21402e3851 Bug fix for cull_line in SkDashPathEffect.
In cull_line we must also check if both points are the same. Otherwise we
fail the assert in the else "SkASSERT(dy && !dx)".

This is currently blocking the roll as it fails a webkit test.

BUG=skia:

Review URL: https://codereview.chromium.org/703783002
2014-11-05 05:02:27 -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
jvanverth
0e66aaa503 DFText: fix placement of glyphs when we fall back to paths
Rendering a glyph with a path wants to place it at the (sx, sy) we get
as input to the method, but we add (dx, dy) for the clipRect check.
Hence, we need to subtract that out before we render the path.

Review URL: https://codereview.chromium.org/699283003
2014-11-04 13:32:53 -08:00
reed
7b8646669f update slides
BUG=skia:

Review URL: https://codereview.chromium.org/686853005
2014-11-04 13:24:47 -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
danakj
8f757f540a Add tracing to the SkCanvas drawFoo() methods to find long draw ops.
BUG=skia:3088

Review URL: https://codereview.chromium.org/702473004
2014-11-04 11:48:44 -08:00
reed
36c9c11ed9 add more typeface methods to lua
BUG=skia:
NOTRY=True
TBR=

Review URL: https://codereview.chromium.org/697053004
2014-11-04 10:58:42 -08:00
bungeman
4b86bacb04 Allow all font weights on Android and respect overrides.
This removes the code which forces 400 and 700 weights only,
and also overrides the font weight with the configured weight.

Review URL: https://codereview.chromium.org/694533006
2014-11-04 10:54:32 -08:00
bungeman
47eda52e8f With https://chromium.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20 blink_perf.layout regressed. It appears that the typeface cache is being missed. This is a partial revert of the Skia change which reverts the smallest amount of code to restore performance.
BUG=chromium:425566

Review URL: https://codereview.chromium.org/693213002
2014-11-04 10:27:35 -08:00
scroggo
ccae588932 Include SkTypes so that SK_SUPPORT_GPU is meaningful.
For the Android framework build, we get our defines from
SkUserConfig, rather than from the makefile, so we need to
include it (via SkTypes) before we can use our defines.

Fixes Android framework build.

Review URL: https://codereview.chromium.org/700893002
2014-11-04 08:11:07 -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
joshualitt
d1aa8ff870 removing setVertexArraySource from drawtarget
BUG=skia:

Review URL: https://codereview.chromium.org/699733002
2014-11-04 07:47:55 -08:00
robertphillips
b32f0ad891 Fix layer cache memory leak
The issue was that, with caching disabled, the layer cache code was removing layers outside of a purge (i.e., in unlock) but not correctly cleaning up the GrPictureInfo objects (as is done in purgePlot).

Review URL: https://codereview.chromium.org/703643002
2014-11-04 06:46:11 -08:00
reed
5698f91d60 remove dead SK_DISABLE_DASHING_OPTIMIZATION flag
BUG=skia:

Review URL: https://codereview.chromium.org/698003004
2014-11-04 05:17:39 -08:00
reed
bb8a0ababa update slide content
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/698563004
2014-11-03 22:32:08 -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
mtklein
ecf987559b Turn SkTaskGroups back on.
Revert "Disable SkTaskGroup in SkMultiPictureDraw temporarily."
Revert "Revert harder, removing SkTaskGroup.cpp from core temporarily."

NOTREECHECKS=true

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/2100c5ed7a5e5470a04e7af7309d8bd3fc4249f7

Review URL: https://codereview.chromium.org/687263007
2014-11-03 17:41:08 -08:00
mtklein
db8d0e5bb0 Manually load CONDITION_VARIABLE methods on Windows, checking for failure (XP).
Tested by running DM on XP.  Before this patch, it fails at startup (even just out/Debug/dm --help).  Now it asserts for other reasons later on in user code, which is just fine by me.

The net effect is that SkTaskGroups will always be synchronous on XP.  That's not ideal, but a step up from crashing.

CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Release-Trybot,Test-Win7-ShuttleA-HD2000-x86_64-Release-Trybot

BUG=skia:

Review URL: https://codereview.chromium.org/700683002
2014-11-03 17:25:54 -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
bsalomon
87a94eb163 Rename and clarify semantics of GrContext::resolveRenderTarget.
Review URL: https://codereview.chromium.org/696293004
2014-11-03 14:28:32 -08:00
joshualitt
a702415d9e Temporary fix to remove drawrect call from GpuGL
BUG=skia:

Committed: https://skia.googlesource.com/skia/+/d4a5c2028117c100ccf44263c0118a0b4745f627

Review URL: https://codereview.chromium.org/694933002
2014-11-03 14:16:35 -08:00
jvanverth
ada68ef2dc Improve quality of distance field rendering
- Update spacing of LODs to get better results scaling up to 256
- Remove unnecessary "bolding" from dftext
- Add debug colors for dftext LODs

BUG=skia:2933,skia:2935

Review URL: https://codereview.chromium.org/703463002
2014-11-03 14:00:24 -08:00
derekf
a6ca5a002e Detect Mesa OpenGL ES
Original-Author: Henry Song <henrysong@samsung.com>

Review URL: https://codereview.chromium.org/700633002
2014-11-03 13:36:40 -08:00
bsalomon
0537f290c5 Revert changes to GrContext::resolveRenderTarget
TBR=joshualitt@google.com,egdaniel@google.com

Review URL: https://codereview.chromium.org/700483003
2014-11-03 13:32:00 -08:00
danakj
d239d42514 Add comments to SkRecordDraw to help people follow.
The calls to visit() to execute the SkRecord::Draw::operator() code path
is not clear to read, so adding some comments to help other new-comers
follow this through to the SkCanvas calls.

R=mtklein@chromium.org

Review URL: https://codereview.chromium.org/695403003
2014-11-03 12:43:30 -08:00
joshualitt
50408adfd2 Test factory uses the inorder draw buffer
BUG=skia:

Review URL: https://codereview.chromium.org/696353002
2014-11-03 12:31:15 -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
bsalomon
bcaefb0622 Remove GrGLTexID
BUG=skia:2889

Review URL: https://codereview.chromium.org/695133003
2014-11-03 11:07:12 -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
robertphillips
4d52afef5c Shrink saveLayer device bounds when it supplies an explicit bounds and has a complex paint
This CL shrinks the bound computed for saveLayers that possess both an explicit
bound and a complex paint (e.g., one that affects transparent black). In this
case the bound of the layer should be the clipped explicit bound rather then
the clip prior/after the saveLayer/restore block.

In the following the first bound is the currently computed bound
while the second is the new/desired one:

For a 100x100 picture

saveLayer (no bound, no paint) [ 0 0 100 100 ]  [ 50 50 100 100 ]
  setMatrix (translate 50, 50) [ 0 0 100 100 ] [ 50 50 100 100 ]
  saveLayer (bound of 0, 0, 50, 50 - complex paint) [ 0 0 100 100 ] [ 50 50 100 100 ]
  restore [ 0 0 100 100 ] [ 50 50 100 100 ]
restore [ 0 0 100 100 ] [ 50 50 100 100 ]

Review URL: https://codereview.chromium.org/696763002
2014-11-03 08:19:44 -08:00
robertphillips
66cad7669b Always enable layer hoisting in Skia
This will prevent bit rot of the layer hoisting code and position us better for turning this on in Chromium.

Review URL: https://codereview.chromium.org/698493002
2014-11-03 07:19:30 -08:00
joshualitt
a393127de5 Revert of Temporary fix to remove drawrect call from GpuGL (patchset #6 id:90005 of https://codereview.chromium.org/694933002/)
Reason for revert:
patch breaks angle bots and K1

Original issue's description:
> Temporary fix to remove drawrect call from GpuGL
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d4a5c2028117c100ccf44263c0118a0b4745f627

TBR=bsalomon@google.com,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/693223002
2014-10-31 16:32:22 -07:00
joshualitt
d4a5c20281 Temporary fix to remove drawrect call from GpuGL
BUG=skia:

Review URL: https://codereview.chromium.org/694933002
2014-10-31 15:49:46 -07: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
92e496f96a Beginning to refactor nvpr code
BUG=skia:

Review URL: https://codereview.chromium.org/687563008
2014-10-31 13:56:50 -07:00
jvanverth
2faa228435 Some distance field text optimizations.
- Add clipRect check
- Remove creation of scalerContext to check for color fonts in canDraw()
   (no longer needed)

BUG=skia:2933

Review URL: https://codereview.chromium.org/696503004
2014-10-31 12:59:57 -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
mtklein
e9f7fbfaee Revert of Turn SkTaskGroups back on. (patchset #1 id:1 of https://codereview.chromium.org/687263007/)
Reason for revert:
precautionary revert.  may have caused WinXP crashes on Chrome tree: https://code.google.com/p/chromium/issues/detail?id=429207

Original issue's description:
> Turn SkTaskGroups back on.
>
> Revert "Disable SkTaskGroup in SkMultiPictureDraw temporarily."
> Revert "Revert harder, removing SkTaskGroup.cpp from core temporarily."
>
> NOTREECHECKS=true
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/2100c5ed7a5e5470a04e7af7309d8bd3fc4249f7

TBR=reed@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/693993002
2014-10-31 11:30:22 -07:00
joshualitt
3bdd7dce5e small fix for cache clear
BUG=skia:

Review URL: https://codereview.chromium.org/695873002
2014-10-31 08:27:39 -07:00
reed
c17c6582ec SK_USE_SCALED_FONTMETRICS for correct scaling
related blink change:
https://codereview.chromium.org/691133002

Review URL: https://codereview.chromium.org/692083002
2014-10-31 08:20:46 -07:00
sugoi
8b602ddd59 Objects should be unrefed instead of deleted
When an error occurs reading a flattenable object, it should be unrefed instead of deleted because, in the case of SkXferMode, for example, we'd actually be deleting a cached object kept in a static array.

BUG=428789

Review URL: https://codereview.chromium.org/695633003
2014-10-31 07:16:16 -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
egdaniel
ed3af6648f Use Color Processor for color bitmap text draws on gpu.
This change is here since previously color bitmap text was rendered using a
geometry processor in the coverage stage. The problem with this is that we
cannot correctly do xfer modes with this method. So I now make color bitmap text
draw using a color stage in the same was as a draw bitmap call.

One issue that arrises from this fix is that we end up adding this final color
processor after any previous color processors. Thus if we have a custom blend
implemented as a color processor it will be before this text one and we won't
blend correctly. This issue will get fixed once an xfer processor is fully
implemented. I have hacked a test locally to show that if we can add the text
color processor to the begining of the color stages we do blend correctly in all
cases (so the xfer processor will be a fix).

BUG=skia:

Review URL: https://codereview.chromium.org/689923004
2014-10-31 06:55:45 -07:00
mtklein
2100c5ed7a Turn SkTaskGroups back on.
Revert "Disable SkTaskGroup in SkMultiPictureDraw temporarily."
Revert "Revert harder, removing SkTaskGroup.cpp from core temporarily."

NOTREECHECKS=true

BUG=skia:

Review URL: https://codereview.chromium.org/687263007
2014-10-31 06:38:25 -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
sugoi
9bde31e95d Trying to be consistent when members are allowed to be NULL
Got a few crashes running the fuzzer locally, all related to handling NULL members/parameters in an inconsistent way.

BUG=skia:

Review URL: https://codereview.chromium.org/675013003
2014-10-30 14:05:15 -07:00
djsollen
058f01eb68 Cleanup conversion that the new NDK compiler tries to over optimize.
This allows us to upgrade to NDK r10c as the dftext gm no longer fails
when compiled with -O2.

Review URL: https://codereview.chromium.org/690053002
2014-10-30 11:54:43 -07:00
robertphillips
0882fdcc15 Add return value on GrRecordReplaceDraw
This assists debugging layer hoisting errors (e.g., when a layer is hoisted but not actually used in subsequent rendering).

Review URL: https://codereview.chromium.org/694533004
2014-10-30 11:54:31 -07:00
robertphillips
189fc98e08 Fix member variable naming
This renaming was missed in (MultiPictureDraw is taskgroup aware - https://codereview.chromium.org/684923002)

TBR=reed@google.com

Review URL: https://codereview.chromium.org/654293005
2014-10-30 11:49:37 -07:00
bungeman
967937c282 Combine nameFontStyleProc and FindByNameStyle.
These two functions do the same thing, combine them.

Review URL: https://codereview.chromium.org/688133003
2014-10-30 11:49:27 -07:00
junov
a41d3c33bc Make RTree handle the case where the playback canvas has empty clip bounds
BUG=skia:3074

Review URL: https://codereview.chromium.org/678303004
2014-10-30 11:44:20 -07:00
robertphillips
225a627ccb Fix bug in aggressive layer cache purging
A picture may possess many layers that get placed in one plot of the atlas. In this case we can only remove the plot from the plotUsage tracking structure when all the layers belonging to the picture in that plot have been removed.

Review URL: https://codereview.chromium.org/654463004
2014-10-30 11:39:19 -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
reed
f037e0bf13 allow SkUserConfig.h to control NOGPU
BUG=skia:

Review URL: https://codereview.chromium.org/685243002
2014-10-30 11:34:15 -07:00
reed
789e327ad9 tell our grcontext to abandon its backend
BUG=skia:

Review URL: https://codereview.chromium.org/692803003
2014-10-30 11:29:08 -07:00
robertphillips
650076027f Revert of scale xmin and xmax for FontMetrics (patchset #1 id:1 of https://codereview.chromium.org/685153004/)
Reason for revert:
Experimental revert to see if this is blocking the DEPS roll

Original issue's description:
> scale xmin and xmax for FontMetrics
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/79c276e4fd93d9c9fd57a45bc6929c48e4415b2f

TBR=mtklein@google.com,bungeman@google.com,reed@google.com,reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/691033002
2014-10-30 09:59:43 -07:00
mtklein
7f36ae1314 Disable SkTaskGroup in SkMultiPictureDraw temporarily.
Think this should be enough to get rolling again.

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/687273006
2014-10-30 07:19:11 -07:00
jvanverth
b61283f9c7 Support multiple scales for dfpaths.
Adds miplevel as part of dfpath key, and scale factor so we know
how much to adjust to fit desired scale.

BUG=skia:2935

Review URL: https://codereview.chromium.org/687283002
2014-10-30 05:57:21 -07:00
joshualitt
7a6184fdf7 cleanup reentrance logic in CMM
BUG=skia:

Review URL: https://codereview.chromium.org/684223002
2014-10-29 18:29:27 -07:00
mtklein
ed167acb7b Revert of Use SkTypeface::getBounds() in bounding-box calculations. (patchset #5 id:80001 of https://codereview.chromium.org/680363003/)
Reason for revert:
Mac mini asserting

Original issue's description:
> Use SkTypeface::getBounds() in bounding-box calculations.
>
> This should produce tighter conservative bounding boxes for text than the
> approximation code it replaces.
>
> Recording performance is neutral on my desktop.  Playback performance
> improves by up to 15% on text heavy pages, e.g.
>
>   desk_pokemonwiki.skp_1 3.24ms -> 2.83ms  0.87x
>         desk_baidu.skp_1 1.91ms -> 1.58ms  0.83x
>
> Committed: https://skia.googlesource.com/skia/+/bf8dc343df4fbdcb8af546eb68b640e011a33489
>
> CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/c51add674dfb89b988a7fbc05f41838c203f9dcd

TBR=reed@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/690833002
2014-10-29 16:07:11 -07:00
reed
67c71203a4 use SkTaskGroup::batch
BUG=skia:

Review URL: https://codereview.chromium.org/688753002
2014-10-29 15:44:25 -07:00
mtklein
c51add674d Use SkTypeface::getBounds() in bounding-box calculations.
This should produce tighter conservative bounding boxes for text than the
approximation code it replaces.

Recording performance is neutral on my desktop.  Playback performance
improves by up to 15% on text heavy pages, e.g.

  desk_pokemonwiki.skp_1 3.24ms -> 2.83ms  0.87x
        desk_baidu.skp_1 1.91ms -> 1.58ms  0.83x

Committed: https://skia.googlesource.com/skia/+/bf8dc343df4fbdcb8af546eb68b640e011a33489

CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot

Review URL: https://codereview.chromium.org/680363003
2014-10-29 15:36:38 -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
robertphillips
4ab5a9048c Discard atlas after every MultiPictureDraw::draw
This is intended to prevent ghosting on tiled architectures.

This CL also defers creation of the atlas (and its texture) until it is actually needed.

Committed: https://skia.googlesource.com/skia/+/6d5b5455743414ddb11d2b8c1fe9d7959f2b853d

Review URL: https://codereview.chromium.org/678403002
2014-10-29 13:56:03 -07:00
reed
79c276e4fd scale xmin and xmax for FontMetrics
BUG=skia:

Review URL: https://codereview.chromium.org/685153004
2014-10-29 13:43:50 -07:00
bungeman
7316b100df Revert of scale xmin/xmax etc in fontmetrics (patchset #1 id:1 of https://codereview.chromium.org/690533004/)
Reason for revert:
Breaking tests in Chromium, and not in a good way.

Original issue's description:
> scale xmin/xmax etc in fontmetrics
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/f8c2feffd68b3262f3c039ec1bd517c5f6cc9e4c

TBR=reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/686263002
2014-10-29 12:46:52 -07:00
bsalomon
b15b4c1ce0 Separate out GrSurfaceConfig's fields from other structs used to create GrGL* subclasses of GrSurface.
BUG=skia:2889

Review URL: https://codereview.chromium.org/691523002
2014-10-29 12:41:57 -07:00
humper
9c30ea4c86 remove now unused (by Chrome) ifdef
BUG=skia:

Review URL: https://codereview.chromium.org/688043002
2014-10-29 12:41:39 -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
joshualitt
329bf4862e BUG=skia:
Review URL: https://codereview.chromium.org/683933003
2014-10-29 12:31:28 -07:00
mtklein
fa494718d4 SkTaskGroup::add(fn, arg)
NOTREECHECKS=true

BUG=skia:

Review URL: https://codereview.chromium.org/687953003
2014-10-29 09:21:47 -07:00
joshualitt
6db519c424 clear stencil clip on draw target
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/683673002
2014-10-29 08:48:19 -07:00
mtklein
27f965a577 Revert of Use SkTypeface::getBounds() in bounding-box calculations. (patchset #3 id:40001 of https://codereview.chromium.org/680363003/)
Reason for revert:
http://build.chromium.org/p/client.skia/builders/Test-Win7-ShuttleA-HD2000-x86-Debug/builds/97/steps/nanobench/logs/stdio

Original issue's description:
> Use SkTypeface::getBounds() in bounding-box calculations.
>
> This should produce tighter conservative bounding boxes for text than the
> approximation code it replaces.
>
> Recording performance is neutral on my desktop.  Playback performance
> improves by up to 15% on text heavy pages, e.g.
>
>   desk_pokemonwiki.skp_1 3.24ms -> 2.83ms  0.87x
>         desk_baidu.skp_1 1.91ms -> 1.58ms  0.83x
>
> Committed: https://skia.googlesource.com/skia/+/bf8dc343df4fbdcb8af546eb68b640e011a33489

TBR=reed@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/685173002
2014-10-29 08:33:38 -07:00
robertphillips
9f36b8719b Revert of Discard atlas after every MultiPictureDraw::draw (patchset #4 id:60001 of https://codereview.chromium.org/678403002/)
Reason for revert:
Breaking bots

Original issue's description:
> Discard atlas after every MultiPictureDraw::draw
>
> This is intended to prevent ghosting on tiled architectures.
>
> This CL also defers creation of the atlas (and its texture) until it is actually needed.
>
> Committed: https://skia.googlesource.com/skia/+/6d5b5455743414ddb11d2b8c1fe9d7959f2b853d

TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/687233002
2014-10-29 08:17:36 -07:00
mtklein
bf8dc343df Use SkTypeface::getBounds() in bounding-box calculations.
This should produce tighter conservative bounding boxes for text than the
approximation code it replaces.

Recording performance is neutral on my desktop.  Playback performance
improves by up to 15% on text heavy pages, e.g.

  desk_pokemonwiki.skp_1 3.24ms -> 2.83ms  0.87x
        desk_baidu.skp_1 1.91ms -> 1.58ms  0.83x

Review URL: https://codereview.chromium.org/680363003
2014-10-29 08:12:08 -07:00
robertphillips
6d5b545574 Discard atlas after every MultiPictureDraw::draw
This is intended to prevent ghosting on tiled architectures.

This CL also defers creation of the atlas (and its texture) until it is actually needed.

Review URL: https://codereview.chromium.org/678403002
2014-10-29 08:05:21 -07:00
reed
f8c2feffd6 scale xmin/xmax etc in fontmetrics
BUG=skia:

Review URL: https://codereview.chromium.org/690533004
2014-10-29 07:53:24 -07:00
joshualitt
79f8faeea2 OptState owns program descriptor
BUG=skia:

Review URL: https://codereview.chromium.org/674543004
2014-10-28 17:59:26 -07:00
bungeman
14df833984 Extend SkFontMgr_Custom to cover ttc, otf, pfb.
Adds ability to test ScanFont with Type1 (pfb) fonts
and fonts with multiple faces (ttc).

Committed: https://skia.googlesource.com/skia/+/ee0c2e4fd429424beaa35f29e7f656997ba3f115

Review URL: https://codereview.chromium.org/672723002
2014-10-28 15:07:23 -07:00
bsalomon
f2703d83da rename GrTextureDesc->GrSurfaceDesc, GrTextureFlags->GrSurfaceFlags
Review URL: https://codereview.chromium.org/682223002
2014-10-28 14:33:06 -07:00
bungeman
32501a1bd4 Revert of Extend SkFontMgr_Custom to cover ttc, otf, pfb. (patchset #2 id:20001 of https://codereview.chromium.org/672723002/)
Reason for revert:
Reverting as this appears to be causing issues with color fonts on Android.

Original issue's description:
> Extend SkFontMgr_Custom to cover ttc, otf, pfb.
>
> Adds ability to test ScanFont with Type1 (pfb) fonts
> and fonts with multiple faces (ttc).
>
> Committed: https://skia.googlesource.com/skia/+/ee0c2e4fd429424beaa35f29e7f656997ba3f115

TBR=reed@google.com,halcanary@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/685803003
2014-10-28 12:03:55 -07:00
piotaixr
5ae89d1fa8 Removing dead code from CanvasTest
BUG=skia:3054

Review URL: https://codereview.chromium.org/681083002
2014-10-28 11:13:59 -07:00
jvanverth
6d22ecaa71 Distance field path optimizations and clean up.
Adds the following:
- Use cached geometry processor rather than recreating all the time.
- Use context's quad index buffer.

Review URL: https://codereview.chromium.org/683923002
2014-10-28 11:10:49 -07:00
hcm
27c46a08a9 Revert of harden pathops for pathological test (patchset #19 id:410001 of https://codereview.chromium.org/633393002/)
Reason for revert:
Compile errors on bots

Original issue's description:
> These tests stress pathops by describing the union of circle-like paths that have tiny line segments embedded and double back to create near-coincident conditions.
>
> The fixes include
> - detect when finding the active top loops between two possible answers
> - preflight chasing winding to ensure answer is consistent
> - binary search more often when quadratic intersection fails
> - add more failure paths when an intersect is missed
>
> While this fixes the chrome bug, reenabling path ops in svg should be deferred until additional fixes are landed.
>
> TBR=
> BUG=421132
>
> Committed: https://skia.googlesource.com/skia/+/6f726addf3178b01949bb389ef83cf14a1d7b6b2

TBR=caryclark@google.com
NOTREECHECKS=true
NOTRY=true
BUG=421132

Review URL: https://codereview.chromium.org/686843002
2014-10-28 10:55:54 -07:00
bungeman
ee0c2e4fd4 Extend SkFontMgr_Custom to cover ttc, otf, pfb.
Adds ability to test ScanFont with Type1 (pfb) fonts
and fonts with multiple faces (ttc).

Review URL: https://codereview.chromium.org/672723002
2014-10-28 10:46:06 -07:00
caryclark
6f726addf3 These tests stress pathops by describing the union of circle-like paths that have tiny line segments embedded and double back to create near-coincident conditions.
The fixes include
- detect when finding the active top loops between two possible answers
- preflight chasing winding to ensure answer is consistent
- binary search more often when quadratic intersection fails
- add more failure paths when an intersect is missed

While this fixes the chrome bug, reenabling path ops in svg should be deferred until additional fixes are landed.

TBR=
BUG=421132

Review URL: https://codereview.chromium.org/633393002
2014-10-28 10:33:09 -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
joshualitt
b44293e712 aa rect renderer takes a gpu on construction
BUG=skia:

Review URL: https://codereview.chromium.org/683483004
2014-10-28 08:12:19 -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
robertphillips
fd61ed0d79 Alter layer hoisting to only hoist layers for one canvas at a time
This CL alters layer hoisting to defer creation of the free floating layers until they are actually needed (rather than creating _all_ the hoisted layers at the start).

It also fixes a pre vs. post Concat bug with how matrices were being accumulated.

BUG=skia:2315

Review URL: https://codereview.chromium.org/657383004
2014-10-28 07:21:44 -07:00
egdaniel
a703b841e3 Add Geometry processor to srcAlphaWillBeOne check.
BUG=skia:

Review URL: https://codereview.chromium.org/681333002
2014-10-28 07:06:36 -07:00
hcm
4396fa594e Revert of Use approximate scratch textures for image filters. (patchset #2 id:20001 of https://codereview.chromium.org/679113004/)
Reason for revert:
Continued GM failures

Original issue's description:
> Use approximate scratch textures for image filters.
>
> Committed: https://skia.googlesource.com/skia/+/96c60686eef6fc514feba6136f1b475f71dbf3ec
>
> Committed: https://skia.googlesource.com/skia/+/50a140563c5960acb2479d2be7c437d146963b3f

TBR=senorblanco@google.com,senorblanco@chromium.org,bsalomon@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/681183002
2014-10-27 21:43:30 -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
joshualitt
77b1307c1f Scissor rect on drawinfo
BUG=skia:

Review URL: https://codereview.chromium.org/678683005
2014-10-27 14:51:01 -07:00
bsalomon
50a140563c Use approximate scratch textures for image filters.
Committed: https://skia.googlesource.com/skia/+/96c60686eef6fc514feba6136f1b475f71dbf3ec

Review URL: https://codereview.chromium.org/679113004
2014-10-27 13:56:20 -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
bsalomon
a9a80e5f42 Revert of Use approximate scratch textures for image filters. (patchset #1 id:1 of https://codereview.chromium.org/679113004/)
Reason for revert:
Images change on some machines. Mostly look OK but not sure about imagefiltersbase on N5.

Old"
http://chromium-skia-gm.commondatastorage.googleapis.com/gm/bitmap-64bitMD5/imagefiltersbase/11449357083048653160.png

New:
http://chromium-skia-gm.commondatastorage.googleapis.com/gm/bitmap-64bitMD5/imagefiltersbase/14279906119350384263.png

Original issue's description:
> Use approximate scratch textures for image filters.
>
> Committed: https://skia.googlesource.com/skia/+/96c60686eef6fc514feba6136f1b475f71dbf3ec

TBR=senorblanco@google.com,senorblanco@chromium.org
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/664823003
2014-10-27 12:59:03 -07:00
bsalomon
c6327a8f7e stuff
BUG=skia:

Review URL: https://codereview.chromium.org/655913003
2014-10-27 12:53:08 -07:00
bsalomon
96c60686ee Use approximate scratch textures for image filters.
Review URL: https://codereview.chromium.org/679113004
2014-10-27 12:41:45 -07:00
bungeman
5f6094a1eb Match language tags by prefix on Android.
A request for 'zh' should match 'zh-Hans' and 'zh-Hant'.

Review URL: https://codereview.chromium.org/681823003
2014-10-27 11:51:58 -07:00
humper
535e3b2025 Fix the way we patch up the matrix for scaled images that aren't
clamp/clamp

BUG=skia:2904
TBR=reed

Review URL: https://codereview.chromium.org/675823002
2014-10-27 10:32:07 -07:00
mtklein
4477c3c0e6 Cut down SkBBH API more.
- The expected case is now a single bulk-load insert() call instead of N;
  - reserve() and flushDeferredInserts() can fold into insert() now;
  - SkBBH subclasses may take ownership of the bounds

This appears to be a performance no-op on both my Mac and N5.  I guess
even the simplest indirect branch predictor ("same as last time") can predict
the repeated virtual calls to SkBBH::insert() perfectly.

BUG=skia:

Review URL: https://codereview.chromium.org/670213002
2014-10-27 10:27:10 -07:00
scroggo
13f701a14d Allow index sources to be unpremul.
This only affects the PNG image decoder, where we have already created
the color table without premultiplication. Since the RowProcChooser is
just providing a proc that chooses indices into the color table, it can
just return the same RowProc.

Update test_row_proc_choice. It was testing to ensure that we hadn't
changed the behavior from the original version of setPrefConfigTable.
In this case, we deliberately changed the behavior, so we need to
change the test.

BUG=b/12024301

Review URL: https://codereview.chromium.org/657863005
2014-10-27 08:43:12 -07:00
joshualitt
a58fe35fda Clip mask manager sets stencil on draw type
BUG=skia:

Committed: https://skia.googlesource.com/skia/+/7afb5aa201e4b59397cbd8480e121d7501a227e7

Review URL: https://codereview.chromium.org/676983003
2014-10-27 08:39:00 -07:00
joshualitt
3a0cfeb961 Revert of Clip mask manager sets stencil on draw type (patchset #3 id:40001 of https://codereview.chromium.org/676983003/)
Reason for revert:
seems to cause a gm issue on windows.

Original issue's description:
> Clip mask manager sets stencil on draw type
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7afb5aa201e4b59397cbd8480e121d7501a227e7

TBR=bsalomon@google.com,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/678843003
2014-10-27 07:38:01 -07:00
joshualitt
7afb5aa201 Clip mask manager sets stencil on draw type
BUG=skia:

Review URL: https://codereview.chromium.org/676983003
2014-10-27 07:17:17 -07:00
halcanary
c8306779b8 In SkPDFDocumentToBitmap, use SkCreateDataProviderFromStream
CGDataProviderCreateWithData to SkCreateDataProviderFromStream in
SkPDFDocumentToBitmap

Review URL: https://codereview.chromium.org/678763003
2014-10-27 07:06:47 -07:00
reed
86217d831d add saveLayer to lua
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/679903002
2014-10-25 20:44:40 -07:00
joshualitt
d3de40dfdf bug fix for k1
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/675213003
2014-10-24 15:02:11 -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
bsalomon
e79a2dab91 When bmp is not cached don't upload as index8 format.
Review URL: https://codereview.chromium.org/673883002
2014-10-24 12:42:51 -07:00
jvanverth
0deb2d9c5d Add some more volatile paths.
Some clip paths were not marked as volatile, and ending up in the
distance field path renderer when they shouldn't.

BUG=skia:3066

Review URL: https://codereview.chromium.org/680543002
2014-10-24 12:41:32 -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
mtklein
60b6e9dbbc Remove a pointless use of SkWeakRefCnt.
Can't quite get rid of SkWeakRefCnt yet... SkFontMgr_indirect uses it to cache
SkTypefaces, and I don't quite understand it enough yet to cut out the weak refs.

BUG=skia:3065

Review URL: https://codereview.chromium.org/664173003
2014-10-24 10:43:15 -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
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
scroggo
3ceef9a66a Add test for new FrontBufferedStream behavior.
Test for https://skia.googlesource.com/skia/+/dd5a1e094c19fa10202c37c50a1f799e5af5dac0

Verify that FrontBufferedStream does not attempt to read beyond the
end of its underlying stream.

Make SkStreamToCGImageSource handle an empty stream better.

Review URL: https://codereview.chromium.org/641813009
2014-10-24 06:55:07 -07:00
scroggo
b752f9f838 Don't read random data in ICO check.
Check to ensure SkStream::read succeeds before checking the result.

Review URL: https://codereview.chromium.org/656673005
2014-10-24 06:49:57 -07:00
joshualitt
976386b75d Possible optimization to SkString
BUG=skia:

Review URL: https://codereview.chromium.org/679433003
2014-10-23 18:23:32 -07:00
tfarina
bf54e49e30 Cleanup: Turn GrReducedClip into a class with a static function.
Clean up namespace usage.

Similar to what was done in
https://skia.googlesource.com/skia/+/a5414c4a8efc3119ee20fcee96c0bf68a04909c7

BUG=None
TEST=None
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/653393003
2014-10-23 17:47:18 -07:00
mtklein
14e4d392d4 Revert "Revert of create shaderproc for nofilter-opaque-dx (patchset #7 id:120001 of https://codereview.chromium.org/664783004/)"
This reverts commit 430b795cc8 and adds suppressions.

BUG=skia:

Review URL: https://codereview.chromium.org/673023002
2014-10-23 14:35:01 -07:00
bsalomon
efd7d45fc0 Don't use MIP filter mode on compressed textures
Add compressed texture image downsample GMs

BUG=chromium:426331

Review URL: https://codereview.chromium.org/672863003
2014-10-23 14:17:46 -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
pavel
47eedcc848 Add utils to better quantize grayscale values to three bit indices while
compressing coverage masks.

Signed-off-by: Pavel Krajcevski <pavel@cs.unc.edu>

BUG=skia:

Review URL: https://codereview.chromium.org/669243003
2014-10-23 13:18:50 -07:00
caryclark
08fa28cd31 add float equivalent in dumpHex output as comment
R=reed@google.com,bsalomon@google.com

Review URL: https://codereview.chromium.org/676803002
2014-10-23 13:08:57 -07:00