Commit Graph

14436 Commits

Author SHA1 Message Date
reed
a0c814cffb Add SkTypeface::getBounds()
mirrored from https://codereview.chromium.org/666303002/

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/676523002
2014-10-22 13:20:58 -07:00
reed
f0b1710bdb fix some bit-rot in the ios port of sampleapp
BUG=skia:

Review URL: https://codereview.chromium.org/637263004
2014-10-22 13:06:00 -07:00
scroggo
2a1208017d Qualify the return value of SkImageDecoder::decode
Add a new enum to differentiate between a complete decode and a
partial decode (with the third value being failure). Return this
value from SkImageDecoder::onDecode (in all subclasses, plus
SkImageDecoder_empty) and ::decode.

For convenience, if the enum is treated as a boolean, success and
partial success are both considered true.

Note that the static helper functions (DecodeFile etc) still return
true and false (for one thing, this allows us to continue to use
SkImageDecoder::DecodeMemory as an SkPicture::InstallPixelRefProc in
SkPicture::CreateFromStream).

Also correctly report failure in SkASTCImageDecoder::onDecode when
SkTextureCompressor::DecompressBufferFromFormat fails.

BUG=skia:3037
BUG:b/17419670

Review URL: https://codereview.chromium.org/647023006
2014-10-22 12:07:00 -07:00
tfarina
7a2df0c672 webtry: Improve error handling/message when creating sqlite tables.
In case they fail, lets fail with an ERROR message rather than an INFO,
and lets make the error message a little bit better.

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

Review URL: https://codereview.chromium.org/669643004
2014-10-22 11:57:36 -07:00
reed
727b8c1d1c explicitly size fType in SkRRect, to ensure the are no uninitialized bytes
(so it can be used as a key in a cache)

BUG=skia:

Review URL: https://codereview.chromium.org/670183002
2014-10-22 11:23:56 -07:00
fmalita
171e5b73a8 SkResourceCache::Key namespace support.
Add a unique-per-subclass namespace tag to make Keys from different
domains comparable.

Also drop the SkPictureShader cache and convert to using the global
resource cache instead.

R=reed@google.com,mtklein@google.com,robertphillips@google.com

Review URL: https://codereview.chromium.org/668223002
2014-10-22 11:20:40 -07:00
piotaixr
9bb7539a59 Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe
Depend on https://codereview.chromium.org/663233002

BUG=skia:2947

Committed: https://skia.googlesource.com/skia/+/687732fe046c9cfec940f2d7f661cd97651d10a8

Review URL: https://codereview.chromium.org/613673005
2014-10-22 11:02:32 -07:00
joshualitt
c369e7c999 GP Emit Code takes a struct
BUG=skia:

Review URL: https://codereview.chromium.org/666693012
2014-10-22 10:56:26 -07:00
piotaixr
46c248da26 More genericity: overload isPaintOpaque(SkPaint, SkBitmap)
Instead of taking a Bitmap as an argument this version
takes only the type of content (None/Opaque/Transparent).
This will be used to check the opaqueness of a SkPaint
that draws a SkImage.

BUG=skia:3042

Review URL: https://codereview.chromium.org/663233002
2014-10-22 08:35:45 -07:00
bungeman
d2ae72858e Use correct size for font style name search.
This fixes an out of bounds read introduced with
a4c4a2d8cd
"Replace SkTypeface::Style with SkFontStyle."

BUG=chromium:425856

Review URL: https://codereview.chromium.org/645223006
2014-10-22 08:25:44 -07:00
fmalita
23df2d6933 Picture shader resource caching.
Replace the current/naive shader caching mechanism with a more general
implementation based on SkResourceCache.

Caching the bitmap shader itself (as opposed to just the tile bitmap)
makes for a chunkier key, but OTOH avoids allocating new shaders on
cache hit.

R=reed@google.com,mtklein@google.com

Review URL: https://codereview.chromium.org/671683004
2014-10-22 07:39:08 -07:00
joshualitt
02b4725cb8 Ignore failure on internal bot
BUG=skia:3023
TBR=egdaniel@google.com

