Commit Graph

10028 Commits

Author SHA1 Message Date
reed@google.com
f3aead2829 remvoe duplicate impl for SkImageInfo flattening
Revert "Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.""""""

This reverts commit eabd6b2ed4e494b323c08f32358f45950a0368c3.

BUG=

Review URL: https://codereview.chromium.org/108773003

git-svn-id: http://skia.googlecode.com/svn/trunk@12624 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 18:38:46 +00:00
reed@google.com
6a32add491 Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap."""""
This reverts commit d08eca87a0bef10112a211de540f89656a80b86a.

BUG=

Review URL: https://codereview.chromium.org/108303003

git-svn-id: http://skia.googlecode.com/svn/trunk@12623 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 18:19:10 +00:00
reed@google.com
6965a0a2df PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.""""
BUG=

Review URL: https://codereview.chromium.org/110503003

git-svn-id: http://skia.googlecode.com/svn/trunk@12622 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 18:04:56 +00:00
commit-bot@chromium.org
3a6143d91f Added canvas.fillStyle with support for just the "#RRGGBB" style of colors.
Also renamed drawRect to fillRect, which now take x,y,w,h parameters.

BUG=
R=robertphillips@google.com

Author: jcgregorio@google.com

Review URL: https://codereview.chromium.org/108813004

git-svn-id: http://skia.googlecode.com/svn/trunk@12621 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 17:34:58 +00:00
commit-bot@chromium.org
6de4a7836f Fix SampleApp bounding box hierarchy shortcut collision.
'b' is currently bound to the AA toggle, AND to the bounding box
hierachy toggle.

The CL switches BBH to 'B', and fixes a deferred title update issue.

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

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/112903002

git-svn-id: http://skia.googlecode.com/svn/trunk@12620 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 17:05:23 +00:00
commit-bot@chromium.org
785f2e1426 be more careful about OOB source pixels in the scanline rescaler, and
less certain about why the standalone scaler might have faileds

BUG=
R=reed@google.com

Author: humper@google.com

Review URL: https://codereview.chromium.org/100473011

git-svn-id: http://skia.googlecode.com/svn/trunk@12619 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 15:35:41 +00:00
reed@google.com
772443a3e6 add more tests for discardable caches
BUG=
R=halcanary@google.com

Review URL: https://codereview.chromium.org/112833003

git-svn-id: http://skia.googlecode.com/svn/trunk@12618 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 15:30:24 +00:00
skia.committer@gmail.com
63ba319483 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@12617 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-11 07:02:06 +00:00
commit-bot@chromium.org
773f8e2421 Avoid heap allocation in SkPictureStateTree constructor
This makes empty state trees cheaper. ~1% improvement on rasterize_and_record_micro.key_silk_cases on Android.

BUG=1772
R=tomhudson@chromium.org, tomhudson@google.com

Author: skyostil@chromium.org

Review URL: https://codereview.chromium.org/111573002

git-svn-id: http://skia.googlecode.com/svn/trunk@12616 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 23:06:54 +00:00
fmalita@google.com
9a65e2c22d More signed/unsigned comparison warnings.
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/100103006

git-svn-id: http://skia.googlecode.com/svn/trunk@12615 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 22:25:53 +00:00
fmalita@google.com
e6a98d4259 Fix warning after bbe43a9ce0.
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/108973006

git-svn-id: http://skia.googlecode.com/svn/trunk@12614 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 22:12:40 +00:00
commit-bot@chromium.org
bbe43a9ce0 Add SkTileGridPicture SampleApp playback support.
SampleApp already supports switching to a bbox hierarchy playback mode
('b' shortcut). This CL adds an SkTileGridPicture bbox mode.

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

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/108513006

git-svn-id: http://skia.googlecode.com/svn/trunk@12613 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 21:51:06 +00:00
halcanary@google.com
edd370f949 Sk_API for SkImageGenerator and SkInstallDiscardablePixelRef
Added SK_API to SkImageGenerator (already in include/).

Moved SkDiscardablePixelRef::Install to SkInstallDiscardablePixelRef,
added SK_API to that function, and moved declaration to
SkImageGenerator.h

This keeps the SkDiscardablePixelRef internal to Skia, but exposes a
method to install it into a bitmap.

Modifed tests that rely on this functio to use new version.

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

Review URL: https://codereview.chromium.org/111713002

git-svn-id: http://skia.googlecode.com/svn/trunk@12612 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 21:11:12 +00:00
commit-bot@chromium.org
a3b84d41ef Support MSAA4 and (non-ES) OpenGL in Android SampleApp
Add a menu item to set the OpenGL context type that SampleApp uses on
Android. The submenu of the new item will present options to create
OpenGL ES or OpenGL, aliased or multisampled.

R=djsollen@google.com, bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/60273006

git-svn-id: http://skia.googlecode.com/svn/trunk@12610 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 20:37:41 +00:00
halcanary@google.com
bc55eec80e Implement SkAshmemDiscardableMemory
-   Implement ashmem-backed SkDiscardableMemory subclass:
    This class in only accesible via the SkDiscardableMemory::Create()
    function, which replaces the mock implementation in
    SkDiscardableMemory_none.cpp

-   Added SkDiscardableMemory_ashmem.cpp to the Android port of Skia
    Removed SkDiscardableMemory_none.cpp from the Android port.

-   Added DiscardableMemoryTest.
    Still needs work.

-   SkDiscardablePixelRef Bugfix:
    onLockPixels() now calls SkDELETE on the SkDiscardableMemory pointer
    when it fails to unlock.

-   Improved documentation inside ashmem.h

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/83563002

git-svn-id: http://skia.googlecode.com/svn/trunk@12608 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 18:33:07 +00:00
bungeman@google.com
c9a8a7e23d improve bitmap font support (FreeType only)
This commit improves SkFontHost_FreeType's support for bitmap fonts,
adding a number of features:
- Intelligent bitmap strike selection.
- Inter-strike bitmap font scaling.
- Colour bitmap font support (FreeType 2.5.0+).

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23684041

git-svn-id: http://skia.googlecode.com/svn/trunk@12607 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 18:09:36 +00:00
commit-bot@chromium.org
45dfe6bb55 Revert of https://codereview.chromium.org/111853003/
Reason for revert: Was not the culprit.

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

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/102243009

git-svn-id: http://skia.googlecode.com/svn/trunk@12606 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 17:59:04 +00:00
vandebo@chromium.org
5f209e6405 Revert "[PDF] Fix font embedding restrictions."
This reverts r12600 and r12601, likely causing crash on Mac.

Review URL: https://codereview.chromium.org/111893002

git-svn-id: http://skia.googlecode.com/svn/trunk@12604 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 17:22:41 +00:00
commit-bot@chromium.org
7ad9368687 Revert of https://codereview.chromium.org/109033002/
Reason for revert: I suspect this is causing GM to crash on Mac.

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

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/111853003

git-svn-id: http://skia.googlecode.com/svn/trunk@12603 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 17:08:55 +00:00
reed@google.com
15bc13d20f change 'n' toggle to cycle through all filterlevels
BUG=
R=humper@google.com

Review URL: https://codereview.chromium.org/109473004

git-svn-id: http://skia.googlecode.com/svn/trunk@12602 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 16:53:13 +00:00
vandebo@chromium.org
00e00b017e Fix missing ; in win code.
Review URL: https://codereview.chromium.org/104533005

git-svn-id: http://skia.googlecode.com/svn/trunk@12601 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 16:49:25 +00:00
commit-bot@chromium.org
47fb2b9c67 [PDF] Fix font embedding restrictions.
Stop using restricted font outlines and honor don't subset restriction.

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

Author: vandebo@chromium.org

Review URL: https://codereview.chromium.org/107863002

git-svn-id: http://skia.googlecode.com/svn/trunk@12600 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 16:32:06 +00:00
commit-bot@chromium.org
e167b11fb5 Shut up the CoreText performance note.
Aped from https://codereview.qt-project.org/70097

Please keep in mind: https://www.google.com/search?q=i+have+no+idea+what+i'm+doing+dog&tbm=isch

BUG=
R=bungeman@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/109033002

git-svn-id: http://skia.googlecode.com/svn/trunk@12599 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 16:27:44 +00:00
robertphillips@google.com
befb499da5 Fix error in r12597 (can't forget that newline at the end of a file)
git-svn-id: http://skia.googlecode.com/svn/trunk@12598 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 15:51:43 +00:00
robertphillips@google.com
42cc237caf New Composite CSS border object
https://codereview.chromium.org/86263003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12597 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 15:19:32 +00:00
commit-bot@chromium.org
99589af4e3 Add support for reading a directory of images with --expectations (-r).
DM writes out its images in a hierarchy that's a little different than GM,
so this can't read GM's output.  But it can read its own, written with -w.

Example usage:
  $ out/Release/dm -w /tmp/baseline
  $ out/Release/dm -r /tmp/baseline -w /tmp/new
  (and optionally)
  $ mkdir /tmp/diff; out/Release/skdiff /tmp/baseline /tmp/new /tmp/diff

GM's IndividualImageExpectationsSource and Expectations are a little too eager
about decoding and hashing the expected images, so I took the opportunity to
add DM::Expectations that mostly replaces skiagm::ExpectationsSource and
skiagm::Expectations in DM.  It mainly exists to move the image decoding and
comparison off the main thread, which would otherwise be a major speed
bottleneck.

I tried to use skiagm code where possible.  One notable place where I differed
is in this new feature.  When -r is a directory of images, DM does no hashing.
It considerably faster to read the expected file into an SkBitmap and do a
byte-for-byte comparison than to hash the two bitmaps and check those.

The example usage above isn't quite working 100% yet.  Expectations on some GMs
fail, even with no binary change.  I haven't pinned down whether this is due to
  - a bug in DM
  - flaky GMs
  - unthreadsafe GMs
  - flaky image decoding
  - unthreadsafe image decoding
  - something else
but I intend to.  Leon, Derek and I have suspected PNG decoding isn't
threadsafe, but are as yet unable to prove it.

I also seem to be able to cause malloc to fail on my laptop if I run too many
configs at once, though I never seem to be using more than ~1G of RAM.  Will
track that down too.

BUG=
R=reed@google.com, bsalomon@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/108963002

git-svn-id: http://skia.googlecode.com/svn/trunk@12596 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 14:53:16 +00:00
commit-bot@chromium.org
9bde13c1b2 Add a canvas object with drawRect() and inval().
BUG=
R=robertphillips@google.com

Author: jcgregorio@google.com

Review URL: https://codereview.chromium.org/110693002

git-svn-id: http://skia.googlecode.com/svn/trunk@12595 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 14:13:03 +00:00
robertphillips@google.com
2e7958f8fb Add clipped-bitmap-shaders-*-hq_angle.png to ignore-tests.txt
git-svn-id: http://skia.googlecode.com/svn/trunk@12594 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 12:56:56 +00:00
commit-bot@chromium.org
aee7e2d40b Correct baseline images for new "bitmapshaders" test
(SkipBuildbotRuns)
NOTRY=True
BUG=
R=djsollen@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/110643002

git-svn-id: http://skia.googlecode.com/svn/trunk@12593 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 12:54:21 +00:00
commit-bot@chromium.org
b6872c06e1 Add support for MIPS to android build
R=borenet@google.com, scroggo@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/109323004

git-svn-id: http://skia.googlecode.com/svn/trunk@12592 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 12:53:56 +00:00
commit-bot@chromium.org
bc91fd71fa Make GrBicubicEffect take tile modes rather than GrTextureParams.
GrTextureParams allows the caller to override the filter mode. But no filtering other than nearest neighbor makes sense.

Also removes coord set from creation signature since it is unused.

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/99523008

git-svn-id: http://skia.googlecode.com/svn/trunk@12591 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 12:53:39 +00:00
skia.committer@gmail.com
cf0803b46f Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@12590 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 07:02:03 +00:00
vandebo@chromium.org
969967ed68 [PDF] PDF rasterizers fed garbage data in release mode.
BUG=skia:1885
TBR=epoger@google.com

Review URL: https://codereview.chromium.org/103213007

git-svn-id: http://skia.googlecode.com/svn/trunk@12589 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 23:22:15 +00:00
reed@google.com
e4eb122a61 support scaledimagecache instantiable using discardablememory
Add this to your build/gyp system to use discardable instead of malloc+budget

#define SK_USE_DISCARDABLE_SCALEDIMAGECACHE

R=halcanary@google.com

Review URL: https://codereview.chromium.org/105933003

git-svn-id: http://skia.googlecode.com/svn/trunk@12588 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 22:29:30 +00:00
reed@google.com
f309dbcf2a add
git-svn-id: http://skia.googlecode.com/svn/trunk@12587 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 22:09:41 +00:00
reed@google.com
9230ea2971 make info real in SkPixelRef, and add bitmap::asImageInfo
BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/108663004

git-svn-id: http://skia.googlecode.com/svn/trunk@12586 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 22:01:03 +00:00
epoger@google.com
331e237890 GM expectations: create initial empty expectations for Test-Ubuntu12-ShuttleA-ATI5770-x86_64-Release-Valgrind
(SkipBuildbotRuns)
TBR=djsollen

Review URL: https://codereview.chromium.org/100643003

git-svn-id: http://skia.googlecode.com/svn/trunk@12585 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 21:02:11 +00:00
bsalomon@google.com
bc8b1ff885 add hq clipped biptmap shader GMs to ignored-tests.txt
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/93633003

git-svn-id: http://skia.googlecode.com/svn/trunk@12584 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 20:52:47 +00:00
senorblanco@chromium.org
c80f2f7ab3 New Nexus4 baselines due to r12571.
R=robertphillips

Review URL: https://codereview.chromium.org/110603003

git-svn-id: http://skia.googlecode.com/svn/trunk@12583 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 20:52:40 +00:00
bsalomon@google.com
862c4d658f Mark rrect_clip_aa, skbug1719, and pathopsskpclip as ignored on N4 gpu
BUG=skia:1888
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/107843003

git-svn-id: http://skia.googlecode.com/svn/trunk@12582 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 20:41:00 +00:00
robertphillips@google.com
871840d606 Revert the revert of (ARM Skia NEON patches - 34 - Blur Filter - https://codereview.chromium.org/109403004/)
git-svn-id: http://skia.googlecode.com/svn/trunk@12581 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 20:35:03 +00:00
reed@google.com
d7b1af68de cast -1 to Mode to avoid warning (enum compared to signed int)
git-svn-id: http://skia.googlecode.com/svn/trunk@12580 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 20:31:50 +00:00
robertphillips@google.com
8bbf6b92ee Reverting r12568 (ARM Skia NEON patches - 34 - Blur Filter - https://codereview.chromium.org/109403004) due to image quality regressions on the N4.
git-svn-id: http://skia.googlecode.com/svn/trunk@12578 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 20:16:17 +00:00
bungeman@google.com
aeec33448f Fix one too many levels of indirection introduced in 12573.
git-svn-id: http://skia.googlecode.com/svn/trunk@12577 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 19:30:28 +00:00
commit-bot@chromium.org
cea9abb001 Do not use GrBicubic effect when downscaling. Also, don't use glTexStorage as it interferes with deleyed mipmap generation.
R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/105353002

git-svn-id: http://skia.googlecode.com/svn/trunk@12576 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 19:15:37 +00:00
commit-bot@chromium.org
c9c0b1e90e adding to whitespace.txt using a pure git checkout
(SkipBuildbotRuns)

BUG=
R=rmistry@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/110553002

git-svn-id: http://skia.googlecode.com/svn/trunk@12574 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 19:08:44 +00:00
bungeman@google.com
0ff457bd5e Fix threading issue in DirectWrite port initialization.
The DirectWrite port maintains a global instance of an IDWriteFactory,
which is used to create all other DirectWrite objects. However, the
initialization of this object is not currently thread safe.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/107963003

git-svn-id: http://skia.googlecode.com/svn/trunk@12573 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 18:58:31 +00:00
bsalomon@google.com
ee9fb43774 fix file names in gpu.gypi
Review URL: https://codereview.chromium.org/99193004

git-svn-id: http://skia.googlecode.com/svn/trunk@12572 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 18:48:51 +00:00
senorblanco@chromium.org
e93e1dbf0e Implement srcRect and dstRect functionality in SkBitmapSource. This is required for the "preserveAspectRatio" options of SVG's feImage. Covered by new GM "bitmapsource".
This also includes some changes to the xfermodeimagefilter and tileimagefilter GMs to properly handle the CTM. This worked before only because SkBitmapSource was ignoring the CTM. Now that it respects it, we need to give the correct transform. This also means the GMs now work while zoomed. It also implements CTM support for SkTileImageFilter.

NOTE: this will require rebaselining a number of imagefilter GMs on Nexus4, since they render in perspective (using the CTM). The changes to the results should all be improvements.

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

Review URL: https://codereview.chromium.org/106933002

git-svn-id: http://skia.googlecode.com/svn/trunk@12571 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 18:31:42 +00:00
commit-bot@chromium.org
907fbd53c5 Make texture domain a helper so that it can be incorporated into other effects.
R=robertphillips@google.com, jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/98893006

git-svn-id: http://skia.googlecode.com/svn/trunk@12569 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 17:03:02 +00:00