Commit Graph

5599 Commits

Author SHA1 Message Date
mtklein
977c07dad2 Revert of Use std::unique_ptr. (patchset #7 id:120001 of https://codereview.chromium.org/1780933003/ )
Reason for revert:
Now we remember!  The problem was Clank:

https://build.chromium.org/p/tryserver.chromium.android/builders/android_clang_dbg_recipe/builds/34329

Original issue's description:
> Use std::unique_ptr.
>
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940

TBR=bungeman@google.com,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1782973002
2016-03-10 11:31:27 -08:00
bungeman
d7dc76f7e9 Remove version checks for _MSC_VER < 1800 (msvs2013).
We already actively do not support older versions of the vc++
compiler and runtime, so don't check for them anymore.

TBR=reed
No API changes.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1777213003

Review URL: https://codereview.chromium.org/1777213003
2016-03-10 11:14:40 -08:00
mtklein
20c1e3abfc Use std::unique_ptr.
TBR=reed@google.com

Review URL: https://codereview.chromium.org/1780933003
2016-03-10 10:10:03 -08:00
reed
150835e779 sk_sp versions of newWithColorFilter and newWithLocalMatrix
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1782703002

Review URL: https://codereview.chromium.org/1782703002
2016-03-10 06:36:49 -08:00
msarett
4984c3c95f Update Skia's YUV API
We should match the recently designed API in SkCodec.
https://codereview.chromium.org/1549473003/

This requires changes in Chromium as well.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002

Committed: https://skia.googlesource.com/skia/+/095d31c8a0eeb5d491febf064bc3c8a44e22b94f

Review URL: https://codereview.chromium.org/1716523002
2016-03-10 05:44:43 -08:00
robertphillips
393aa36815 Switch SkMergeImageFilter over to new onFilterImage interface
This relies on CL: https://codereview.chromium.org/1762013002/ (Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated)

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1763223002

Review URL: https://codereview.chromium.org/1763223002
2016-03-10 04:44:20 -08:00
bsalomon
0d996868c3 Restore SkImage::NewTextureFromPixmap changes.
6ceeebd37a contained the fix for the issues that prompted the revert (index8 bitmaps weren't drawing).

Revert "TBR=robertphillips@google.com"

This reverts commit 236640872f.

TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1775263004

Review URL: https://codereview.chromium.org/1775263004
2016-03-09 18:44:43 -08:00
bsalomon
236640872f TBR=robertphillips@google.com
Revert "Add SkImage::NewTextureFromPixmap"

This reverts commit 045afea979.

Revert "Fix Mac bots because of failing readback of 565"

This reverts commit e344b26a7d.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1777863003

Review URL: https://codereview.chromium.org/1777863003
2016-03-09 14:50:15 -08:00
reed
5671c5b912 SkImage now has makeShader to return sk_sp
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1785473002

Review URL: https://codereview.chromium.org/1785473002
2016-03-09 14:47:34 -08:00
reed
6ceeebd37a unify peekPixels around pixmap parameter
requires this chrome CL to land first
https://codereview.chromium.org/1775393003/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1784563002

Review URL: https://codereview.chromium.org/1784563002
2016-03-09 14:26:26 -08:00
bsalomon
045afea979 Add SkImage::NewTextureFromPixmap
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1776913003

Review URL: https://codereview.chromium.org/1776913003
2016-03-09 11:31:18 -08:00
robertphillips
e6163bf353 Switch SkPaintImageFilter over to new onFilterImage interface
This CL relies on: https://codereview.chromium.org/1762013002/ (Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated)

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1761373002

Review URL: https://codereview.chromium.org/1761373002
2016-03-09 10:17:41 -08:00
msarett
c3adf2fb41 Deprecate SkImageDecoder
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1776153003

Review URL: https://codereview.chromium.org/1776153003
2016-03-09 07:14:41 -08:00
bsalomon
e699d0cd25 Don't allow nullptr in texels array params (unless using a transfer buffer).
Require all levels in writePixels to have a non-nullptr.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1765633002

Committed: https://skia.googlesource.com/skia/+/8ee78f31b2a29a5f76403755ea17bad9be74a3ec

Review URL: https://codereview.chromium.org/1765633002
2016-03-09 06:25:16 -08:00
robertphillips
6ac97b7eb9 Switch SkImageSource image filter over to new onFilterImage interface
This CL relies on: https://codereview.chromium.org/1762013002/ (Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated)

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1772933002

Review URL: https://codereview.chromium.org/1772933002
2016-03-09 05:17:10 -08:00
reed
8a21c9fe7f use Make instead of Create to return a shared shader
Partially updated call sites. Undefine the flag in SkSHader.h to convert the remaining sites.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1772463002

Review URL: https://codereview.chromium.org/1772463002
2016-03-08 18:50:00 -08:00
reed
647cc84748 Add sk_ref_sp helper function.
Review URL: https://codereview.chromium.org/1773943004
2016-03-08 12:54:48 -08:00
robertphillips
40736abf74 Switch SkComposeImageFilter over to new onFilterImage interface
This CL depends on https://codereview.chromium.org/1762013002/ (Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated)

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1768283002

Review URL: https://codereview.chromium.org/1768283002
2016-03-08 12:05:37 -08:00
joshualitt
b0666ad3a9 Fix up GrAuditTrail to allow arbitrary reordering
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1765123002

Review URL: https://codereview.chromium.org/1765123002
2016-03-08 10:43:42 -08:00
robertphillips
c80bf74bcc Switch SkOffsetImageFilter over to new onFilterImage interface
This CL relies on: https://codereview.chromium.org/1762013002/ (Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated)

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1766743003

Review URL: https://codereview.chromium.org/1766743003
2016-03-08 08:47:23 -08:00
bungeman
c901c11549 Add element_type, swap, operators, fix reset on sk_sp.
The 'element_type' typedef is to play nice with std::pointer_traits.

The full complement of operators and swap to match unique_ptr so that
sk_sp can be properly compared to nullptr and used with standard
containers.

Update to 'reset' so that calling 'unref' is the last operation.

This also adds tests for these changes, and sets the fPtr to nullptr
in debug for easier bug finding.

Review URL: https://codereview.chromium.org/1773453002
2016-03-08 08:35:23 -08:00
cdalton
8d988b3a73 Add support for 2x2 matrices
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1755483002

Review URL: https://codereview.chromium.org/1755483002
2016-03-07 15:39:09 -08:00
cdalton
28f45b949a Add "sample locations" feature to GrProcessor
Adds a "sample locations" feature to GrProcessor. When enabled, this
allows a processor to know inside the shader where all the samples are
located. Also adds various infastructure to query, cache, and identify
multisample data.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1717393002

Review URL: https://codereview.chromium.org/1717393002
2016-03-07 13:58:26 -08:00
robertphillips
4418dbac33 Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated
This CL relies on https://codereview.chromium.org/1757983002/ (Add SkSpecialImage-based methods to SkImageFilter)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1762013002

TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1762013002
2016-03-07 12:45:14 -08:00
bsalomon
aecc018f86 Attempt to combine batches in forward direction before flush
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1763883005

Review URL: https://codereview.chromium.org/1763883005
2016-03-07 11:50:44 -08:00
msarett
1590f3b328 Revert of Update Skia's YUV API (patchset #5 id:160001 of https://codereview.chromium.org/1716523002/ )
Reason for revert:
Blimp failures with manual roll in Chrome.

Original issue's description:
> Update Skia's YUV API
>
> We should match the recently designed API in SkCodec.
> https://codereview.chromium.org/1549473003/
>
> This requires changes in Chromium as well.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002
>
> Committed: https://skia.googlesource.com/skia/+/095d31c8a0eeb5d491febf064bc3c8a44e22b94f

TBR=scroggo@google.com,reed@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1775493002
2016-03-07 09:16:52 -08:00
msarett
095d31c8a0 Update Skia's YUV API
We should match the recently designed API in SkCodec.
https://codereview.chromium.org/1549473003/

This requires changes in Chromium as well.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002

Review URL: https://codereview.chromium.org/1716523002
2016-03-07 08:39:12 -08:00
msarett
ad8bcfeac4 Use a smart pointer for SkColorSpace factories
This should fix master-skia in Android because we no longer need
to include src/core for SkCodec.h.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1766413002

Review URL: https://codereview.chromium.org/1766413002
2016-03-07 07:09:03 -08:00
robertphillips
eaf086e3ce Add SkSpecialImage-based methods to SkImageFilter
This is calved off of https://codereview.chromium.org/1695823002/ (Get OffsetImageFilter really working with SkSpecialImages)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1757983002

Review URL: https://codereview.chromium.org/1757983002
2016-03-07 04:51:10 -08:00
reed
a5ab9ec295 Add variants of the setters on SkPaint which take a sk_sp<effect>. At the same time, change the internal storage to be sk_sp<effect>.
Follow-on CL might try to use = default for the constructors and assignment operators.

This reverts commit 992854d62e.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1770723002

Review URL: https://codereview.chromium.org/1770723002
2016-03-06 18:10:48 -08:00
reed
941da9d661 Fix behavior of sk_sp::reset(T*) and add unittest.
Previously, sk_sp::reset(T* t) did not release its own reference
if its internal pointer was the same as 't'. This leaks a reference.
Now always release the current reference when non-nullptr.

Review URL: https://codereview.chromium.org/1767983002
2016-03-06 13:54:00 -08:00
reed
992854d62e Revert of add setter on SkPaint that takes sk_sp (patchset #1 id:1 of https://codereview.chromium.org/1769803002/ )
Reason for revert:
investigate leak

Original issue's description:
> add setter on SkPaint that takes sk_sp
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1769803002
>
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/a917eba6ea8a6936f2c9271e487b14d14b99c98e

TBR=
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1771613002
2016-03-05 17:51:45 -08:00
reed
a917eba6ea add setter on SkPaint that takes sk_sp
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1769803002

TBR=

Review URL: https://codereview.chromium.org/1769803002
2016-03-05 16:39:25 -08:00
halcanary
ffa39e02bc sk_sp: fix contravariant constructors
TBR=reed
This is obviously correct and needs to be fixed.

Review URL: https://codereview.chromium.org/1771583002
2016-03-05 08:30:28 -08:00
reed
ec7c0cec3f remove unneeded flag for annotations
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1767783004

TBR=halcanary

Review URL: https://codereview.chromium.org/1767783004
2016-03-05 06:00:12 -08:00
reed
f70b531daa Move annotations to canvas virtual (patchset #8 id:140001 of https://codereview.chromium.org/1744103002/ )"
Need to land chrome change first https://codereview.chromium.org/1766723003/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1758023003

TBR=

Review URL: https://codereview.chromium.org/1758023003
2016-03-04 16:36:20 -08:00
halcanary
91fcb3ed58 SkPDF: PDFDevice use SkTArray<T> rather than SkTDArray<T*>
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1767713002

Review URL: https://codereview.chromium.org/1767713002
2016-03-04 13:53:22 -08:00
msarett
6a738217ea Set SkColorSpace object for PNGs and parse ICC profiles
Code for ICC profile parsing adapted from:
https://codereview.chromium.org/1707033002/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1726823002

Review URL: https://codereview.chromium.org/1726823002
2016-03-04 13:27:35 -08:00
bsalomon
97220199d4 Turn on gpu stats in debug builds.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1769633002

Review URL: https://codereview.chromium.org/1769633002
2016-03-04 13:15:29 -08:00
halcanary
7b0b2ca435 Make Cmake work with debug build
Before this CL, the following failed to link:

    cd .../skia
    git fetch
    git checkout origin/master
    git clean -ffdx
    SKIA="$PWD"
    cd $(mktemp -d);
    cmake "${SKIA}/cmake" -DCMAKE_BUILD_TYPE=Debug -G Ninja
    ninja
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1757993006

Review URL: https://codereview.chromium.org/1757993006
2016-03-04 08:30:05 -08:00
bsalomon
d3312595c8 Revert of Don't allow nullptr in texels array params (unless using a transfer buffer). (patchset #3 id:60001 of https://codereview.chromium.org/1765633002/ )
Reason for revert:
breaks vk build

Original issue's description:
> Don't allow nullptr in texels array params (unless using a transfer buffer).
>
> Require all levels in writePixels to have a non-nullptr.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1765633002
>
> Committed: https://skia.googlesource.com/skia/+/8ee78f31b2a29a5f76403755ea17bad9be74a3ec

TBR=jvanverth@google.com,cblume@google.com,cblume@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1760343003
2016-03-04 07:06:43 -08:00
bsalomon
8ee78f31b2 Don't allow nullptr in texels array params (unless using a transfer buffer).
Require all levels in writePixels to have a non-nullptr.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1765633002

Review URL: https://codereview.chromium.org/1765633002
2016-03-04 06:23:36 -08:00
reed
773ceda51c Enforce 16byte alignment in shader contexts (patchset #1 id:1 of https://codereview.chromium.org/1759653004/ )"
This reverts commit e38bcaf24b.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1763973002

TBR=

Review URL: https://codereview.chromium.org/1763973002
2016-03-03 18:18:25 -08:00
halcanary
e38bcaf24b Revert of enforce 16byte alignment in shader contexts (patchset #1 id:1 of https://codereview.chromium.org/1759653004/ )
Reason for revert:

Test-Win8-MSVC-ShuttleB-CPU-AVX2-x86-Debug failed dm:

	....
    FYI: loaded 23439 distinct uninteresting hashes from 23439 lines
    Skipping config gpu: Don't understand 'gpu'.
    Skipping config msaa16: Don't understand 'msaa16'.
    168400 srcs * 7 sinks + 481 tests == 1179281 tasks
    0ns elapsed, 5 active, 1179276 queued, 55MB RAM, 55MB peak
        565 gm  xfermodes2
        565 gm  xfermodes
        565 gm  xfermodeimagefilter
        565 gm  xfermodes3
        565 gm  verylarge_picture_image
    c:\0\build\slave\workdir\build\skia\src\core\skshader.cpp:108:
        fatal error: ""(0 == ((size) & 15))""
    step returned non-zero exit code: 3
    @@@STEP_FAILURE@@@

Original issue's description:
> enforce 16byte alignment in shader contexts
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1759653004
>
> Committed: https://skia.googlesource.com/skia/+/d812fb458807245daa812adb7af0733cf5b54d96

TBR=mtklein@google.com,fmalita@chromium.org,herb@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1759323002
2016-03-03 14:23:47 -08:00
reed
d812fb4588 enforce 16byte alignment in shader contexts
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1759653004

Review URL: https://codereview.chromium.org/1759653004
2016-03-03 13:25:25 -08:00
reed
1610835624 Revert of move annotations to canvas virtual (patchset #8 id:140001 of https://codereview.chromium.org/1744103002/ )
Reason for revert:
need to update unittest in blink:

FAILED: /b/build/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/WebKit/Source/core/page/webkit_unit_tests.PrintContextTest.o.d -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=2 -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORE=0 -DCHROMIUM_BUILD -DCR_CLANG_REVISION=261368-1 -DCOMPONENT_BUILD -DUSE_LIBJPEG_TURBO=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DENABLE_TOPCHROME_MD=1 -DDCHECK_ALWAYS_ON=1 -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DBLINK_IMPLEMENTATION=1 -DINSIDE_BLINK -DMOJO_USE_SYSTEM_IMPL -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DCHROME_PNG_WRITE_SUPPORT -DPNG_USER_CONFIG -DENABLE_LAYOUT_UNIT_IN_INLINE_BOXES=0 -DWTF_USE_CONCATENATED_IMPULSE_RESPONSES=1 -DENABLE_INPUT_MULTIPLE_FIELDS_UI=1 -DWTF_USE_ICCJPEG=1 -DWTF_USE_QCMSLIB=1 -DENABLE_OILPAN=1 -DUNIT_TEST -DGTEST_HAS_RTTI=0 -DV8_SHARED -DUSING_V8_SHARED -DUSE_LIBPCI=1 -DUSE_OPENSSL=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen -I../../third_party/WebKit/public/web -I../../third_party/WebKit/Source/web -I../../third_party/WebKit/Source/web/src -I../../third_party/WebKit/public/web/mac -I../.. -I../../skia/config -I../../third_party/WebKit/Source -I../../third_party/khronos -I../../gpu -Igen/angle -I../../third_party/WebKit -I../../skia/ext -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/utils/mac -I../../third_party/icu/source/common -I../../third_party/npapi -I../../third_party/npapi/bindings -I../../third_party/libpng -I../../third_party/ots/include -I../../third_party/qcms/src -I../../third_party/iccjpeg -I../../third_party/libjpeg_turbo -I../../third_party/WebKit -I../../third_party/icu/source/i18n -I../../testing/gmock/include -I../../testing/gtest/include -I../../third_party/libwebp -I../../third_party/zlib -I../../v8/include -Igen/blink -isysroot /Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -O0 -fvisibility=hidden -Werror -mmacosx-version-min=10.6 -arch x86_64 -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-selector-type-mismatch -Wpartial-availability -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wexit-time-destructors -std=c++11 -stdlib=libc++ -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics -Xclang -load -Xclang /b/build/slave/mac/build/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -fcolor-diagnostics -fno-strict-aliasing -Xclang -load -Xclang /b/build/slave/mac/build/src/third_party/llvm-build/Release+Asserts/lib/libBlinkGCPlugin.dylib -Xclang -add-plugin -Xclang blink-gc-plugin -Xclang -plugin-arg-blink-gc-plugin -Xclang enable-oilpan -Xclang -plugin-arg-blink-gc-plugin -Xclang warn-raw-ptr -fstack-protector-all  -c ../../third_party/WebKit/Source/core/page/PrintContextTest.cpp -o obj/third_party/WebKit/Source/core/page/webkit_unit_tests.PrintContextTest.o
../../third_party/WebKit/Source/core/page/PrintContextTest.cpp:54:20: error: no member named 'getAnnotation' in 'SkPaint'
        if (!paint.getAnnotation())
             ~~~~~ ^

Original issue's description:
> move annotations to canvas virtual
>
> In an effort to do it all at once, this change assumes that its ok to ignore annotations that were previously stored on paints in old SKP files (since this feature is only interesting to PDF printing).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744103002
>
> Committed: https://skia.googlesource.com/skia/+/0eda2587cc9233066cb3f3fec08f35c061780f8e

TBR=halcanary@google.com,fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1761793003
2016-03-03 09:14:36 -08:00
reed
0eda2587cc move annotations to canvas virtual
In an effort to do it all at once, this change assumes that its ok to ignore annotations that were previously stored on paints in old SKP files (since this feature is only interesting to PDF printing).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744103002

Review URL: https://codereview.chromium.org/1744103002
2016-03-03 08:13:54 -08:00
bungeman
beab9e7ba0 Add operator* and operator safe-bool to sk_sp.
This greatly reduces the need to use '.get()' in conditionals.

Review URL: https://codereview.chromium.org/1760453004
2016-03-03 07:50:49 -08:00
kkinnunen
f655e9330e Revert of Implement support for using GL ES 3.0 with command buffer (patchset #6 id:100001 of https://codereview.chromium.org/1684413003/ )
Reason for revert:
The dependency, ES3 implementation in command_buffer_gles2, got reverted.

Original issue's description:
> Implement support for using GL ES 3.0 with command buffer
>
> Adds a new 'api': --config gpu(api=commandbuffer3) for dm/nanobench.
>
> BUG=skia:4943
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684413003
>
> Committed: https://skia.googlesource.com/skia/+/45c2c8166bbd84a87e29fdd344b39e36e8a28a3f

TBR=bsalomon@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:4943
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744963002

Review URL: https://codereview.chromium.org/1744963002
2016-03-03 07:39:49 -08:00
reed
e2b0a0a034 update SkSmallAllocator to force internal allocations to be 16-byte aligned
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1755293002

Review URL: https://codereview.chromium.org/1755293002
2016-03-02 13:03:46 -08:00
robertphillips
391395dcfb Begin weaning GrClipMaskManager off of GrDrawTarget (take 2)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754563003

Committed: https://skia.googlesource.com/skia/+/86c60758e9e4f9e203d7462cb22b2a245a0f51bd

Review URL: https://codereview.chromium.org/1754563003
2016-03-02 09:26:36 -08:00
robertphillips
8b8f36fc49 Revert of Begin weaning GrClipMaskManager off of GrDrawTarget (take 2) (patchset #7 id:120001 of https://codereview.chromium.org/1754563003/ )
Reason for revert:
fAuditTrail

Original issue's description:
> Begin weaning GrClipMaskManager off of GrDrawTarget (take 2)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754563003
>
> Committed: https://skia.googlesource.com/skia/+/86c60758e9e4f9e203d7462cb22b2a245a0f51bd

TBR=joshualitt@chromium.org,bsalomon@google.com,joshualitt@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1754353002
2016-03-02 08:53:12 -08:00
robertphillips
86c60758e9 Begin weaning GrClipMaskManager off of GrDrawTarget (take 2)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754563003

Review URL: https://codereview.chromium.org/1754563003
2016-03-02 08:43:13 -08:00
joshualitt
46b301d222 add /img/n/m endpoint to skiaserve
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1755563003

Review URL: https://codereview.chromium.org/1755563003
2016-03-02 08:32:37 -08:00
halcanary
89bd99bed8 sk_sp: remove explicit operator bool()
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1757593005

Review URL: https://codereview.chromium.org/1757593005
2016-03-02 08:21:39 -08:00
joshualitt
f55c364485 Wire up stack traces again
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1749163002

Review URL: https://codereview.chromium.org/1749163002
2016-03-02 08:11:34 -08:00
halcanary
cb6cb3841a sk_sp: Covariant Move Constructor and Move Assignment
Also Covariant Copy Constructor, Copy Assignment,
and comparison operators.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1752093002

Review URL: https://codereview.chromium.org/1752093002
2016-03-02 08:11:26 -08:00
halcanary
217c0b3f13 sk_make_sp<T>()
because
    auto atm = sk_make_sp<SkAdvancedTypefaceMetrics>();
is better than
    sk_sp<SkAdvancedTypefaceMetrics> atm(new SkAdvancedTypefaceMetrics);

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1753973002

Review URL: https://codereview.chromium.org/1753973002
2016-03-02 08:06:20 -08:00
robertphillips
4bc31815ba Make GrDrawContext::internalDrawPath cons up its own GrPipelineBuilder
Hopefully, this better defines (and reduces) the lifetime and reuse of GrPipelineBuilder objects in GrDrawContext.

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1730903007

Committed: https://skia.googlesource.com/skia/+/00fddebe56fabea67dcc08762805c1294eebf5bf

Review URL: https://codereview.chromium.org/1730903007
2016-03-01 12:22:49 -08:00
joshualitt
df3f2b0948 Move some GrAuditTrail fuctions to cpp file
TBR=ethannicholas@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1753753002

Review URL: https://codereview.chromium.org/1753753002
2016-03-01 07:47:56 -08:00
reed
bb7b043b2d isolate sk_sp from larger cl
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1752683002

Review URL: https://codereview.chromium.org/1752683002
2016-03-01 07:28:51 -08:00
joshualitt
1d7decffbc SkDebugCanvas ignore batch bounds if they are offscreen
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754633002

Review URL: https://codereview.chromium.org/1754633002
2016-03-01 07:15:52 -08:00
robertphillips
000958973f Move drawDRRect back to GrDrawContext
This still leaves GrDrawContext fiddling around with specialized fragment processors but it does allow for different handling of the DRRects (e.g., for instanced drawing).

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1750533003

Review URL: https://codereview.chromium.org/1750533003
2016-02-29 13:50:40 -08:00
bsalomon
84a4e5a8d6 Remove internal calls to SkImage::getTexture
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744243002

Review URL: https://codereview.chromium.org/1744243002
2016-02-29 11:41:52 -08:00
joshualitt
10d8fc29bc Render batch bounds as stroke rects
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1745063002

Review URL: https://codereview.chromium.org/1745063002
2016-02-29 11:15:06 -08:00
mtklein
15923c9e47 Modernize SkSpinlock.
- Use std::atomic directly.
 - No more need for SkPODSpinlock or SK_DECLARE_STATIC_SPINLOCK.

Now simple code like this works as you'd hope:
    static SkSpinlock gLock;

That is, it starts unlocked and there's no static initializer.

std::atomic_flag would make this terser and standard-guaranteed,
but ATOMIC_FLAG_INIT caused not-yet-implemented errors on MSVC 2013.
The generated code for this approach is identical.

It appears the implicit constructor is constexpr when all the member
initializers are.  I'm hoping this way of producing constexpr constructors
without typing "constexpr" gives us a way to eliminate more SkFoo / SkBaseFoo
distinctions and SK_DECLARE_STATIC_FOO.  This was certainly the easiest.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1734383002

Review URL: https://codereview.chromium.org/1734383002
2016-02-29 10:14:38 -08:00
joshualitt
b95c772d45 Add abilitly to query audit trail for batches by draw op
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1745513002

Committed: https://skia.googlesource.com/skia/+/9b48a6e3f862076018cc7d63b180b6340f4873cd

Review URL: https://codereview.chromium.org/1745513002
2016-02-29 07:44:02 -08:00
bsalomon
e93c17b35a Remove legacy Budgeted enum aliases from SkSurface
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1743233002

Review URL: https://codereview.chromium.org/1743233002
2016-02-29 07:06:22 -08:00
joshualitt
08fc80704d Revert of Add abilitly to query audit trail for batches by draw op (patchset #4 id:60001 of https://codereview.chromium.org/1745513002/ )
Reason for revert:
kInvalidID conflicts with an older xCode #define

Original issue's description:
> Add abilitly to query audit trail for batches by draw op
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1745513002
>
> Committed: https://skia.googlesource.com/skia/+/9b48a6e3f862076018cc7d63b180b6340f4873cd

TBR=ethannicholas@google.com,jcgregorio@google.com,joshualitt@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1747893002
2016-02-29 06:32:24 -08:00
joshualitt
9b48a6e3f8 Add abilitly to query audit trail for batches by draw op
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1745513002

Review URL: https://codereview.chromium.org/1745513002
2016-02-29 05:20:38 -08:00
reed
7f4b1b20b0 move drawextrapatheffect header into animator
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1747753002

TBR=caryclark@google.com

Review URL: https://codereview.chromium.org/1747753002
2016-02-28 12:46:29 -08:00
reed
fa82348a39 remove unused view helpers
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744043002

TBR=

Review URL: https://codereview.chromium.org/1744043002
2016-02-27 19:41:54 -08:00
reed
60d0259486 remove unused view files
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1745813002

TBR=

Review URL: https://codereview.chromium.org/1745813002
2016-02-27 13:32:44 -08:00
reed
6b2af12a39 remove unneeded view subclasses
no doubt, more deletes will follow...
goodbye old friends

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1740383002

TBR=

Review URL: https://codereview.chromium.org/1740383002
2016-02-27 12:51:30 -08:00
brucedawson
0fe12bcfb7 Revert of Add non-inline SkRTreeFactory constructor to fix clang-cl (patchset #2 id:20001 of https://codereview.chromium.org/1676833002/ )
Reason for revert:
This workaround should no longer be needed, per comment#16 from
thakis@ on the original CL.

Original issue's description:
> Add non-inline SkRTreeFactory constructor to fix clang-cl
>
> When Chromium is switched to build with VS 2015 that switches clang-cl
> to build in -fmsc-version=1900 mode. This causes some changes in
> importing of constructors and vftables which leads to link errors in
> blink_platform.dll. Adding a non-inline constructor makes 1900 mode
> behave consistently with 1800 mode and avoids the link error.
>
> The root cause needs investigation but this will unblock the VS 2015
> switch.
>
> BUG=440500,498544
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676833002
>
> Committed: https://skia.googlesource.com/skia/+/964eec67760196585954203ba625e440607f7e92

TBR=reed@google.com,bsalomon@google.com,mtklein@chromium.org,thakis@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=440500,498544

Review URL: https://codereview.chromium.org/1739363002
2016-02-26 16:31:12 -08:00
cblume
55f2d2d57f Creating functions for uploading a mipmapped texture.
BUG=476416
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1249543003

Review URL: https://codereview.chromium.org/1249543003
2016-02-26 13:20:48 -08:00
cdalton
87332103c6 Replace fWillReadFragmentPosition with a bitfield
Replaces fWillReadFragmentPosition on GrProcessor with a
"RequiredFeatures" bitfield. This will allow us to add additional
built-in features. Completely removes information about reading the
fragment position from GrPipeline and GrProcOptInfo.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1734163002

Review URL: https://codereview.chromium.org/1734163002
2016-02-26 12:22:02 -08:00
cdalton
eb79eea617 Include glGetMultisamplefv API
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720963002

Committed: https://skia.googlesource.com/skia/+/69c1b24bcaa7cffd59753a75a7f3d155696fcac4

Review URL: https://codereview.chromium.org/1720963002
2016-02-26 10:39:34 -08:00
joshualitt
18d6b75829 Add batchlist managment to GrAuditTrail
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1724243004

Review URL: https://codereview.chromium.org/1724243004
2016-02-26 08:07:50 -08:00
caryclark
952538ed50 fix undefined signed shifts
The expression (1 << 31) is technically undefined.

Fixed the undefined shift referenced by this bug and
a few friends.

R=reed@google.com
BUG=skia:2285
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1737363002

Review URL: https://codereview.chromium.org/1737363002
2016-02-26 05:01:42 -08:00
ericrk
82e26bf239 Revert of Skia Filter Quality and Scaling Metrics (patchset #3 id:60001 of https://codereview.chromium.org/1686203002/ )
Reason for revert:
reverting this to address Ilya's comments.

Original issue's description:
> Skia Filter Quality and Scaling Metrics
>
> Adds histogram metrics to log the filter quality and scale factor of
> each image draw. To make the data easier to consume, this is broken
> down into a number of individual histograms:
> - Filter quality across all draw calls
> - Scale amount across all draw calls
> - Scale amount per filter quality (4 histograms total)
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686203002
>
> Committed: https://skia.googlesource.com/skia/+/f57b3a6e4a002caf01378832cbd756c6c163a783

TBR=bsalomon@google.com,isherman@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1735423002
2016-02-25 22:15:29 -08:00
ethannicholas
d2c7791233 Revert of Make GrDrawContext::internalDrawPath cons up its own GrPipelineBuilder (patchset #3 id:40001 of https://codereview.chromium.org/1730903007/ )
Reason for revert:
Got a GL-related crash in nanobench:

https://uberchromegw.corp.google.com/i/client.skia.android/builders/Perf-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release/builds/3815/steps/nanobench/logs/stdio

Given we're about to branch and this is the only GL-related change in the blamelist, I'm going to assume this is responsible and revert.

Original issue's description:
> Make GrDrawContext::internalDrawPath cons up its own GrPipelineBuilder
>
> Hopefully, this better defines (and reduces) the lifetime and reuse of GrPipelineBuilder objects in GrDrawContext.
>
> TBR=bsalomon@google.com
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1730903007
>
> Committed: https://skia.googlesource.com/skia/+/00fddebe56fabea67dcc08762805c1294eebf5bf

TBR=joshualitt@chromium.org,bsalomon@google.com,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1737373002
2016-02-25 13:43:16 -08:00
robertphillips
00fddebe56 Make GrDrawContext::internalDrawPath cons up its own GrPipelineBuilder
Hopefully, this better defines (and reduces) the lifetime and reuse of GrPipelineBuilder objects in GrDrawContext.

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1730903007

Review URL: https://codereview.chromium.org/1730903007
2016-02-25 12:56:50 -08:00
ericrk
f57b3a6e4a Skia Filter Quality and Scaling Metrics
Adds histogram metrics to log the filter quality and scale factor of
each image draw. To make the data easier to consume, this is broken
down into a number of individual histograms:
- Filter quality across all draw calls
- Scale amount across all draw calls
- Scale amount per filter quality (4 histograms total)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686203002

Review URL: https://codereview.chromium.org/1686203002
2016-02-25 11:21:57 -08:00
benjaminwagner
f6bfccd562 Cleanups related to SkFixed.
This CL relands https://codereview.chromium.org/1683743005/ with two fixes:
  - Removing the test for vertical text. Vertical text doesn't work on Windows and breakText isn't supported for non-trivial text.
  - Omit PaintBreakTextTest in Google3 because we don't have the correct font setup yet.

Remove SK_FixedNaN. It does not seem to be supported or used anywhere in Skia, Chromium, Android, or Google3, (except accidentally by TwoPtRadial::kDontDrawT). I think supporting it would erase any benefit of SkFixed over float.

Remove SkBitmapFilter::lookup. It does not appear to be used anywhere in Skia, Chromium, Android, or Google3.

Fix a bug in SkPaint::breakText that limited it to ~5kB of text. Now it can handle more than 1GB.

BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683743005

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

patch from issue 1683743005 at patchset 120001 (http://crrev.com/1683743005#ps120001)

Review URL: https://codereview.chromium.org/1739453002
2016-02-25 10:28:11 -08:00
robertphillips
d77061067a Mv DRRect drawing code from GrDrawContext into SkGpuDevice
This is a TODO left over from https://codereview.chromium.org/1731413002/ (Hide GrDrawTarget from GrOvalRenderer). It is desireable since the GrDrawContext doesn't, in general, manipulate GrFragmentProcessors.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1733993003

Review URL: https://codereview.chromium.org/1733993003
2016-02-25 09:28:08 -08:00
bsalomon
5ec26ae9bf Move Budgeted enum out of SkSurface, use in GrTextureProvider
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005
DOCS_PREVIEW= https://skia.org/?cl=1728093005

Committed: https://skia.googlesource.com/skia/+/57599fe6c0336feaeeeb9b1996e77b70219b483c
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot

Review URL: https://codereview.chromium.org/1728093005
2016-02-25 08:33:02 -08:00
bsalomon
bd500f09ce Revert of Move Budgeted enum out of SkSurface, use in GrTextureProvider (patchset #6 id:100001 of https://codereview.chromium.org/1728093005/ )
Reason for revert:
Need workaround for chrome to build

Original issue's description:
> Move Budgeted enum out of SkSurface, use in GrTextureProvider
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005
> DOCS_PREVIEW= https://skia.org/?cl=1728093005
>
> Committed: https://skia.googlesource.com/skia/+/57599fe6c0336feaeeeb9b1996e77b70219b483c

TBR=reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1734043002
2016-02-25 06:52:12 -08:00
bsalomon
57599fe6c0 Move Budgeted enum out of SkSurface, use in GrTextureProvider
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005
DOCS_PREVIEW= https://skia.org/?cl=1728093005

Review URL: https://codereview.chromium.org/1728093005
2016-02-25 06:33:27 -08:00
kkinnunen
45c2c8166b Implement support for using GL ES 3.0 with command buffer
Adds a new 'api': --config gpu(api=commandbuffer3) for dm/nanobench.

BUG=skia:4943
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684413003

Review URL: https://codereview.chromium.org/1684413003
2016-02-25 02:03:43 -08:00
ericrk
f7b8b8affe Add wrapBackendTextureAsRenderTarget API
Skia's GrTextureProvider currently exposes two APIs for wrapping backend
objects:
 * wrapBackendTexture - wraps a texture into a GrTexture. Depending on
   flags, this GrTexture can be converted to a GrRenderTarget. Skia
   manages the render target objects it may create to provide a render
   target for the texture. This allows Skia to create stencil buffers
   if needed and manager MSAA resolves.
 * wrapBackendRenderTarget - wraps a FBO into a GrRenderTarget. This
   object cannot be converted to a GrTexture. Skia does not manage
   the render target objects for such a GrRenderTarget, and as such
   cannot attach stencil buffers or perform MSAA resolves on the
   created GrRenderTarget.

Given these two options, wrapBackendTexture provides more versatility
and allows Skia more room for optimization. Chrome currently uses
wrapBackendTexture for this reason.

While these two functions cover most cases, they do not provide a way
for Skia to wrap a texture into a render target (and gain the MSAA and
stencil buffer management), without also creating a GrTexture. This is
problematic in cases where a texture can be bound to a render target,
but cannot be textured from, as is the case in Chrome's limited support
for GL_TEXTURE_RECTANGLE.

To address this, a new function is created:
 * wrapBackendTextureAsRenderTarget - wraps a texture into a
   GrRenderTarget. As with wrapBackendTexture, the created render
   target objects are fully managed by Skia. Unlike wrapBackendTexture
   no GrTexture is created, and the created object will never be
   textured from.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1709163003

Review URL: https://codereview.chromium.org/1709163003
2016-02-24 14:49:52 -08:00
benjaminwagner
f156ea3c3e Change SkUnitScalarClampToByte to more accurate implementation.
The previous implementation was likely more efficient when SkScalar was SkFixed.

BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691403002

Review URL: https://codereview.chromium.org/1691403002
2016-02-24 10:07:52 -08:00
benjaminwagner
c2d35d8513 Revert of Simple cleanups related to SkFixed. (patchset #4 id:120001 of https://codereview.chromium.org/1683743005/ )
Reason for revert:
New test is failing on Windows.

Original issue's description:
> Cleanups related to SkFixed.
>
> Remove SK_FixedNaN. It does not seem to be supported or used anywhere in Skia, Chromium, Android, or Google3, (except accidentally by TwoPtRadial::kDontDrawT). I think supporting it would erase any benefit of SkFixed over float.
>
> Remove SkBitmapFilter::lookup. It does not appear to be used anywhere in Skia, Chromium, Android, or Google3.
>
> Fix a bug in SkPaint::breakText that limited it to ~5kB of text. Now it can handle more than 1GB.
>
> BUG=skia:4632
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683743005
>
> Committed: https://skia.googlesource.com/skia/+/7ea5cb18389db11a94175de95c9db2b44972630c

TBR=mtklein@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4632

Review URL: https://codereview.chromium.org/1724283003
2016-02-24 08:29:11 -08:00
ethannicholas
f15b07b75c Revert of Include glGetMultisamplefv API (patchset #1 id:1 of https://codereview.chromium.org/1720963002/ )
Reason for revert:
This is in the blamelist for Visualbench failures:

https://build.chromium.org/p/client.skia/builders/Perf-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release-VisualBench/builds/1035

and seems the most likely candidate for the failure, so I am tentatively reverting.

Original issue's description:
> Include glGetMultisamplefv API
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720963002
>
> Committed: https://skia.googlesource.com/skia/+/69c1b24bcaa7cffd59753a75a7f3d155696fcac4

TBR=bsalomon@google.com,joshualitt@google.com,cdalton@nvidia.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1731333002
2016-02-24 08:19:04 -08:00
benjaminwagner
7ea5cb1838 Cleanups related to SkFixed.
Remove SK_FixedNaN. It does not seem to be supported or used anywhere in Skia, Chromium, Android, or Google3, (except accidentally by TwoPtRadial::kDontDrawT). I think supporting it would erase any benefit of SkFixed over float.

Remove SkBitmapFilter::lookup. It does not appear to be used anywhere in Skia, Chromium, Android, or Google3.

Fix a bug in SkPaint::breakText that limited it to ~5kB of text. Now it can handle more than 1GB.

BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683743005

Review URL: https://codereview.chromium.org/1683743005
2016-02-24 06:51:52 -08:00
reed
8f7b0b2d80 simplify/unify xferproc api
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1721223002

Review URL: https://codereview.chromium.org/1721223002
2016-02-24 06:21:36 -08:00
fmalita
ca058f57a3 Retire SkShader::kSupports4f_Flag
No longer used except in one test.

Introduce kPrefers4f_Flag instead.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1726983002

Review URL: https://codereview.chromium.org/1726983002
2016-02-23 19:02:20 -08:00
cdalton
69c1b24bca Include glGetMultisamplefv API
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720963002

Review URL: https://codereview.chromium.org/1720963002
2016-02-23 13:38:47 -08:00
bungeman
ccb74b824a Move SkPackBits to src/effects.
Prior to this change SkPackBits.h was in include/core and SkPackBits.cpp
in src/core. However, SkPackBits appears to have been written
specifically as an implementation detail of the SkTableColorFilter
effect. This change moves SkPackBits out of core and into effects, which
is the only current user.

Review URL: https://codereview.chromium.org/1722173003
2016-02-23 12:55:20 -08:00
benjaminwagner
d936f63c35 Simplify and combine SkDrawCacheProc and SkMeasureCacheProc to SkPaint::GlyphCacheProc.
All callers of (the result of) SkPaint::getDrawCacheProc were passing zero as the last two arguments. This is the same as (the result of) SkPaint::getMeasureCacheProc(true).

Per bungeman, make this typedef a member of SkPaint.

Although the typedef is technically public, the only uses are private, so this is not really an API change.

TBR=reed
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1718423002

Review URL: https://codereview.chromium.org/1718423002
2016-02-23 10:44:32 -08:00