Review URL: https://codereview.chromium.org/640063004
2014-10-22 07:29:21 -07:00
rmistry
22b5ab644e Add back page_sets/skia_googlespreadsheet_desktop
Absolutely could not get the old page to work so I just created a new page.

NOTRY=true
BUG=skia:3008

Review URL: https://codereview.chromium.org/671883002
2014-10-22 06:19:51 -07:00
robertphillips
9e6835da41 Track nested picture xform state for layer hoisting
The accumulated matrix state of any enclosing SkPictures must be stored separate from the picture-local CTM. Any setMatrix calls inside a layer need to replace the picture-local CTM but concatenate with the enclosing SkPicture transform state (and the transform state needed to translate the layer to the correct location in the cached GrTexture).

Review URL: https://codereview.chromium.org/639863005
2014-10-22 05:33:52 -07:00
rmistry
f802f326f4 Update webpages_playback script and all page_sets to use new skpicture_printer benchmark
The purpose of this CL is to turn the RecreateSKPs bot green after
https://codereview.chromium.org/665193002/ lands.

Description of changes in this CL:
* After https://codereview.chromium.org/665193002/ lands we will no longer need to copy the archives and pagesets to telemetry's data directory, I removed the code that did this in https://codereview.chromium.org/655313003/
* page_sets now need unique class names. Updated all page_sets to have unique class names.
* Using the new --page_set_name and --page_set_base_dir and --also-run-disabled-tests parameters

BUG=skia:3046

Review URL: https://codereview.chromium.org/671513009
2014-10-22 05:04:43 -07:00
joshualitt
b4384b9bba Bug fix for es 3.00 fb fetch
patch for es 300 shader fb fetch

BUG=skia:

Review URL: https://codereview.chromium.org/665893008
2014-10-21 12:53:16 -07:00
reed
39393e3ac3 add round/ceil/etc. for SkMScalar
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/645793006
2014-10-21 12:33:21 -07:00
mtklein
c7f7f467df Draw SKPs in 256x256 tiles in nanobench.
(This CL will certainly trigger performance regression alerts.  Tiled drawing is slower than non-tiled drawing.)

BUG=skia:

Review URL: https://codereview.chromium.org/669983002
2014-10-21 12:29:25 -07:00
mtklein
9abf4f82a8 Implement maxrss for Windows
No more -1 in the first column on Windows!

E.g. http://build.chromium.org/p/client.skia/builders/Perf-Win8-ShuttleA-HD7770-x86_64-Release-Trybot/builds/0/steps/nanobench/logs/stdio

BUG=skia:

Review URL: https://codereview.chromium.org/661413004
2014-10-21 12:23:12 -07:00
mtklein
e9e0dea15b SkLazyPtr follow ups
- moves test to LazyPtrTest.cpp
 - adds the ability to use a Create() method with an argument

BUG=skia:

Review URL: https://codereview.chromium.org/669783002
2014-10-21 12:20:04 -07:00
robertphillips
183e98559c Widen the set of nested rects that can be drawn natively on the GPU
GrAARectRenderer::fillAANestedRects only handles thin stroked rects correctly if the margins are all the same. It is also correct if all the margins are >= 1.0f. This CL allows such cases to use the fillAANestedRects fast path.

This seems to halve the gpu rendering time of the picture in bug crbug.com/425427.

Review URL: https://codereview.chromium.org/672473002
2014-10-21 11:25:37 -07:00
mtklein
484bbe5be6 small tweaks to SkResourceCache::Key
- remove unused method and obsolete note
  - add a reminder that yes, we are checking counts are equal

BUG=skia:

Review URL: https://codereview.chromium.org/667993002
2014-10-21 10:55:22 -07:00
reed
c7663981c9 use - and = to zoom text in slides
BUG=skia:
TBR=
NOTRY=True

Review URL: https://codereview.chromium.org/668023002
2014-10-21 10:46:01 -07:00
robertphillips
b9750892dd Fix debugger's SaveAs functionality
Without this patch the SaveAs functionality only copies the portion of the picture from the current command in the GUI.

Review URL: https://codereview.chromium.org/672453002
2014-10-21 10:31:38 -07:00
scroggo
dd5a1e094c Check SkStream::isAtEnd before attempting to read.
In FrontBufferedStream, when attempting to read and buffer more
data, do not try to read if the underlying stream is at the end.

Prevents a bug where we continue trying to read a stream that
has nothing more to read.

Review URL: https://codereview.chromium.org/665303002
2014-10-21 08:06:06 -07:00
egdaniel
c0651c14ed Add check to see if we need to remove fixed funciton VA in OptDrawState
BUG=skia:

Review URL: https://codereview.chromium.org/667033003
2014-10-21 07:47:10 -07:00
jvanverth
bf5473b218 Rebaseline dftext GM for new color emoji test.
BUG=skia:3033
TBR=mtklein@google.com

Review URL: https://codereview.chromium.org/671513007
2014-10-21 07:39:51 -07:00
mtklein
d157b6aed2 Clean up some warnings about unused code.
BUG=skia:

Review URL: https://codereview.chromium.org/663093004
2014-10-21 07:21:36 -07:00
reed
9fbc3f31c0 add gradients and drawPaint to lua
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/667803004
2014-10-21 07:12:58 -07:00
mtklein
1f66e45391 Add an assert that we still have a buffer to readFromBuffer().
sk_free(fBuffer.detach()) means fBuffer will be left as NULL, not a zero-length malloc.

BUG=skia:

Review URL: https://codereview.chromium.org/669813002
2014-10-21 07:12:52 -07:00
senorblanco
b0e89dcc1d Fix image filters for PDF backend.
Currently, the PDF backend does not support image filters (since PDF
does not have that functionality), so it simply removes them. This is
causing Chrome print preview to render incorrectly (see bug). The fix
here is to fall back to a raster device for image filters, as we used
to do in Blink. The resulting bitmap will be drawn to the destination
device as a normal main-memory-backed bitmap.

Note: this change invalidates the PDF results of all GMs containing
image filters (since they'll actually be rendered).

BUG=422144

Review URL: https://codereview.chromium.org/644323006
2014-10-20 14:03:13 -07:00
mtklein
1d932663e1 SkLazyPtr suitable as a local or class member.
BUG=skia:

Review URL: https://codereview.chromium.org/653183006
2014-10-20 13:46:11 -07:00
mtklein
41966d49b0 Dilate approximated text bounds to squelch recent assertion failure.
This is once again an issue related to logo fonts, so I don't
see any easy way to add a regression test for this.

BUG=424824

Review URL: https://codereview.chromium.org/665103002
2014-10-20 13:44:24 -07:00
bungeman
a4c4a2d8cd Replace SkTypeface::Style with SkFontStyle.
Committed: https://skia.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20

Review URL: https://codereview.chromium.org/488143002
2014-10-20 13:33:19 -07:00
jvanverth
fca302ccf4 Add color emoji fallback for distance field text.
BUG=skia:3033

Review URL: https://codereview.chromium.org/670533002
2014-10-20 13:12:55 -07:00
mtklein
c7eb58c8b4 Stop doing at-exit cleanup of lazy pointers.
There are only a fixed number of them, and we're already intentionally leaking in Release.

CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Debug-ASAN-Trybot

BUG=skia:2940

Review URL: https://codereview.chromium.org/606013004
2014-10-20 13:07:03 -07:00
mtklein
802ad83dca Revert of Replace SkTypeface::Style with SkFontStyle. (patchset #9 id:160001 of https://codereview.chromium.org/488143002/)
Reason for revert:
CrOS GM failures:

[*] 2 ExpectationsMismatch: fontmgr_iter_565.png fontmgr_iter_8888.png

Original issue's description:
> Replace SkTypeface::Style with SkFontStyle.
>
> Committed: https://skia.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20

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

Review URL: https://codereview.chromium.org/667023002
2014-10-20 12:54:31 -07:00
bungeman
43b8b36b20 Replace SkTypeface::Style with SkFontStyle.
Review URL: https://codereview.chromium.org/488143002
2014-10-20 12:33:59 -07:00
jcgregorio
33e6466a4f Move init() to Init() so that flag.Parse() can be called first.
Otherwise the --log_dir flag doesn't affect where glog output goes to.

TBR=humper
BUG=skia:

Review URL: https://codereview.chromium.org/667493002
2014-10-20 10:44:35 -07:00
mtklein
dba3e64ab9 Revert of Start to vectorize SkTileGrid. (patchset #48 id:1670001 of https://codereview.chromium.org/634543004/)
Reason for revert:
breaks chrome GPU debug bots

Original issue's description:
> Start to vectorize SkTileGrid.
>
> This adds Sk4x.h to help.
>
> BUG=skia:3041
>
> Committed: https://skia.googlesource.com/skia/+/90c7992bfc6330f070f7704d63372a0ec8410170
>
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu12-ShuttleA-GTX660-x86-Debug-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/958e9628d5f9a81aeafa78572cb4afc4b19a455a

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

Review URL: https://codereview.chromium.org/637863005
2014-10-20 10:43:55 -07:00
scroggo
84c14ee107 Remove content from public_headers.
The file is unused, but we cannot safely delete it until we remove
the reference in a chromium gyp file.

BUG=skia:2350

Review URL: https://codereview.chromium.org/663913003
2014-10-20 09:55:28 -07:00
robertphillips
3aac6e0848 Add clip to layer cache
This CL adds the clip region to the GPU layer hoisting image cache. It also switches back to the old caching behavior of using the entire CTM in the cache key rather then just the upper 2x2. This latter change is to focus more on hoisting rather then caching.

It also includes 2 smaller fixes:
a) layer's that have an image filter are no longer atlased (b.c. doing so complicates applying the image filter)

b) the result of clipping the layer's bounds to the current clip is used as the hoisted layer's size. This reduces the amount of pixels drawn to match a normal (non-hoisted) draw pass.

Review URL: https://codereview.chromium.org/640773004
2014-10-20 08:52:40 -07:00
robertphillips
4a36d9ab5e Fix clearing issue in render_pictures
This bug only crops up when using the "--writeWholeImage" option in tile mode

Review URL: https://codereview.chromium.org/664103003
2014-10-20 08:45:58 -07:00
robertphillips
6219e1fa0b Remove unused parameters from filter_texture
Trivial cleanup.

Review URL: https://codereview.chromium.org/665863003
2014-10-20 08:12:04 -07:00
mtklein
958e9628d5 Start to vectorize SkTileGrid.
This adds Sk4x.h to help.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/90c7992bfc6330f070f7704d63372a0ec8410170

CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu12-ShuttleA-GTX660-x86-Debug-Trybot

Review URL: https://codereview.chromium.org/634543004
2014-10-20 07:12:34 -07:00
jvanverth
2b9dc1d0ff When rendering df fonts, pass drawText() down to drawPosText().
First pass at getting color emoji working for distance fields.

BUG=skia:3033

Review URL: https://codereview.chromium.org/660853003
2014-10-20 06:48:59 -07:00
mtklein
a71aee6afd Remove obsolete SkRecording.
Can land after https://codereview.chromium.org/664583002/ does.

BUG=skia:

Only API removed.
TBR=reed@google.com

Review URL: https://codereview.chromium.org/660903002
2014-10-20 06:44:58 -07:00
kkinnunen
93b255b19e Make SkImageDecoder_libpng be compilable with Chromium libpng
Chromium has libpng with pngusr.h that disables certain functionality with
defines. Use those defines when compiling SkImageDecoder_libpng.cpp.

This makes it possible to use Skia PNG decoder and encoder when compiling dm
with Chromium. Skia PNG decoder and encoder of course is not compiled to the
skia library, but to dm with Chromium.

BUG=skia:2992

Review URL: https://codereview.chromium.org/645883004
2014-10-19 22:07:24 -07:00
reed
468b1815d2 add blurimagefilter to lua
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/663993002
2014-10-19 11:42:54 -07:00
skia-deps-roller
d12af70baf Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=

Review URL: https://codereview.chromium.org/647973003
2014-10-17 15:00:23 -07:00