History log of /external/skia/src/image/SkImage_Gpu.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
38784599f39026f54aa56b3c6e34afc15e00abd6 08-May-2018 Leon Scroggins III <scroggo@google.com> Cherry-pick of "Make GPU lattice/nine patch not bleed across cells."

Consolidate code for handling various image/bitmap and lattice/ninepatch flavors.

Makes refTextureForParams virtual on GrTextureProducer. Previously both subclasses had non-virtual flavors of this.

Bug: b/77917978

Reviewed-on: https://skia-review.googlesource.com/125520
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

No-Tree-Checks: true
No-Try: true
No-Presubmit: true
Conflicts:
src/gpu/GrTextureAdjuster.cpp:
- https://skia-review.googlesource.com/114985 switched from
gpu->isACopyNeededForTextureParams to a static version. Continue
using the old version, as the static version does not yet exist.
Restore check for !gpu
- https://skia-review.googlesource.com/121104 added an assert. Comment
it out.
src/gpu/GrTextureMaker.cpp:
- https://skia-review.googlesource.com/121104 added a check for max
texture size. Comment it out.
src/gpu/ops/GrLatticeOp.cpp:
- Did not come up in the cherry-pick, but a logical conflict appeared
when building DM. https://skia-review.googlesource.com/111806 moved
GrSurfaceOrigin from GrSurfaceDesc to the proxy. In this branch, we
need to set it on GrSurfaceDesc.

Change-Id: I9dcb9ebf7432549ac35000b683094e3dc0fa1ede
Reviewed-on: https://skia-review.googlesource.com/126824
Reviewed-by: Leon Scroggins <scroggo@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
366093f2124c38fa5c590c9ed2d1811817fed8ee 13-Feb-2018 Brian Salomon <bsalomon@google.com> Make it so that GrSurfaceContext with a sRGB GrPixelConfig must have a
color space with a sRGB-like gamma.

Change-Id: I99b80a9846caacd6848b0f9f55ed0f7f23e69b90
Reviewed-on: https://skia-review.googlesource.com/106640
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
bc54fadf610b8d17165735d55de431a47fde9349 09-Feb-2018 Greg Daniel <egdaniel@google.com> Refactor GrUploadPixmap logic into MakeCrossContextFromPixmap

MakeCrossContextPixmap was the only place we were using the helper in
SkGr, so this just shifts the logic into MakeCrosscontextFromPixmap.

Bug: skia:
Change-Id: I90126227ebacf889f9899ef7af9608a5664c582d
Reviewed-on: https://skia-review.googlesource.com/106280
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
308150821517a4dc73e43db1022d3e8bd589d2db 09-Feb-2018 Greg Daniel <egdaniel@google.com> Remove unused code resulted from deleting DeferredTextureImage

Bug: skia:
Change-Id: Iaedc09880bd6a2d8fda4ce52f1644a944dd72605
Reviewed-on: https://skia-review.googlesource.com/106266
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
67f8584b6f899876ca4187dba4f449ce5489f9c8 09-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Remove SkImage deferred texture image data APIs.""

This reverts commit aae533e418f37d788cdb1a1177e882d0f8868b62.

Change-Id: I0434892d8946490a75e17620c49c594eaa18158e
Reviewed-on: https://skia-review.googlesource.com/100603
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9e788116c17406ed655127770148de6f33e262c7 08-Feb-2018 Greg Daniel <egdaniel@google.com> Don't allow DDL GrContexts to MakeCrossContextFromPixmap

This call requires making a texture and semaphore from the main context
which are consumed on another context. If we have a DDL context we don't
have the ability to make the texture or semaphore used here.

Bug: skia:
Change-Id: If82f8da6484608e3582203ea6e6ef723928a3b0c
Reviewed-on: https://skia-review.googlesource.com/105761
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
a4ead65e2c80b6e649f31e28e8fa116aca83fad4 07-Feb-2018 Greg Daniel <egdaniel@google.com> Add function to GrProxyProvider to lazily upload mip map data

Bug: skia:
Change-Id: I906207727242bed8a109bf3ca10b5a6e8e4b952e
Reviewed-on: https://skia-review.googlesource.com/104581
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9708af826cab6f7194aa852922e53cccbc7fd0a3 05-Feb-2018 Brian Salomon <bsalomon@google.com> Add test for reading back from unpremul texture image

The unpremul->unpremul readback doesn't work today. GrSurfaceContext doesn't track an alpha type and whenever we read into an unpremul buffer we unpremul the texture's colors since we assume they were premuled.

Bug: 7580

Change-Id: I307a168799f27b2015e082cf6adde26b906cfe2b
Reviewed-on: https://skia-review.googlesource.com/103780
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
bdecacfbe47bc7211336bb847bb33c00ef85ea3e 03-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""""

This reverts commit 3a2cc2c2ec124de36d2544b2a523ef1dd317ca32.

Fix code with samplecnt=0 that slipped in between trybots/CQ and landing of previous version

Change-Id: Iab19f2e8d1e9901601c8c76244d7a88c5d707fab
Reviewed-on: https://skia-review.googlesource.com/103181
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
3a2cc2c2ec124de36d2544b2a523ef1dd317ca32 03-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend."""""

This reverts commit 5bb82cbecd740d21b92e8d2944280ab6eb6af7a6.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""
>
> This reverts commit 18c52a7b52211de5d0dcd86dc048adef758c6c75.
>
> Also relands "More sample count cleanup:" and "Add new GrContext queries for imagability, surfacability, and max sample count of color types"
>
>
> Bug: skia:
> Change-Id: I4028105a3a1f16ce3944e134619eb6245af6b947
> Reviewed-on: https://skia-review.googlesource.com/102940
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=egdaniel@google.com,bsalomon@google.com

Change-Id: Idee23be2f1719f0bdc9305043e95a2d589bee8d1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/103220
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
5bb82cbecd740d21b92e8d2944280ab6eb6af7a6 02-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""

This reverts commit 18c52a7b52211de5d0dcd86dc048adef758c6c75.

Also relands "More sample count cleanup:" and "Add new GrContext queries for imagability, surfacability, and max sample count of color types"


Bug: skia:
Change-Id: I4028105a3a1f16ce3944e134619eb6245af6b947
Reviewed-on: https://skia-review.googlesource.com/102940
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
18c52a7b52211de5d0dcd86dc048adef758c6c75 02-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend."""

This reverts commit d0d7270fcc32546005b8e847df516cb11592cd30.

Revert "More sample count cleanup:"

This reverts commit d653cac70ed17983125ceed053138c09f1401846.

Revert "Add new GrContext queries for imagability, surfacability, and max sample count of color types"

This reverts commit 85ae7159c9c8a9186a4c7e74304eabb35bca9a79.


Need to understand NVPR perf changes before relanding

Change-Id: I0db075fb42438ef2a1f9885df184dce52892ac4b
Reviewed-on: https://skia-review.googlesource.com/102780
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d0d7270fcc32546005b8e847df516cb11592cd30 01-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Redefine the meaning of sample counts in GPU backend.""

Fixes gpu config default samples to be 1 and updates config parsing test accordingly.

This reverts commit c1ce2f7966babaae0deb150f93f1227ee5af9285.

Bug: skia:
Change-Id: I456973b1f52ced85a2011ea10fc49449bfc5846f
Reviewed-on: https://skia-review.googlesource.com/102147
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
c1ce2f7966babaae0deb150f93f1227ee5af9285 01-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Redefine the meaning of sample counts in GPU backend."

This reverts commit 48825b11ad25c98b9a4884d5cc0edd4e290c4409.

Reason for revert: nanobench

Original change's description:
> Redefine the meaning of sample counts in GPU backend.
>
> Old: 0 -> nonMSAA
> 1+ -> MSAA
>
> New:
> 0 -> error/unsupported
> 1 -> nonMSAA
> 2+ -> MSAA
>
> We still allow 0 to mean nonMSAA in three sets of public APIs for backwards compatibility:
>
> 1) SkSurface factories
> 2) GrBackendRenderTarget constructors
> 3) GrCaps::getSampleCnt()'s requestedCount parameter
>
> However, we immediately clamp to 1 and treat 0 as invalid/non-renderable internally.
>
> This also changes the behavior when using a large sample count. We now fail in that case rather than using the largest sample available sample count. GrCaps::getSampleCount() will return 0 in this case.
>
>
> Bug: skia:
> Change-Id: Ida22c6b22c1365e563c9046b611e88bf5eb3ff33
> Reviewed-on: https://skia-review.googlesource.com/101560
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=egdaniel@google.com,bsalomon@google.com

Change-Id: Ic257619a8a5ee9ac15419ecf10259e42daed7f82
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/102662
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
48825b11ad25c98b9a4884d5cc0edd4e290c4409 01-Feb-2018 Brian Salomon <bsalomon@google.com> Redefine the meaning of sample counts in GPU backend.

Old: 0 -> nonMSAA
1+ -> MSAA

New:
0 -> error/unsupported
1 -> nonMSAA
2+ -> MSAA

We still allow 0 to mean nonMSAA in three sets of public APIs for backwards compatibility:

1) SkSurface factories
2) GrBackendRenderTarget constructors
3) GrCaps::getSampleCnt()'s requestedCount parameter

However, we immediately clamp to 1 and treat 0 as invalid/non-renderable internally.

This also changes the behavior when using a large sample count. We now fail in that case rather than using the largest sample available sample count. GrCaps::getSampleCount() will return 0 in this case.


Bug: skia:
Change-Id: Ida22c6b22c1365e563c9046b611e88bf5eb3ff33
Reviewed-on: https://skia-review.googlesource.com/101560
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f2336e4500769bc0ff6a208289d757581b0ea91a 23-Jan-2018 Greg Daniel <egdaniel@google.com> Add lazy proxy's for wrapping backend textures

Bug: skia:
Change-Id: I3bb557cefc35312adc9515b5683d2ed747bb4eb3
Reviewed-on: https://skia-review.googlesource.com/96862
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f35fd8d2f26ef7217368d1a09d231ee68ed0cb2f 22-Jan-2018 Robert Phillips <robertphillips@google.com> Move more internal methods from GrContext to GrContextPriv (take 3)

Change-Id: Ied630e61cf95780bf85032867e6ce663e1ef9c2f
Reviewed-on: https://skia-review.googlesource.com/98000
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2914555e004676465c5255d8b42ee0d25887ac73 20-Jan-2018 Leon Scroggins <scroggo@google.com> Revert "Move more internal methods from GrContext to GrContextPriv (take 2)"

This reverts commit c22e50bd317fe3658445c04e18a6e319d746c510.

Reason for revert: Speculative fix for Android roll

Original change's description:
> Move more internal methods from GrContext to GrContextPriv (take 2)
>
> Change-Id: I47108910517d61edeb52f82793d384fdb5605d45
> Reviewed-on: https://skia-review.googlesource.com/97241
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I3a77ac33c5f48529357cf9c683d5f4cacaa2379f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/97582
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
36591e5ffe263fcab5c43456d7328da2bf9addb1 19-Jan-2018 Eric Karl <ericrk@chromium.org> Better handle context-loss in MakeBackendTextureFromSkImage

In context-loss situations, SkImage::getTexture may return nullptr,
even if SkImage::isTextureBacked() is true. Handle these cases
without crashing.

R=bsalomon@google.com

Bug: 803796
Change-Id: Ia877124160fb1893af08f839e43e3ee83c1b93ff
Reviewed-on: https://skia-review.googlesource.com/97341
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
c22e50bd317fe3658445c04e18a6e319d746c510 19-Jan-2018 Robert Phillips <robertphillips@google.com> Move more internal methods from GrContext to GrContextPriv (take 2)

Change-Id: I47108910517d61edeb52f82793d384fdb5605d45
Reviewed-on: https://skia-review.googlesource.com/97241
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
07320e46c0064dc1fe876f4621e94cb9ad529f85 19-Jan-2018 Hal Canary <halcanary@google.com> Revert "Move more internal methods from GrContext to GrContextPriv"

This reverts commit f440cecbfdf1910104f36aedd0e963da2ae8b6a8.

Reason for revert: breaking android builds.

Original change's description:
> Move more internal methods from GrContext to GrContextPriv
>
> TBR=bsalomon@google.com
> Change-Id: Ia8cf0e0d30451c69bc7a08215aafa6abe6e0ddbe
> Reviewed-on: https://skia-review.googlesource.com/97080
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: If263f8161f0fbe3fc6ee8f34bb09e237705c3694
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/97200
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f440cecbfdf1910104f36aedd0e963da2ae8b6a8 19-Jan-2018 Robert Phillips <robertphillips@google.com> Move more internal methods from GrContext to GrContextPriv

TBR=bsalomon@google.com
Change-Id: Ia8cf0e0d30451c69bc7a08215aafa6abe6e0ddbe
Reviewed-on: https://skia-review.googlesource.com/97080
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
adbe1328789071d1f742023edd93b6948eed9470 17-Jan-2018 Robert Phillips <robertphillips@google.com> Remove GrSurfaceProxy::MakeWrapped (take 2)

TBR=bsalomon@google.com
Change-Id: I26fd911da502fb00addacb8b2c1a263efc5aa4ec
Reviewed-on: https://skia-review.googlesource.com/95881
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
e201ebc995151adbe0e15cd88d7277d41c40ddbf 17-Jan-2018 Robert Phillips <robertphillips@google.com> Revert "Remove GrSurfaceProxy::MakeWrapped"

This reverts commit 2ac5868f4a695b30777c7c57ffd493fed0fa597b.

Reason for revert: Breaking Android
Original change's description:
> Remove GrSurfaceProxy::MakeWrapped
>
> Change-Id: Ic44cf1745dc3be21cbbaa1dc4ac85c8b1b21c6bb
> Reviewed-on: https://skia-review.googlesource.com/94101
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com

Change-Id: I312118106db1cf64fe959d36e65619a41d58e654
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/95860
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2ac5868f4a695b30777c7c57ffd493fed0fa597b 17-Jan-2018 Robert Phillips <robertphillips@google.com> Remove GrSurfaceProxy::MakeWrapped

Change-Id: Ic44cf1745dc3be21cbbaa1dc4ac85c8b1b21c6bb
Reviewed-on: https://skia-review.googlesource.com/94101
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
6be756b673b823881e90a2ef68c12b640ddde549 16-Jan-2018 Robert Phillips <robertphillips@google.com> Move resourceProvider accessor to GrContextPriv (take 2)

TBR=bsalomon@google.com
Change-Id: I3fd46ebfad0d04b8a2bfa6190f81308f3a6be620
Reviewed-on: https://skia-review.googlesource.com/95121
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
be46e24d57537f7ab6854fcd6f6ec07e2c50495c 16-Jan-2018 Hal Canary <halcanary@google.com> Revert "Move resourceProvider accessor to GrContextPriv"

This reverts commit 1f9ed8501b0007846b3032f4bfc38aee98c175a1.

Reason for revert:
1. breaking android roll
2. breaking Build-Debian9-Clang-arm-Release-Android_API26



Original change's description:
> Move resourceProvider accessor to GrContextPriv
>
> Change-Id: I5cddd620a7ec4b006b7359864ede58e9d4dd684e
> Reviewed-on: https://skia-review.googlesource.com/94340
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I20b2d267c0925f20453b635663654967199a1197
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/94964
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
1f9ed8501b0007846b3032f4bfc38aee98c175a1 16-Jan-2018 Robert Phillips <robertphillips@google.com> Move resourceProvider accessor to GrContextPriv

Change-Id: I5cddd620a7ec4b006b7359864ede58e9d4dd684e
Reviewed-on: https://skia-review.googlesource.com/94340
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
0bd24dc41f2351d84f5fce32130668a5792d134b 16-Jan-2018 Robert Phillips <robertphillips@google.com> Funnel most proxy creation through GrProxyProvider

This is to provide a choke point for DDL to create Lazy Proxies.

Change-Id: If178da13bc6447b31b7601810236d34502d9efbd
Reviewed-on: https://skia-review.googlesource.com/93303
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
98e38e2ac5e91eb288eaeceb5b0f36f9b2dd412a 12-Jan-2018 Mike Klein <mtklein@google.com> Revert "Revert "fix legacy makeRasterImage()""

This reverts commit ef29e42ef3d81a0e704cf0efcfc9937b531f0327.

Reason for revert: probably not either roll.

Original change's description:
> Revert "fix legacy makeRasterImage()"
>
> This reverts commit 7c4ca043361f6adb3d17a9d3db2397d86bac5a2d.
>
> Reason for revert: layout, cereal tests?
>
> Original change's description:
> > fix legacy makeRasterImage()
> >
> > Passing the color space down into SkImage_Lazy ends up triggering a
> > SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want
> > ignore (tf(r)*a) to have any hope of working with the legacy backend.
> >
> > This fix in turn needs another little extension of another old hack in
> > SkImage_Gpu for makeNonTextureImage() to keep working there.
> >
> > Bug: skia:7479
> >
> > Change-Id: If48ca68e95d9eee597f6b10434498049981314ba
> > Reviewed-on: https://skia-review.googlesource.com/93380
> > Commit-Queue: Mike Klein <mtklein@chromium.org>
> > Reviewed-by: Brian Osman <brianosman@google.com>
>
> TBR=mtklein@chromium.org,brianosman@google.com
>
> Change-Id: I65092e01d767ef1fd35563f0b79ceded3c12b267
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:7479
> Reviewed-on: https://skia-review.googlesource.com/93820
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@chromium.org,mtklein@google.com,brianosman@google.com

Change-Id: Ic9b48d311cca152ab2e620363dd4528ed382eb88
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7479
Reviewed-on: https://skia-review.googlesource.com/93960
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
ef29e42ef3d81a0e704cf0efcfc9937b531f0327 12-Jan-2018 Mike Klein <mtklein@google.com> Revert "fix legacy makeRasterImage()"

This reverts commit 7c4ca043361f6adb3d17a9d3db2397d86bac5a2d.

Reason for revert: layout, cereal tests?

Original change's description:
> fix legacy makeRasterImage()
>
> Passing the color space down into SkImage_Lazy ends up triggering a
> SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want
> ignore (tf(r)*a) to have any hope of working with the legacy backend.
>
> This fix in turn needs another little extension of another old hack in
> SkImage_Gpu for makeNonTextureImage() to keep working there.
>
> Bug: skia:7479
>
> Change-Id: If48ca68e95d9eee597f6b10434498049981314ba
> Reviewed-on: https://skia-review.googlesource.com/93380
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=mtklein@chromium.org,brianosman@google.com

Change-Id: I65092e01d767ef1fd35563f0b79ceded3c12b267
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7479
Reviewed-on: https://skia-review.googlesource.com/93820
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7c4ca043361f6adb3d17a9d3db2397d86bac5a2d 10-Jan-2018 Mike Klein <mtklein@chromium.org> fix legacy makeRasterImage()

Passing the color space down into SkImage_Lazy ends up triggering a
SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want
ignore (tf(r)*a) to have any hope of working with the legacy backend.

This fix in turn needs another little extension of another old hack in
SkImage_Gpu for makeNonTextureImage() to keep working there.

Bug: skia:7479

Change-Id: If48ca68e95d9eee597f6b10434498049981314ba
Reviewed-on: https://skia-review.googlesource.com/93380
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
1afd4cdb0800e2e395b465da24eb71e0e834dafa 08-Jan-2018 Robert Phillips <robertphillips@google.com> Add GrProxyProvider

This pulls all the proxy tracking & creation functionality out of the GrResourceCache and GrResourceProvider and consolidates it in the GrProxyProvider.

Change-Id: I7256f7c544319a70c1bd93dd5a9ccbe5fa0a544f
Reviewed-on: https://skia-review.googlesource.com/91501
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b950b5975bbbf22fec9b41b576d4d43ddfd6a208 02-Jan-2018 Mike Reed <reed@google.com> share impl between makeNonTexture and makeRaster

Bug: skia:
Change-Id: I1042e25c28b60e99b6ced44b9971d51a3ac239ee
Reviewed-on: https://skia-review.googlesource.com/90201
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7461a4abe06ffdfbb62a479a71b14895a637bba9 21-Dec-2017 Ethan Nicholas <ethannicholas@google.com> converted YUVEffect to SkSL

Bug: skia:
Change-Id: I1875e44417a0a583c4f35ee4d46856a34ba55245
Reviewed-on: https://skia-review.googlesource.com/88580
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
faa095e9842b924c20de84dce1bcc1adad7fe2e4 19-Dec-2017 Greg Daniel <egdaniel@google.com> Update SkSurface MakeFromBackend* factories to take an SkColorType.

Bug: skia:
Change-Id: Ib1b03b1181ec937843eac2e8d8cb03ebe53e32c1
Reviewed-on: https://skia-review.googlesource.com/86760
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f5d8758f29390fd5c135df12bc8a5e196854eda2 18-Dec-2017 Greg Daniel <egdaniel@google.com> Add new SkImage factory to create from GrBackendTexture with SkColorType

Bug: skia:
Change-Id: I46bdc54b6d9cdacc8f5a06644aa6b110837879f0
Reviewed-on: https://skia-review.googlesource.com/84342
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
aae533e418f37d788cdb1a1177e882d0f8868b62 16-Dec-2017 Eric Karl <ericrk@chromium.org> Revert "Remove SkImage deferred texture image data APIs."

This reverts commit 4f5e1d4ff3fa9f240398c9a08be94beb1c16dad0.

Reason for revert: Unfortunately, we need this in Chrome for a bit longer. Working on understanding why the new path led to regressions. Will re-land this once the new path sticks.

Original change's description:
> Remove SkImage deferred texture image data APIs.
>
> These APIs existed for Chrome. Chrome is no longer using them.
>
> Change-Id: I15a5e2f88c7e8d1356188748fc68d4658f6f1849
> Reviewed-on: https://skia-review.googlesource.com/81021
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Cary Clark <caryclark@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com,brianosman@google.com,caryclark@google.com,caryclark@skia.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Ic9f683f262f2e1d0469156360f5ffaee977ca44a
Reviewed-on: https://skia-review.googlesource.com/86280
Reviewed-by: Eric Karl <ericrk@chromium.org>
Commit-Queue: Eric Karl <ericrk@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
c25db637532cd10dde7855d868c0d033e96f61f2 13-Dec-2017 Robert Phillips <robertphillips@google.com> Update SkImage::MakeFromYUVTexturesCopy to GrBackendTexture

Change-Id: I7ba030c5d7856309709e892a2b1b625cf74c70b8
Reviewed-on: https://skia-review.googlesource.com/82823
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
4f5e1d4ff3fa9f240398c9a08be94beb1c16dad0 06-Dec-2017 Brian Salomon <bsalomon@google.com> Remove SkImage deferred texture image data APIs.

These APIs existed for Chrome. Chrome is no longer using them.

Change-Id: I15a5e2f88c7e8d1356188748fc68d4658f6f1849
Reviewed-on: https://skia-review.googlesource.com/81021
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
63bc48d09323a62c8c67237fc66ad6ec7105e973 07-Nov-2017 Brian Osman <brianosman@google.com> Add MakeCrossContextFromPixmap

This operates just like MakeCrossContextFromEncoded, but starting from
raster data. This version is defensive (always uses copies if a raster
image needs to be made).

Bug: skia:
Change-Id: Ibc2b9a235c89a41fbbfd022d943f15ac212d0677
Reviewed-on: https://skia-review.googlesource.com/68205
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
c77085d2e0a3ff7e908a7164ac6224ea10686739 01-Nov-2017 Greg Daniel <egdaniel@google.com> Remove content area from GrTextureAdjuster.

Bug: skia:
Change-Id: I77854ee22303afe5787bf3094bca2db1a3dcf5ef
Reviewed-on: https://skia-review.googlesource.com/66149
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
45d6303f6e8403db9499ab28494f672b2bcd034e 30-Oct-2017 Greg Daniel <egdaniel@google.com> Have mip status match surface when snapping image from wrapped object

Also fixes some bugs involved with creating mipped SkSurfaces.

Bug: skia:
Change-Id: I6e0109000eadd2bdee4a907d3ee2231104528165
Reviewed-on: https://skia-review.googlesource.com/65063
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
65c7f662ba4ec1c78dc5fc67b184ee9c7b614f55 30-Oct-2017 Greg Daniel <egdaniel@google.com> Add mip support to GrAHardwareBufferImageGenerator

Bug: skia:
Change-Id: I482d8f9937c86ed441016afef2d8f924282dd17a
Reviewed-on: https://skia-review.googlesource.com/63861
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f3569f0f6d312570c7344b345f8b3a03a892f751 24-Oct-2017 Brian Salomon <bsalomon@google.com> Add GrColorSpaceInfo and use in place of GrRenderTargetContext in paint conversion.

This moves us closer to making GrAtlasTextContext and related classes usable without a GrRenderTargetContext.

Change-Id: Ife52d69a3f925e23da88043acb4d8dc9f672a025
Reviewed-on: https://skia-review.googlesource.com/63304
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2240be96d97b5ac0886381d74a21f1e2a0928f55 18-Oct-2017 Brian Osman <brianosman@google.com> Remove color space xform from GrTextureDomain & GrSimpleTextureEffect

Bug: skia:
Change-Id: I31435d334da28cce9bbc654c4b98746b03078897
Reviewed-on: https://skia-review.googlesource.com/61460
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
914a36b248ffb538874483d86759254838866dd7 12-Oct-2017 Eric Karl <ericrk@chromium.org> MakeBackendTextureFromSkImage

Creates a static function on SkImage which converts the SkImage to a
GrBackendTexture. The texture is unowned by Skia, and must be deleted
by the caller. Allows for a no-copy / no-conversion fast path if the
provided image is unowned (unique()) and texture backed.

Change-Id: I8a48f9cc39de792725cd72057d98cd1c4594daab
Reviewed-on: https://skia-review.googlesource.com/52440
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Eric Karl <ericrk@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
a108c92ae5868ca99759a872edddb377f31ad1be 10-Oct-2017 Robert Phillips <robertphillips@google.com> Fix drawSpecialImage

W/o this fix the strict constraint on the specialImage draws can sometimes be removed. This CL ensures that the temporary SkImage always has the actual dimensions of the special Image.

Note: the replacement of full screen clears w/ draws revealed this bug b.c. the image filters were only drawing a rect for the content area of the special images. Thus when the final DAG result was drawn to the canvas some of the bleed through (from the removal of the strict constraint) was showing.

Bug: 755871, 768134
skbug.com/7122

Change-Id: Id67b7143225c24b716e260c973f3bbf68f20188a
Reviewed-on: https://skia-review.googlesource.com/57660
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
e1da1d9a7dfa6c9ebdcbd2845acebd045edd2a6f 06-Oct-2017 Greg Daniel <egdaniel@google.com> Add option to create a deferred render target context with mips

We need this since we have texture generators that draw the base level
but nothing more. Thus we want them to be able to directly draw into
a pre allocated mipped target instead of doing a copy later.

TBR: bsalomon@google.com
Bug: skia:
Change-Id: I1dfae0da7153b21b30fdfa51a7061fc255739a1e
Reviewed-on: https://skia-review.googlesource.com/54100
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f0ffb8943b7be477b769db23660a80013f3332eb 03-Oct-2017 Mike Reed <reed@google.com> Revert[4] "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"

This reverts commit 5a2e50edc51006ce91366e177a9d21a16775d7fd.

Bug: skia:
Change-Id: I8d28b5c07d90130e5a1653923740eaf189ecb954
Reviewed-on: https://skia-review.googlesource.com/53900
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
5a2e50edc51006ce91366e177a9d21a16775d7fd 02-Oct-2017 Mike Reed <reed@google.com> Revert "Revert "Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"""

This reverts commit cd284c532376d16fcc4ed75baf3da65c3e4a2e95.

Reason for revert:

assert fired in SkMallocPixelRef.cpp:61: fatal error: "assert(info.computeByteSize(rowBytes) == info.getSafeSize(rowBytes))"

google3 thinks it was from surface_rowbytes

Original change's description:
> Revert "Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap""
>
> This reverts commit 809cbedd4b252be221b2ac3b4269d312fd8f53a0.
>
> Bug: skia:
> Change-Id: I680d8daeeeeb15526b44c1305d8fb0c6bfa38e1d
> Reviewed-on: https://skia-review.googlesource.com/52665
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>

TBR=fmalita@chromium.org,reed@google.com

Change-Id: I41e3f7a3f791cc8183291847e783ed8a53bc91d2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/53802
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
cd284c532376d16fcc4ed75baf3da65c3e4a2e95 29-Sep-2017 Mike Reed <reed@google.com> Revert "Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap""

This reverts commit 809cbedd4b252be221b2ac3b4269d312fd8f53a0.

Bug: skia:
Change-Id: I680d8daeeeeb15526b44c1305d8fb0c6bfa38e1d
Reviewed-on: https://skia-review.googlesource.com/52665
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
4faa0408c1fc414263a3116a76ede20cc52b1d97 29-Sep-2017 Greg Daniel <egdaniel@google.com> Remove unused outOffset param in GrTextureAdjuster

Bug: skia:
Change-Id: Ifb5ee9d2d80badf082cf1888d2289fea6344c0e9
Reviewed-on: https://skia-review.googlesource.com/53400
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
55afd6dcee62b403ab888bb8a333c538a79041d3 29-Sep-2017 Greg Daniel <egdaniel@google.com> Revert "Revert "Update GrBitmapTextureMaker for handling mipped requests""

This reverts commit 8b059bd946d9f14607f6d2e8b966267dd8e5a54d.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Update GrBitmapTextureMaker for handling mipped requests"
>
> This reverts commit d1935c16e889b6707a522f711e79c75353caa343.
>
> Reason for revert: breaking lots of GMs, especially on gles
>
> Original change's description:
> > Update GrBitmapTextureMaker for handling mipped requests
> >
> > Specifically this updates the case when we are requesting to use mip
> > maps but there is already an unmipped version in the cache. Previously
> > we just grabbed the unmipped.
> >
> > Now we will create a new mipped resource. Upload the cpu data to all
> > the levels besides the base, copy the base level on GPU from the
> > original resource to the mipped one. Then the mipped resource will
> > take over the originals unique key.
> >
> > Bug: skia:
> > Change-Id: I38e9725c93280dc2460a0be8a7a229e7f20e1614
> > Reviewed-on: https://skia-review.googlesource.com/43840
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
>
> TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com
>
> Change-Id: Id82e8b6e8ab69e46ff018bb07ae5d1f6ea8d7e76
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/52901
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com

Bug: skia:
Change-Id: Ie5b9553aa67def6f9c5a61f9b6b065b9fce3ff76
Reviewed-on: https://skia-review.googlesource.com/53240
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
8b059bd946d9f14607f6d2e8b966267dd8e5a54d 28-Sep-2017 Greg Daniel <egdaniel@google.com> Revert "Update GrBitmapTextureMaker for handling mipped requests"

This reverts commit d1935c16e889b6707a522f711e79c75353caa343.

Reason for revert: breaking lots of GMs, especially on gles

Original change's description:
> Update GrBitmapTextureMaker for handling mipped requests
>
> Specifically this updates the case when we are requesting to use mip
> maps but there is already an unmipped version in the cache. Previously
> we just grabbed the unmipped.
>
> Now we will create a new mipped resource. Upload the cpu data to all
> the levels besides the base, copy the base level on GPU from the
> original resource to the mipped one. Then the mipped resource will
> take over the originals unique key.
>
> Bug: skia:
> Change-Id: I38e9725c93280dc2460a0be8a7a229e7f20e1614
> Reviewed-on: https://skia-review.googlesource.com/43840
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com

Change-Id: Id82e8b6e8ab69e46ff018bb07ae5d1f6ea8d7e76
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/52901
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d1935c16e889b6707a522f711e79c75353caa343 28-Sep-2017 Greg Daniel <egdaniel@google.com> Update GrBitmapTextureMaker for handling mipped requests

Specifically this updates the case when we are requesting to use mip
maps but there is already an unmipped version in the cache. Previously
we just grabbed the unmipped.

Now we will create a new mipped resource. Upload the cpu data to all
the levels besides the base, copy the base level on GPU from the
original resource to the mipped one. Then the mipped resource will
take over the originals unique key.

Bug: skia:
Change-Id: I38e9725c93280dc2460a0be8a7a229e7f20e1614
Reviewed-on: https://skia-review.googlesource.com/43840
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
809cbedd4b252be221b2ac3b4269d312fd8f53a0 28-Sep-2017 Jim Van Verth <jvanverth@google.com> Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"

This reverts commit 88757dacd4f532a0f647c02ae0ee596d31ab5c68.

Reason for revert: Still seems to be failing Chromium "telemetry_perf_unittests (with patch) on Android" on android_n5x_swarming_rel.

Original change's description:
> guard old apis for querying byte-size of a bitmap/imageinfo/pixmap
>
> Now with legacy behavior for allocpixels
>
> This was reverted, so the current CL is a "fix" on top of ...
> https://skia-review.googlesource.com/c/skia/+/50980
>
> Related update to Chrome (in preparation for this change)
> https://chromium-review.googlesource.com/c/chromium/src/+/685719
>
> Bug: skia:
> Change-Id: I4b370ee7e95083ab27421f008132219c9c7b86e9
> Reviewed-on: https://skia-review.googlesource.com/51341
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=fmalita@chromium.org,reed@google.com

Change-Id: I827a0ca1d1e3909e648fde3342cdb8601d34da8d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/52381
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
88757dacd4f532a0f647c02ae0ee596d31ab5c68 26-Sep-2017 Mike Reed <reed@google.com> guard old apis for querying byte-size of a bitmap/imageinfo/pixmap

Now with legacy behavior for allocpixels

This was reverted, so the current CL is a "fix" on top of ...
https://skia-review.googlesource.com/c/skia/+/50980

Related update to Chrome (in preparation for this change)
https://chromium-review.googlesource.com/c/chromium/src/+/685719

Bug: skia:
Change-Id: I4b370ee7e95083ab27421f008132219c9c7b86e9
Reviewed-on: https://skia-review.googlesource.com/51341
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f46633f8af5296341e33ec4cdb69c71dfa997396 26-Sep-2017 Greg Daniel <egdaniel@google.com> Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"

This reverts commit 98a6216b18b57c2f7a0d58f542c60503686aed69.

Reason for revert: breaking the chrome roll. Looks like they may be writing data to create an image across all the row bytes and thus writing to unalloced data on the last row. Link to example failing bot:
https://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/539960

Original change's description:
> guard old apis for querying byte-size of a bitmap/imageinfo/pixmap
>
> Previously we had size_t and uint64_t variations.
>
> The new (simpler) API always..
> - returns size_t, or 0 if the calculation overflowed
> - returns the trimmed size (does not include rowBytes padding for the last row)
>
> Bug: skia:
> Change-Id: I05173e877918327c7b207d2f7f1ab0db36892e2e
> Reviewed-on: https://skia-review.googlesource.com/50980
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Reviewed-by: Leon Scroggins <scroggo@google.com>

TBR=mtklein@google.com,herb@google.com,scroggo@google.com,fmalita@chromium.org,reed@google.com

Change-Id: I726f6ab1b36b14979ba6f37105e0a469b3f0dbc0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/51262
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
98a6216b18b57c2f7a0d58f542c60503686aed69 26-Sep-2017 Mike Reed <reed@google.com> guard old apis for querying byte-size of a bitmap/imageinfo/pixmap

Previously we had size_t and uint64_t variations.

The new (simpler) API always..
- returns size_t, or 0 if the calculation overflowed
- returns the trimmed size (does not include rowBytes padding for the last row)

Bug: skia:
Change-Id: I05173e877918327c7b207d2f7f1ab0db36892e2e
Reviewed-on: https://skia-review.googlesource.com/50980
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Leon Scroggins <scroggo@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2bbdcc44c63974f29f3743bb58d929601a3f65c6 07-Sep-2017 Brian Salomon <bsalomon@google.com> Rework GrSamplerParams to be more compact and use its own wrap mode enum.

The main change is to make GrSamplerParams smaller by making its enums have byte-sized underlying types. The rest is cosmetic.

Change-Id: Ib71ea50612d24619a85e463826c6b8dfb9b445e3
Reviewed-on: https://skia-review.googlesource.com/43200
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
4df0092eac6e9bb5afc516773a0c618630193dc6 07-Sep-2017 Brian Salomon <bsalomon@google.com> Revert "Remove "content" rect from GrTextureAdjuster."

This reverts commit 6e4bbbefe153495cf34ea42aa72691756e6ab40e.

Reason for revert: assertion failure

Original change's description:
> Remove "content" rect from GrTextureAdjuster.
>
> Since we got rid of texture-backed bitmaps this is no longer required.
>
> Change-Id: Id15c745994a3d6a1489e193b5d29916fa0931264
> Reviewed-on: https://skia-review.googlesource.com/36340
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: I2229ec05079368ff196ff351107f88062080e5ec
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/43720
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
6e4bbbefe153495cf34ea42aa72691756e6ab40e 07-Sep-2017 Brian Salomon <bsalomon@google.com> Remove "content" rect from GrTextureAdjuster.

Since we got rid of texture-backed bitmaps this is no longer required.

Change-Id: Id15c745994a3d6a1489e193b5d29916fa0931264
Reviewed-on: https://skia-review.googlesource.com/36340
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
a8ac92418807e3d46a45413459e6895160134c1d 07-Sep-2017 Brian Osman <brianosman@google.com> Make SkImage_Lazy always report the color space of its data

Legacy clients are likely to ignore this information, but there are
cases (using SkColorSpaceXformCanvas) where getting accurate information
is important.

Bug: skia:
Change-Id: Ia56170559c82299375021c813424098ffc627b02
Reviewed-on: https://skia-review.googlesource.com/43562
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
fb4a20c7f54110d6c43dee4b78801c163ad6c8f3 29-Aug-2017 Robert Phillips <robertphillips@google.com> Remove kDefault_GrSurfaceOrigin

Change-Id: Ic55d488287add32e5a32b5a77415e16cebf4c1ee
Reviewed-on: https://skia-review.googlesource.com/29120
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b0e93a22bbfad05bb834e33387880ece56e0f6d2 29-Aug-2017 Robert Phillips <robertphillips@google.com> Remove origin field from GrSurface (take 2)

This mainly consists of rm origin from GrSurface and the wrapBackEnd*
methods and then re-adding an explicit origin parameter to all the
GrGpu methods that need it.

TBR=bsalomon@google.com

Change-Id: I4248b2a4749ef844da4233ce53b0dc504bc9eb74
Reviewed-on: https://skia-review.googlesource.com/30280
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7294b851d277d8e703b23657e1a990f1ae24ead6 01-Aug-2017 Robert Phillips <robertphillips@google.com> Revert "Remove origin field from GrSurface"

This reverts commit df0e09feacb29290fe94d37f921731b18f2edae0.

Reason for revert: Experimental revert to see if this is blocking the roll


Original change's description:
> Remove origin field from GrSurface
>
> This mainly consists of rm origin from GrSurface and the wrapBackEnd*
> methods and then re-adding an explicit origin parameter to all the
> GrGpu methods that need it.
>
> Change-Id: Iabd79ae98b227b5b9409f3ab5bbcc48af9613c18
> Reviewed-on: https://skia-review.googlesource.com/26363
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: Id606aa01e84e2b83be71d833eefca477c1ad0d01
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/29220
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
df0e09feacb29290fe94d37f921731b18f2edae0 28-Jul-2017 Robert Phillips <robertphillips@google.com> Remove origin field from GrSurface

This mainly consists of rm origin from GrSurface and the wrapBackEnd*
methods and then re-adding an explicit origin parameter to all the
GrGpu methods that need it.

Change-Id: Iabd79ae98b227b5b9409f3ab5bbcc48af9613c18
Reviewed-on: https://skia-review.googlesource.com/26363
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
16d8ec66cdce2f30ce89b87066d3ac7a244c460d 27-Jul-2017 Robert Phillips <robertphillips@google.com> Pull non-substantive changes out of omnibus GrSurface CL

https://skia-review.googlesource.com/c/26363 (Remove origin field from GrSurface) is
already too large. This pulls some of the cosmetic changes out for separate review.
Change-Id: I1d8b95522144b2f4cbd916ef38faa3dde6f78087
Reviewed-on: https://skia-review.googlesource.com/27840
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
066f020bb6cb9dbb12b977fcddd93982201777fe 25-Jul-2017 Robert Phillips <robertphillips@google.com> Reduce dependence on GrSurface's origin field (take 3)

TBR=bsalomon@google.com

Change-Id: I8c95c6774897dbd87e3c5c87d92f75c5b64d4e76
Reviewed-on: https://skia-review.googlesource.com/26424
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
6af2a668f4343bc0db87d27d28b0edc60f5cd6b9 25-Jul-2017 Robert Phillips <robertphillips@google.com> Revert "Reduce dependence on GrSurface's origin field (take 2)"

This reverts commit 22115b4fc6ab169d45a1cfb65dae2dc7e544c80a.

Reason for revert: GrAHardwareBufferImageGenerator.cpp

Original change's description:
> Reduce dependence on GrSurface's origin field (take 2)
>
> TBR=bsalomon@google.com
> Change-Id: Ia238fc66b0fe10a3626c7967b2ac1f1a4bf4cd71
> Reviewed-on: https://skia-review.googlesource.com/25800
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: I6dc77f02eed3073317128c48f0b426b81926787f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/26480
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
22115b4fc6ab169d45a1cfb65dae2dc7e544c80a 25-Jul-2017 Robert Phillips <robertphillips@google.com> Reduce dependence on GrSurface's origin field (take 2)

TBR=bsalomon@google.com
Change-Id: Ia238fc66b0fe10a3626c7967b2ac1f1a4bf4cd71
Reviewed-on: https://skia-review.googlesource.com/25800
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
96be9df1300b2281641b038ef11064157f6e0b41 21-Jul-2017 Robert Phillips <robertphillips@google.com> Revert "Reduce dependence on GrSurface's origin field"

This reverts commit 467022b1861033d968195687da15270c208279ff.

Reason for revert: GrAHardwareBufferImageGenerator.cpp

Original change's description:
> Reduce dependence on GrSurface's origin field
>
> Unfortunately, GrGPU and its ilk are still using the GrSurface's origin a lot. I will clean that up in a second CL.
>
> Change-Id: Iba729440ce8ea8d24bb7f4e5de55ed576a0f176d
> Reviewed-on: https://skia-review.googlesource.com/24700
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: I1b3f5c3b82d250ac164beb1d5c83abb6c3c6ab3b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/25620
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
467022b1861033d968195687da15270c208279ff 21-Jul-2017 Robert Phillips <robertphillips@google.com> Reduce dependence on GrSurface's origin field

Unfortunately, GrGPU and its ilk are still using the GrSurface's origin a lot. I will clean that up in a second CL.

Change-Id: Iba729440ce8ea8d24bb7f4e5de55ed576a0f176d
Reviewed-on: https://skia-review.googlesource.com/24700
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d17f6584df9e48146dac28a1df56fb4978de6ba3 20-Jul-2017 Brian Salomon <bsalomon@google.com> Remove GrBackendTextureDesc

Change-Id: I2b123d1782400e97ab2ce2f11e3e3d325a13e6c8
Reviewed-on: https://skia-review.googlesource.com/24748
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
086a427b0cee3862f25c492fc5082ff24105dc53 18-Jul-2017 Mike Reed <reed@google.com> guard references to SkColorTable

Bug: skia:6828
Change-Id: I0c8c78e70b118f51cb59dc45675e4ddcd4776108
Reviewed-on: https://skia-review.googlesource.com/24260
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
228482a709690135da4d67879fcc13885e9882e0 13-Jul-2017 Brian Salomon <bsalomon@google.com> Add abandoned context check to SkImage::MakeFromDeferredTextureImageData

Change-Id: Ibcae793339cfaf9dae8cb9122f387def535ce1bc
Reviewed-on: https://skia-review.googlesource.com/23040
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
590533f066035a48df9f78395a80314b559f4714 11-Jul-2017 Robert Phillips <robertphillips@google.com> Plumb raw GrMipLevel* down instead of SkTArray<GrMipLevel> in GrGpu

Change-Id: I34033b6ecb469458eb820cbc01aad8c7bb876312
Reviewed-on: https://skia-review.googlesource.com/22212
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
8fe24272fa6d2fa9eb2458221ed9852d6ec16f56 07-Jul-2017 Brian Salomon <bsalomon@google.com> Add mock config to tools and run through gms and benchs without crashing.

Change-Id: I7e2474129ef2b15899ad2baeb8d18f39d05da98c
Reviewed-on: https://skia-review.googlesource.com/21820
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7a86987815be3af78fe3801d4f347ebb0c63141a 27-Jun-2017 Derek Sollenberger <djsollen@google.com> Use the NDK headers for AHardwareBuffer.

Bug: 6672
Change-Id: I5abd86149e912d91234853109ebd2a6b0ac5eaa2
Reviewed-on: https://skia-review.googlesource.com/20980
Reviewed-by: Stan Iliev <stani@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
8744405448b9402e1368aebd321c4f555543301a 23-Jun-2017 Robert Phillips <robertphillips@google.com> Remove SkImage_Base::peekTexture call

Change-Id: Ie5b6bec8df083e0a128aa234d80f5a214cd98f0d
Reviewed-on: https://skia-review.googlesource.com/20741
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
fbcef6eb8abad142daf45418516550f7635b4a52 15-Jun-2017 Robert Phillips <robertphillips@google.com> Clean up GrResourceProvider usage

The only substantive changes are the removal of GrProxy instantiation in:

SkGpuBlurUtils::GaussianBlur
GrSimpleTextureEffect::Make*

Change-Id: I10970609693bd6ff5b3a3c21b41d82642bb277bc
Reviewed-on: https://skia-review.googlesource.com/19965
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d20b5c489b5709a4d251c0cc68d584ea4514594e 14-Jun-2017 Mike Reed <reed@google.com> use #ifdef instead of #if for SK_VULKAN

Try to fix android roll

Bug: skia:
Change-Id: Iae32027b299d8a975d3caf70f0f8910541ca972d
Reviewed-on: https://skia-review.googlesource.com/19800
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
fcd5fddb0264d062a461435618ad54a29ff80fc0 14-Jun-2017 Robert Phillips <robertphillips@google.com> Revert "Revert "Update skia to use ifdefs for Vulkan code instead of dummy header""

This reverts commit fad9e3f54112ea8c8bb6bb72384f47b9759578f5.

Reason for revert: Can't find the error message anymore (?!?) Let's try again shall we

Original change's description:
> Revert "Update skia to use ifdefs for Vulkan code instead of dummy header"
>
> This reverts commit c0f8e426c59eec6c720b8e1329dcb966cf1b6800.
>
> Reason for revert: Experiment to see if this will unblock the Android roll
>
> Original change's description:
> > Update skia to use ifdefs for Vulkan code instead of dummy header
> >
> > Bug: skia:6721
> > Change-Id: I80a4c9f2acc09c174497f625c50ed12a8bb76505
> > Reviewed-on: https://skia-review.googlesource.com/19547
> > Reviewed-by: Mike Klein <mtklein@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,mtklein@google.com,bsalomon@google.com
>
> Change-Id: Ib51c1672570f2071a17b6fbde692a5174b0358ce
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:6721
> Reviewed-on: https://skia-review.googlesource.com/19724
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,mtklein@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: Iecef7ddcfe31d82938336120a4193525ac6693be
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:6721
Reviewed-on: https://skia-review.googlesource.com/19782
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
fad9e3f54112ea8c8bb6bb72384f47b9759578f5 14-Jun-2017 Robert Phillips <robertphillips@google.com> Revert "Update skia to use ifdefs for Vulkan code instead of dummy header"

This reverts commit c0f8e426c59eec6c720b8e1329dcb966cf1b6800.

Reason for revert: Experiment to see if this will unblock the Android roll

Original change's description:
> Update skia to use ifdefs for Vulkan code instead of dummy header
>
> Bug: skia:6721
> Change-Id: I80a4c9f2acc09c174497f625c50ed12a8bb76505
> Reviewed-on: https://skia-review.googlesource.com/19547
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,mtklein@google.com,bsalomon@google.com

Change-Id: Ib51c1672570f2071a17b6fbde692a5174b0358ce
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:6721
Reviewed-on: https://skia-review.googlesource.com/19724
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
c0f8e426c59eec6c720b8e1329dcb966cf1b6800 13-Jun-2017 Greg Daniel <egdaniel@google.com> Update skia to use ifdefs for Vulkan code instead of dummy header

Bug: skia:6721
Change-Id: I80a4c9f2acc09c174497f625c50ed12a8bb76505
Reviewed-on: https://skia-review.googlesource.com/19547
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
646e4293f06d9de6d44dbfa3c32cdc15a6f5906e 13-Jun-2017 Robert Phillips <robertphillips@google.com> Retract GrTexture*.h & GrRenderTarget*.h from other headers

This does push some additional work (& includes) into the .cpp files.

Change-Id: I27c847e371802270d13594dcc22aae44039990bb
Reviewed-on: https://skia-review.googlesource.com/19660
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7a8c84c6c92565842aeea27d4971fbd78d523f7a 12-Jun-2017 Eric Karl <ericrk@chromium.org> Reland DeferredTextureImageData low-bit-depth/dithering support

Cause DeferredTextureImageData functionality to support low bit depth
(4444, 565) image formats (with dithering).

Updated to handle colorspace + 4444 colortype correctly.

Bug: 720105
Change-Id: Ib7e14d937849f4f6b08fda6992a240bb203d0089
Reviewed-on: https://skia-review.googlesource.com/19094
Commit-Queue: Eric Karl <ericrk@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7fbeb5acdd925f9d04ccb1316fbcd3490b3f07ec 08-Jun-2017 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "DeferredTextureImageData low-bit-depth/dithering support"""

This reverts commit 840ff8837bd93ee73c187890839b3f56e7c94fb7.

Reason for revert: Not obvious to me how to fix, reverting the chrome CL that was dependent on this.

Original change's description:
> Revert "Revert "DeferredTextureImageData low-bit-depth/dithering support""
>
> This reverts commit d7c681d6a7b154d276e275becc51685eac8705c2.
>
> Reason for revert: New param already used in Chrome
>
> Original change's description:
> > Revert "DeferredTextureImageData low-bit-depth/dithering support"
> >
> > This reverts commit 2c075e749d1f33dea06ad2710e15c9a1d60ebced.
> >
> > Reason for revert: Breaking tests. e.g.: https://chromium-swarm.appspot.com/task?id=369dc44f62ce9510&refresh=10
> >
> > Original change's description:
> > > DeferredTextureImageData low-bit-depth/dithering support
> > >
> > > Cause DeferredTextureImageData functionality to support low bit depth
> > > (4444, 565) image formats (with dithering).
> > >
> > > Bug: 720105
> > > Change-Id: Ie3b5768ebc393d9b0a5322461c722bf37c80b791
> > > Reviewed-on: https://skia-review.googlesource.com/18945
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Eric Karl <ericrk@chromium.org>
> >
> > TBR=bsalomon@google.com,ericrk@chromium.org
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: 720105
> >
> > Change-Id: I07aec722425efc62bc54f82cee9a19a9bf339f7b
> > Reviewed-on: https://skia-review.googlesource.com/19039
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
>
> TBR=bsalomon@google.com,reviews@skia.org,ericrk@chromium.org
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 720105
>
> Change-Id: I91e690d0564f04209a2bd677de9ae9eb9c0f90d3
> Reviewed-on: https://skia-review.googlesource.com/19041
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com,reviews@skia.org,ericrk@chromium.org
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 720105

Change-Id: I63eb0051964ce99e187b4e4943ea79bc22d392d2
Reviewed-on: https://skia-review.googlesource.com/19046
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
840ff8837bd93ee73c187890839b3f56e7c94fb7 08-Jun-2017 Brian Salomon <bsalomon@google.com> Revert "Revert "DeferredTextureImageData low-bit-depth/dithering support""

This reverts commit d7c681d6a7b154d276e275becc51685eac8705c2.

Reason for revert: New param already used in Chrome

Original change's description:
> Revert "DeferredTextureImageData low-bit-depth/dithering support"
>
> This reverts commit 2c075e749d1f33dea06ad2710e15c9a1d60ebced.
>
> Reason for revert: Breaking tests. e.g.: https://chromium-swarm.appspot.com/task?id=369dc44f62ce9510&refresh=10
>
> Original change's description:
> > DeferredTextureImageData low-bit-depth/dithering support
> >
> > Cause DeferredTextureImageData functionality to support low bit depth
> > (4444, 565) image formats (with dithering).
> >
> > Bug: 720105
> > Change-Id: Ie3b5768ebc393d9b0a5322461c722bf37c80b791
> > Reviewed-on: https://skia-review.googlesource.com/18945
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Eric Karl <ericrk@chromium.org>
>
> TBR=bsalomon@google.com,ericrk@chromium.org
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 720105
>
> Change-Id: I07aec722425efc62bc54f82cee9a19a9bf339f7b
> Reviewed-on: https://skia-review.googlesource.com/19039
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com,reviews@skia.org,ericrk@chromium.org
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 720105

Change-Id: I91e690d0564f04209a2bd677de9ae9eb9c0f90d3
Reviewed-on: https://skia-review.googlesource.com/19041
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d7c681d6a7b154d276e275becc51685eac8705c2 08-Jun-2017 Brian Salomon <bsalomon@google.com> Revert "DeferredTextureImageData low-bit-depth/dithering support"

This reverts commit 2c075e749d1f33dea06ad2710e15c9a1d60ebced.

Reason for revert: Breaking tests. e.g.: https://chromium-swarm.appspot.com/task?id=369dc44f62ce9510&refresh=10

Original change's description:
> DeferredTextureImageData low-bit-depth/dithering support
>
> Cause DeferredTextureImageData functionality to support low bit depth
> (4444, 565) image formats (with dithering).
>
> Bug: 720105
> Change-Id: Ie3b5768ebc393d9b0a5322461c722bf37c80b791
> Reviewed-on: https://skia-review.googlesource.com/18945
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Eric Karl <ericrk@chromium.org>

TBR=bsalomon@google.com,ericrk@chromium.org
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 720105

Change-Id: I07aec722425efc62bc54f82cee9a19a9bf339f7b
Reviewed-on: https://skia-review.googlesource.com/19039
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2c075e749d1f33dea06ad2710e15c9a1d60ebced 07-Jun-2017 Eric Karl <ericrk@chromium.org> DeferredTextureImageData low-bit-depth/dithering support

Cause DeferredTextureImageData functionality to support low bit depth
(4444, 565) image formats (with dithering).

Bug: 720105
Change-Id: Ie3b5768ebc393d9b0a5322461c722bf37c80b791
Reviewed-on: https://skia-review.googlesource.com/18945
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Eric Karl <ericrk@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
d3df9ec874b2668111b36ce0993d860b4f88c765 05-Jun-2017 Matt Sarett <msarett@google.com> SkImage::makeColorSpace(): Fix nullptr->sRGB bug with picture images

Bug: 729352
Change-Id: I5ad5e2121ce87dc154528bfd9ec0f3e9253ed792
Reviewed-on: https://skia-review.googlesource.com/18590
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
eee4d6e4e8cc5c4c79f065abcc3ce609f71238f9 05-Jun-2017 Robert Phillips <robertphillips@google.com> Make instantiate return a Boolean

From an off-line conversation:
The longer term idea will be to create a helper class isolates the
ability to instantiate proxies until flush time. The peek* methods
could then be moved to GrSurfaceProxy.

Change-Id: I8e8c02c098475b77d515791c0d6b81f7e4a327dd
Reviewed-on: https://skia-review.googlesource.com/18076
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7e910df7f133e80293117bdd069ed25998d10f8c 02-Jun-2017 Stan Iliev <stani@google.com> Implement an SkImage backed by a Android hardware buffer

Create a new SkImage public API to make an image from an Android
hardware buffer. Implementation is using a SkImageGenerator
derived class GrAndroidBufferImageGenerator.
A new EGLImage texture is created, which is then wrapped with
GrTextureProxy.

Bug: skia:
Change-Id: I610a4c5a58198686ce7c03e9a0adad3f9d2342e0
Reviewed-on: https://skia-review.googlesource.com/17789
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stan Iliev <stani@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
bb5711a5e4b9c83f0fc49f2d4ee19ca1e4592e14 17-May-2017 Brian Salomon <bsalomon@google.com> Remove GrSurfaceDesc member from GrSurfaceProxy.

Stores the config, origin, and dimensions in GrSurfaceProxy, sample count in GrRenderTargetProxy, and "was constructed with mip maps" in GrTextureProxy.

Change-Id: Iee058674dce49107a991cca9d083cd33e3572809
Reviewed-on: https://skia-review.googlesource.com/17209
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
63e7973d1f01bd03216659b9d2267f83a752c8fb 16-May-2017 Brian Salomon <bsalomon@google.com> Remove GrSurfaceProxy::desc()

Adds a numStencilSamples() getter.

Bug: skia:
Change-Id: I1e57f19b3cb490a6214ea436622ed8128a5a9303
Reviewed-on: https://skia-review.googlesource.com/16994
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
dedac85b4f08546e92143d96c13b753cb1b80e23 12-May-2017 Matt Sarett <msarett@google.com> Allow numerical color spaces with legacy rendering

Bug: 720083
Change-Id: Ibd4dbf6ee95ac14857e8280a441f81976710e5e8
Reviewed-on: https://skia-review.googlesource.com/16700
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
85d34b2e841d99dab914111fe2eaa4db99345e1e 10-May-2017 Brian Osman <brianosman@google.com> Remove SkCrossContextImageData and all support code

Bug: skia:
Change-Id: I8eb8cef5456c05a8e314d8404698893c7af82d13
Reviewed-on: https://skia-review.googlesource.com/16368
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
13dddce65fd87a8175a209a49f35615735a2886a 09-May-2017 Brian Osman <brianosman@google.com> Added SkImage::MakeCrossContextFromEncoded

Designed for Flutter's threading architecture, with
an eye to being useful to other clients. Under the
hood, uses a new image generator class to lazily wrap
a texture for multiple GrContexts.

Re-land of https://skia-review.googlesource.com/c/14180/

Bug: skia:
Change-Id: I3dd382640629b79b3058f18fee68d043566e43e5
Reviewed-on: https://skia-review.googlesource.com/15895
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7f1d020bbfde245281fac88ff09b55366155be16 08-May-2017 Mike Reed <reed@google.com> remove (possibly slow) call to refEncoded in getDeferredTextureImageData


- explicitly reject already-texture-backed and picture-backed

Needed to add a virtual to image_base and generator to distinguish
generators that can (or cannot) natively "generate" on the gpu (e.g. pictures)
Bug: 646089
Change-Id: I3aea22f89b31009ecbb3bd50d88512e6532f0a0f

Change-Id: I3aea22f89b31009ecbb3bd50d88512e6532f0a0f
Reviewed-on: https://skia-review.googlesource.com/15765
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
449d78f5a8e73407b314aa6cb4e60a8273f0d410 08-May-2017 Brian Salomon <bsalomon@google.com> Revert "Added SkImage::MakeCrossContextFromEncoded"

This reverts commit 83b1b3db36e8622f4bbc8c391d5c714e258d1e03.

Reason for revert: unit test failing and asan leaks

Original change's description:
> Added SkImage::MakeCrossContextFromEncoded
>
> Designed for Flutter's threading architecture, with
> an eye to being useful to other clients. Under the
> hood, uses a new image generator class to lazily wrap
> a texture for multiple GrContexts.
>
> Bug: skia:
> Change-Id: I6c37b12c8ab5bce94b91190e5f0beb91d31ae81b
> Reviewed-on: https://skia-review.googlesource.com/14180
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1f0bf580aa0ea2d132e18b64ff610ddac9d073a7
Reviewed-on: https://skia-review.googlesource.com/15892
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
83b1b3db36e8622f4bbc8c391d5c714e258d1e03 08-May-2017 Brian Osman <brianosman@google.com> Added SkImage::MakeCrossContextFromEncoded

Designed for Flutter's threading architecture, with
an eye to being useful to other clients. Under the
hood, uses a new image generator class to lazily wrap
a texture for multiple GrContexts.

Bug: skia:
Change-Id: I6c37b12c8ab5bce94b91190e5f0beb91d31ae81b
Reviewed-on: https://skia-review.googlesource.com/14180
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
5bbd076c52a6cebff4a2d63edd027b0f31624287 08-May-2017 Brian Osman <brianosman@google.com> SkImage::isValid

Lets clients know if an image is drawable to a particular GrContext
(or to CPU). Checks for abandoned GrContexts beneath GPU backed
images, as well as context mis-match.

Bug: skia:
Change-Id: Ibe88c7ce8091f965c14f6023a3597be4b70c3f99
Reviewed-on: https://skia-review.googlesource.com/15801
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9f3dcb3f760274d42e28095fd3cf0f484168d996 04-May-2017 Matt Sarett <msarett@google.com> Reland "Add SkImage::makeColorSpace() with correct transfer fn behavior"

Completes implementation for lazy and raster images. gpu is
still a TODO.

Bug: skia:6553
Change-Id: I898e4464ffc91442c7f98669f1203dd5c203621b
Reviewed-on: https://skia-review.googlesource.com/15307
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b59a9da7eba4ea5f3101b87deae3d67395c58a7e 04-May-2017 Matt Sarett <msarett@google.com> Revert "Add SkImage::makeColorSpace() with correct transfer fn behavior"

This reverts commit 9ad0531a18f854e5a2c8034880140dd6cd3ea3c1.

Reason for revert: Does not handle transfer fn behavior.

Original change's description:
> Add SkImage::makeColorSpace() with correct transfer fn behavior
>
> Completes implementation for lazy and raster images. gpu is
> still a TODO.
>
> Bug: skia:6553
> Change-Id: I04eea5c4fb53c50c0406c2e6b6778b0e21fd85f8
> Reviewed-on: https://skia-review.googlesource.com/14403
> Commit-Queue: Matt Sarett <msarett@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
>

TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I3830321aea7d0dc5ab38a40f3318bb53a41df383
Reviewed-on: https://skia-review.googlesource.com/15306
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9ad0531a18f854e5a2c8034880140dd6cd3ea3c1 04-May-2017 Matt Sarett <msarett@google.com> Add SkImage::makeColorSpace() with correct transfer fn behavior

Completes implementation for lazy and raster images. gpu is
still a TODO.

Bug: skia:6553
Change-Id: I04eea5c4fb53c50c0406c2e6b6778b0e21fd85f8
Reviewed-on: https://skia-review.googlesource.com/14403
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
207282eb5ac6f009e6f736fb8e5cfcee000ee92a 26-Apr-2017 Greg Daniel <egdaniel@google.com> Make GrBackendTexture take Gr*Info refs in ctor, and copy them.

Bug: skia:
Change-Id: Ic05d3384fa07560fc18c52bb8ae03541a72515f7
Reviewed-on: https://skia-review.googlesource.com/14374
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
736a9cc88d623f1c309b70554f02f0f111a30766 28-Apr-2017 Mike Reed <reed@google.com> remove unused yuv methods

Bug: skia:
Change-Id: Ie1e6c905d8989b49c2cf5c9e5fd1f383268f6480
Reviewed-on: https://skia-review.googlesource.com/14645
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
df7e075c74110fcfebdc49ca503684162e118af5 26-Apr-2017 Brian Osman <brianosman@google.com> Fold SkImageCacherator into SkImage_Lazy

SkImageCacherator still exists, but only as an interface implemented
(solely) by SkImage_Lazy. The only external clients are
GrImageTextureMaker and SkImage_Gpu::getDeferredTextureImageData.

This is probably an improvement, but doesn't go as far as I'd hoped.

Bug: skia:
Change-Id: I6812badfabb6924b025621b21af00cbde9c16cac
Reviewed-on: https://skia-review.googlesource.com/14371
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
6251771ebc5c4d7c98af3e2f3f2e7b22e490c1d5 26-Apr-2017 Brian Osman <brianosman@google.com> Fix color space handling in SkImage_Gpu::getROPixels

The dstColorSpace is a badly named parameter. It's a hint about where/how
the returned pixels are going to be used. Raster and GPU are meant to
ignore that information, codecs use it to drive our decoding heuristic.

This is a re-land of https://skia-review.googlesource.com/c/10109/

Bug: skia:
Change-Id: Iee006a8e014e028b4f0f2471d7152b6bccd72cb2
Reviewed-on: https://skia-review.googlesource.com/14404
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b8a1392b021f480e292d66576e3da5198480845c 26-Apr-2017 Brian Osman <brianosman@google.com> Fix uncached getROPixels from GPU images

We were allocating a local bitmap, but then attempting to read into an
uninitialized local pixmap. The only public API that funnels the caching
hint to this function is scalePixels, so I added a test (which previously
failed).

Bug: skia:
Change-Id: Ib4370350be664935b4c85e34c70b675e6d82ba64
Reviewed-on: https://skia-review.googlesource.com/14402
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
dd3b3f41829d32d7eaf3eb4903570d49c2ba9ff8 24-Apr-2017 Robert Phillips <robertphillips@google.com> Rm makeRenderTargetContext in favor of deferred version (take 3)

This is a reland of: https://skia-review.googlesource.com/c/13001/ (Rm makeRenderTargetContext in favor of deferred version)

TBR=bsalomon@google.com

Change-Id: If81f4d9fb889c091cd37ffde133d906fb3e37773
Reviewed-on: https://skia-review.googlesource.com/14027
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2af746c1e74af30d0fb02d5c35a178e61d152965 21-Apr-2017 Robert Phillips <robertphillips@google.com> Revert "Rm makeRenderTargetContext in favor of deferred version (take 2)"

This reverts commit 02242e82e4bf94a8f6862dadb5bf347ea5e31eb5.

Reason for revert: Maybe breaking Chrome DEPS roll

Original change's description:
> Rm makeRenderTargetContext in favor of deferred version (take 2)
>
> This is a reland of: https://skia-review.googlesource.com/c/13001/ (Rm makeRenderTargetContext in favor of deferred version)
>
> Change-Id: Ife77b012d09c46895884a168fc5045bd92a4b919
> Reviewed-on: https://skia-review.googlesource.com/13196
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I2607116ed743f5d313da4a7b7f056776ed907702
Reviewed-on: https://skia-review.googlesource.com/14024
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
02242e82e4bf94a8f6862dadb5bf347ea5e31eb5 20-Apr-2017 Robert Phillips <robertphillips@google.com> Rm makeRenderTargetContext in favor of deferred version (take 2)

This is a reland of: https://skia-review.googlesource.com/c/13001/ (Rm makeRenderTargetContext in favor of deferred version)

Change-Id: Ife77b012d09c46895884a168fc5045bd92a4b919
Reviewed-on: https://skia-review.googlesource.com/13196
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7ef28f35a2f7d17b90c776f76d4b374ccee6c347 20-Apr-2017 Greg Daniel <egdaniel@google.com> Revert "Revert "Plumb GrBackendTexture throughout skia.""

This reverts commit 7fa5c31c2c9af834bee66d5fcf476e250076c8d6.

Reason for revert: Relanding this change now that other fixes have landed.

Original change's description:
> Revert "Plumb GrBackendTexture throughout skia."
>
> This reverts commit 7da62b9059f3c1d31624a0e4da96ee5f908f9c12.
>
> Reason for revert: fix android roll
>
> Original change's description:
> > Plumb GrBackendTexture throughout skia.
> >
> > Bug: skia:
> > Change-Id: I1bae6768ee7229818a83ba608035a1f7867e6875
> > Reviewed-on: https://skia-review.googlesource.com/13645
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> >
>
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com,reviews@skia.org,stani@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I5cb8763cc837c83ebc6d10366fe2dd3efe35fb89
> Reviewed-on: https://skia-review.googlesource.com/13773
> Reviewed-by: Stan Iliev <stani@google.com>
> Commit-Queue: Stan Iliev <stani@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org,brianosman@google.com,stani@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I92bc074e4fe37fa5c83186afadc472c03802e8f2
Reviewed-on: https://skia-review.googlesource.com/13975
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7fa5c31c2c9af834bee66d5fcf476e250076c8d6 19-Apr-2017 Stan Iliev <stani@google.com> Revert "Plumb GrBackendTexture throughout skia."

This reverts commit 7da62b9059f3c1d31624a0e4da96ee5f908f9c12.

Reason for revert: fix android roll

Original change's description:
> Plumb GrBackendTexture throughout skia.
>
> Bug: skia:
> Change-Id: I1bae6768ee7229818a83ba608035a1f7867e6875
> Reviewed-on: https://skia-review.googlesource.com/13645
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com,reviews@skia.org,stani@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I5cb8763cc837c83ebc6d10366fe2dd3efe35fb89
Reviewed-on: https://skia-review.googlesource.com/13773
Reviewed-by: Stan Iliev <stani@google.com>
Commit-Queue: Stan Iliev <stani@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7da62b9059f3c1d31624a0e4da96ee5f908f9c12 18-Apr-2017 Greg Daniel <egdaniel@google.com> Plumb GrBackendTexture throughout skia.

Bug: skia:
Change-Id: I1bae6768ee7229818a83ba608035a1f7867e6875
Reviewed-on: https://skia-review.googlesource.com/13645
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9440345a81d6c2372ac0aed937080f3da67439dd 18-Apr-2017 Greg Daniel <egdaniel@google.com> Add backend safe classes for passing in external texture and render targets into gpu

This CL adds the GrBackend* classes as well as just updates the API for SkSurface and
SkImage. The implementation on SkSurface/Image and the plumbing down into Ganesh will
be in an additional CL.

Besides the change to use the type safe classes, we also pull the SurfaceFlags, origin,
samples, out of the descriptor and pass those in directly.

Bug: skia:
Change-Id: I9702981fe26c3d5d7d2cbcf6977ba569d356d854
Reviewed-on: https://skia-review.googlesource.com/13122
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
0cf45f607cfc5d22ef9e6fbe0c7480a409349704 17-Apr-2017 Greg Daniel <egdaniel@google.com> Split SkCrossContextImageData into Image and BackendTexture subclasses

This is needed for a follow up CL where we switch from using
GrBackendTextureDesc to GrBackendTexture.

Bug: skia:
Change-Id: Id12d3357af1cc7f30c7f9196e614089779dc0715
Reviewed-on: https://skia-review.googlesource.com/13588
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
ade76e9236788120d8a1a4a7a252d8f66b8b9b02 14-Apr-2017 Matt Sarett <msarett@google.com> getDeferredTextureImageData(): use legacy scaling in legacy mode

Bug:709341

Change-Id: I0dc1dcc3874f9741e0303e376a0ad4a68cd8b03e
Reviewed-on: https://skia-review.googlesource.com/13500
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
1119dc366e15ef737d05d3a087410ea40c508101 11-Apr-2017 Robert Phillips <robertphillips@google.com> Remove discard from GrRenderTarget & force it to always go through a RenderTargetContext

This is a bit sloppy in that it ignores some instances where discards were being issued before.

The creation of the temp RTContext in the RenderTarget's discard method was causing an extra split in the opLists.

This is split out of: https://skia-review.googlesource.com/c/10284/ (Omnibus: Remove GrSurface-derived classes from ops)

Change-Id: Ic366d303280635763b0fae238c4df37c04fb8503
Reviewed-on: https://skia-review.googlesource.com/11125
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7a542c559a6e584107b94e6254ac3c7f9f24b591 11-Apr-2017 Mike Reed <reed@google.com> Change bitmapcache to not rely on lockpixels.

The Rec in the cache is the owner of the pixel memory
- discardable or
- malloc

Each external client has a pixelref that just points to those pixels,
and whose destructor will notify the rec.

This eliminates the dependency on lockPixels in pixelref, freeing us
to remove that entirely from pixelref.

Bug: skia:
Change-Id: If45ed0ae202a1211336626364235215253e8aa7c
Reviewed-on: https://skia-review.googlesource.com/10300
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
934292170bade335f972a050a2f64d2cca9ca299 11-Apr-2017 Robert Phillips <robertphillips@google.com> Revert "Rm makeRenderTargetContext in favor of deferred version"

This reverts commit d83ec0441279b79551b4ecb4598696249ea55145.

Reason for revert: various bot failures

Original change's description:
> Rm makeRenderTargetContext in favor of deferred version
>
> Change-Id: Ifdf67453607256ba7cdb0837263377bd83907212
> Reviewed-on: https://skia-review.googlesource.com/13001
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I4e67a20cbe658b24725dcf386ac8bfdd127647ea
Reviewed-on: https://skia-review.googlesource.com/13131
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d83ec0441279b79551b4ecb4598696249ea55145 10-Apr-2017 Robert Phillips <robertphillips@google.com> Rm makeRenderTargetContext in favor of deferred version

Change-Id: Ifdf67453607256ba7cdb0837263377bd83907212
Reviewed-on: https://skia-review.googlesource.com/13001
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
84c9cb7bd8f4c2b0cd4a378995ebbd8524efa390 10-Apr-2017 Matt Sarett <msarett@google.com> getDeferredTextureImageData(): preserve color space in legacy mode

Bug: skia:
Change-Id: Ib205f6104827b734635df6932d6dcfdc2248d091
Reviewed-on: https://skia-review.googlesource.com/12103
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
e78b7259c3d5cbed77b4390150cfb699b0b59cd4 06-Apr-2017 Robert Phillips <robertphillips@google.com> Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 3)

This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.

This is a re-reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv)

Change-Id: Icfb9dd223418dd460405efd2bfd9d1c356beed1a
Reviewed-on: https://skia-review.googlesource.com/11412
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
1b35256f1166358056b2aad8ce09caa6f07912d5 05-Apr-2017 Robert Phillips <robertphillips@google.com> Revert "Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 2)"

This reverts commit aaee31f18c0845417103d84285e365575def3c40.

Reason for revert: possible valgrind leak

Original change's description:
> Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 2)
>
> This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.
>
> This is a reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv)
>
> Change-Id: Icd0a90d2beb483dc24ed87c3bace9c817019e148
> Reviewed-on: https://skia-review.googlesource.com/11326
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ia0b92bf6402cb5f9607310d356f43bff2e3e75eb
Reviewed-on: https://skia-review.googlesource.com/11361
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
aaee31f18c0845417103d84285e365575def3c40 05-Apr-2017 Robert Phillips <robertphillips@google.com> Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 2)

This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.

This is a reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv)

Change-Id: Icd0a90d2beb483dc24ed87c3bace9c817019e148
Reviewed-on: https://skia-review.googlesource.com/11326
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
171cc5fc87ede62712923f5a01db58059a027700 05-Apr-2017 Robert Phillips <robertphillips@google.com> Revert "Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv"

This reverts commit fb0bd98a43fa11e09705837418167dd72bb4a361.

Reason for revert: ANGLE failures

Original change's description:
> Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv
>
> This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.
>
> Change-Id: If57a7de47edc0853dae7bc61337d9acdc03d63b0
> Reviewed-on: https://skia-review.googlesource.com/11200
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I7241070dc1f9df47181061e07adab141f9857974
Reviewed-on: https://skia-review.googlesource.com/11324
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
fb0bd98a43fa11e09705837418167dd72bb4a361 04-Apr-2017 Robert Phillips <robertphillips@google.com> Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv

This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.

Change-Id: If57a7de47edc0853dae7bc61337d9acdc03d63b0
Reviewed-on: https://skia-review.googlesource.com/11200
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7ee385e1dc3cd6a47dc8f7297fef6e175eaba224 30-Mar-2017 Robert Phillips <robertphillips@google.com> Add GrSurfaceProxy* parameter to GrContext::flush

Split out of: https://skia-review.googlesource.com/c/10284/ (Omnibus: Remove GrSurface-derived classes from ops)

Change-Id: I12c66a6fa826c2363b21ece56391fb352d12d6b3
Reviewed-on: https://skia-review.googlesource.com/10541
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2084ffa9a3fa7eb3c7e17ec5b55750be9942bafc 27-Mar-2017 Brian Salomon <bsalomon@google.com> Revert "Fix SkImage_Gpu::getROPixels"

This reverts commit f4d443fd1bd8cffbcd7a07a48f3488ae871414e9.

Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=705156

Original change's description:
> Fix SkImage_Gpu::getROPixels
>
> The dstColorSpace is a badly named parameter. It's a hint about where/how
> the returned pixels are going to be used. Raster and GPU are meant to
> ignore that information - codecs use it to drive our decoding heuristic.
>
> I've adopted that name in several places, although it's quite bad. Maybe
> usageColorSpace would be better?
>
> Bug: skia:
> Change-Id: I99acaac4bed57ed8acd8433e1c5b39a60c3af09e
> Reviewed-on: https://skia-review.googlesource.com/10109
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

TBR=msarett@google.com,robertphillips@google.com,brianosman@google.com,reed@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Id46226e41ca287ef3351710815ae2e842da4d293
Reviewed-on: https://skia-review.googlesource.com/10210
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
3798c86f6885f0b47fb2e659a43b48a4468a97ef 27-Mar-2017 Robert Phillips <robertphillips@google.com> Remove GrFragmentProcessor-derived class' GrTexture-based ctors

Split out into:

https://skia-review.googlesource.com/c/8881/ (Switch GrTextureStripAtlas over to GrTextureProxies)
https://skia-review.googlesource.com/c/8942/ (Wrap cached GrTextures in GrTextureProxies (e.g., blur profiles, nine-patch blurs, etc.))
https://skia-review.googlesource.com/c/8997/ (Clean up/remove unused GrFragmentProcessor-derived ctors)
https://skia-review.googlesource.com/c/9191/ (Switch SkImageGenerator over to generating GrTextureProxies)
https://skia-review.googlesource.com/c/9448/ (Switch GrYUVProvider over to GrTextureProxies)
https://skia-review.googlesource.com/c/9559/ (Preparatory Proxification)
https://skia-review.googlesource.com/c/9626/ (Consolidate Proxy caching code in GrResourceProvider)
https://skia-review.googlesource.com/c/9683/ (More pre-emptive proxification)
https://skia-review.googlesource.com/c/9917/ (Make experimental Perlin noise shader take texture proxies)
https://skia-review.googlesource.com/c/9961/ (rename makeCopyForTextureParams to isACopyNeededForTextureParams)
https://skia-review.googlesource.com/c/9945/ (Make SkImageCacherator be deferred)
https://skia-review.googlesource.com/c/10180/ (Add new proxy-based DetermineDomainMode w/ test)

Change-Id: Ia33389d92360e542a9d2bf395948deb04d017465
Reviewed-on: https://skia-review.googlesource.com/8823
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
5fa3d6d4b15fd6417de877561f5e4bca422e383c 25-Mar-2017 Mike Reed <reed@google.com> Revert "Revert "simplify api to bitmapcache""

Remove (for now) overly agressive assert

This reverts commit dd1b4e94c4298213f1f238a8634471086d6749fb.

Bug: skia:
Change-Id: Ibdcf0b2e92cf108ae710cd180d4fa359f81176d1
Reviewed-on: https://skia-review.googlesource.com/10129
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
dd1b4e94c4298213f1f238a8634471086d6749fb 24-Mar-2017 Florin Malita <fmalita@chromium.org> Revert "simplify api to bitmapcache"

This reverts commit 9f4b0ae91e1875831cc11f0629b5db998ad85438.

Reason for revert: Nanobench asserts.

../../../src/core/SkBitmapCache.cpp:81: fatal error: "assert(scaledWidth != image->width() || scaledHeight != image->height())"
Aborted
Command exited with code 134
step returned non-zero exit code: 134

https://chromium-swarm.appspot.com/task?id=351b1d10c7936310&refresh=10

Original change's description:
> simplify api to bitmapcache
>
> Force all Find callers to make a bitmpacachedesc, which now
> has more rigid validation.
>
> Goal is to ensure we never make two desc (which turn into keys)
> that look different but represent the same image/transformation.
>
> BUG=skia:
>
> Change-Id: I8571837ee4754a69acc99e949bee9a465fa25f2b
> Reviewed-on: https://skia-review.googlesource.com/10114
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
>

TBR=brianosman@google.com,fmalita@chromium.org,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: I21b3c8a5bae409ba740cfc28b352c3b970dcf5af
Reviewed-on: https://skia-review.googlesource.com/10171
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
9f4b0ae91e1875831cc11f0629b5db998ad85438 24-Mar-2017 Mike Reed <reed@google.com> simplify api to bitmapcache

Force all Find callers to make a bitmpacachedesc, which now
has more rigid validation.

Goal is to ensure we never make two desc (which turn into keys)
that look different but represent the same image/transformation.

BUG=skia:

Change-Id: I8571837ee4754a69acc99e949bee9a465fa25f2b
Reviewed-on: https://skia-review.googlesource.com/10114
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f4d443fd1bd8cffbcd7a07a48f3488ae871414e9 24-Mar-2017 Brian Osman <brianosman@google.com> Fix SkImage_Gpu::getROPixels

The dstColorSpace is a badly named parameter. It's a hint about where/how
the returned pixels are going to be used. Raster and GPU are meant to
ignore that information - codecs use it to drive our decoding heuristic.

I've adopted that name in several places, although it's quite bad. Maybe
usageColorSpace would be better?

Bug: skia:
Change-Id: I99acaac4bed57ed8acd8433e1c5b39a60c3af09e
Reviewed-on: https://skia-review.googlesource.com/10109
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
30a38ff737c61799b0f36d2e6ba412f7e612f617 22-Mar-2017 Robert Phillips <robertphillips@google.com> Remove SkImage_Base::asTextureRef (in favor of asTextureProxyRef)

Minor consolidation/clean-up

Change-Id: I9f8ba794cfb95b33dd60ada0e734ddd2f5f21710
Reviewed-on: https://skia-review.googlesource.com/9947
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
0ae6faa34d73ffc7ebec3d13f0473703bade821b 21-Mar-2017 Robert Phillips <robertphillips@google.com> Make SkImage_Gpu be deferred (take 2)

This CL removes the GrTexture-based ctor forcing everyone to create deferred SkImage_Gpus.

relanding of: https://skia-review.googlesource.com/c/6680/ (Make SkImage_Gpu be deferred)

split out into:
https://skia-review.googlesource.com/c/9106/ (Remove atlas creation from GrResourceProvider)

Change-Id: I834ede430b9706cf9b675bdfdddf1c8c624c2f14
Reviewed-on: https://skia-review.googlesource.com/9965
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
eaa78c45002b4a6e43f4fe2028652b050132dad2 21-Mar-2017 Robert Phillips <robertphillips@google.com> Revert "Make SkImage_Gpu be deferred"

This reverts commit 0db235bc0278887c344eb25b4681e9cca4cf892a.

Reason for revert: cc_unittests failing

Original change's description:
> Make SkImage_Gpu be deferred
>
> This CL removes the GrTexture-based ctor forcing everyone to create deferred SkImage_Gpus.
>
> split out into:
> https://skia-review.googlesource.com/c/9106/ (Remove atlas creation from GrResourceProvider)
>
> Change-Id: I266bbe089c242fe54d5b7adcc7895aa5a39440a0
> Reviewed-on: https://skia-review.googlesource.com/6680
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ia15590a1fae04b52723713760fdbf0492ad36286
Reviewed-on: https://skia-review.googlesource.com/9962
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
0db235bc0278887c344eb25b4681e9cca4cf892a 20-Mar-2017 Robert Phillips <robertphillips@google.com> Make SkImage_Gpu be deferred

This CL removes the GrTexture-based ctor forcing everyone to create deferred SkImage_Gpus.

split out into:
https://skia-review.googlesource.com/c/9106/ (Remove atlas creation from GrResourceProvider)

Change-Id: I266bbe089c242fe54d5b7adcc7895aa5a39440a0
Reviewed-on: https://skia-review.googlesource.com/6680
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
ed182d7c9020a0a533ada3e601183f34e4da7504 20-Mar-2017 Brian Osman <brianosman@google.com> Remove SkImage::MakeTextureFromPixmap

Slight variation on https://skia-review.googlesource.com/c/7346/,
which had to be reverted. This version also changes the non-mip
upload path to use a GrTextureProxy. Hopefully this doesn't trigger
the same perf regression that we saw last time.

BUG=skia:

Change-Id: Ic99bdd93904089942fb680c3af9c4c36310074c0
Reviewed-on: https://skia-review.googlesource.com/9892
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
ac6b1fa2c8507bfd5f790bccaebab8e4018cb2cd 20-Mar-2017 Robert Phillips <robertphillips@google.com> Remove budgeted parameter from SkSurface::makeImageSnapshot (take 2)

This unused feature complicates MDB.

Chrome compiles locally for me with this CL.
frameworks/base/libs/hwui compiles locally for me with this CL.

Change-Id: Id3ad64dac72eace52855896df0d7ce3679f15884
Reviewed-on: https://skia-review.googlesource.com/9882
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
919cc4562cc615c7f4b4325def1f7454bc8dd724 18-Mar-2017 Mike Klein <mtklein@google.com> Revert "Revert "Add color spin test for SkColorSpaceXformCanvas""

This reverts commit 73e21af21390c2806eb1350253233903808edd6b.

Reason for revert: I will fix the broken bot next week.

Original change's description:
> Revert "Add color spin test for SkColorSpaceXformCanvas"
>
> This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.
>
> Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE
>
> Original change's description:
> > Add color spin test for SkColorSpaceXformCanvas
> >
> > Also changes behavior to treat nullptr srcs as sRGB.
> >
> > Testing locally, it looks like 353 gms have no diffs from 8888.
> > There are 269 diffs - some are fine (gms that do color space stuff)
> > and some are bugs.
> >
> > BUG=skia:
> >
> > Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> > Reviewed-on: https://skia-review.googlesource.com/9738
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Matt Sarett <msarett@google.com>
> >
>
> TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
> # Not skipping CQ checks because original CL landed > 1 day ago.
> BUG=skia:
>
> Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
> Reviewed-on: https://skia-review.googlesource.com/9823
> Reviewed-by: Eric Boren <borenet@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>
>

TBR=borenet@google.com,mtklein@google.com,msarett@google.com,reviews@skia.org,brianosman@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I766382e6655f614042cded84f547f9fd5b109fca
Reviewed-on: https://skia-review.googlesource.com/9879
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
06ee8e8a3e418cc6e8be3aeac38dad2d45b4f28d 17-Mar-2017 Yuqian Li <liyuqian@google.com> Revert "Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"""

This reverts commit 31249bb2df023868e4585f14519bf17c835f8700.

Reason for revert: Android build is still broken as shown below.

out/target/product/bullhead/obj/NATIVE_TESTS/hwui_unit_tests_intermediates/tests/unit/SkiaPipelineTests.o frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp"
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:211:51: error: non-virtual member function marked 'override' hides virtual member function
sk_sp<SkImage> onNewImageSnapshot(SkBudgeted) override {
^
external/skia/src/image/SkSurface_Base.h:46:28: note: hidden overloaded virtual function 'SkSurface_Base::onNewImageSnapshot' declared here: different number of parameters (0 vs 1)
virtual sk_sp<SkImage> onNewImageSnapshot() = 0;
^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:281:84: error: no viable conversion from 'sk_sp<DeferLayer<DeferTestCanvas>>' to 'sk_sp<SkSurface>'
pipeline->renderFrame(layerUpdateQueue, dirty, nodes, true, contentDrawBounds, surface);
^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
sk_sp<SkSurface> surface);
^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:312:58: error: no viable conversion from 'sk_sp<DeferLayer<ClippedTestCanvas>>' to 'sk_sp<SkSurface>'
SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface);
^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
sk_sp<SkSurface> surface);
^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:343:58: error: no viable conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas>>' to 'sk_sp<SkSurface>'
SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface);
^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
sk_sp<SkSurface> surface);
^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<DeferTestCanvas>'
T* canvas() { return static_cast<T*>(getCanvas()); }
^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:282:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<DeferTestCanvas>::canvas' requested here
EXPECT_EQ(4, surface->canvas()->mDrawCounter);
^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClippedTestCanvas>'
T* canvas() { return static_cast<T*>(getCanvas()); }
^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:313:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClippedTestCanvas>::canvas' requested here
EXPECT_EQ(1, surface->canvas()->mDrawCounter);
^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>'
T* canvas() { return static_cast<T*>(getCanvas()); }
^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:344:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>::canvas' requested here
EXPECT_EQ(1, surface->canvas()->mDrawCounter);

Original change's description:
> Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""
>
> This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173.
>
> Reason for revert: Android-side fix has landed
>
> Original change's description:
> > Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
> >
> > This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.
> >
> > Reason for revert:
> >
> > Android build failed as shown below.
> >
> > frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
> > mImage = surface->makeImageSnapshot(SkBudgeted::kNo);
> >
> > Original change's description:
> > > Remove budgeted parameter from SkSurface::makeImageSnapshot
> > >
> > > This unused feature complicates MDB.
> > >
> > > Chrome compiles locally for me with this CL.
> > >
> > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> > > Reviewed-on: https://skia-review.googlesource.com/9734
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Robert Phillips <robertphillips@google.com>
> > >
> >
> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> >
> > Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
> > Reviewed-on: https://skia-review.googlesource.com/9788
> > Reviewed-by: Yuqian Li <liyuqian@google.com>
> > Commit-Queue: Yuqian Li <liyuqian@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92
> Reviewed-on: https://skia-review.googlesource.com/9843
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I674b0a9d4130e00164d2e0344a92c373cf70f4fd
Reviewed-on: https://skia-review.googlesource.com/9873
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
31249bb2df023868e4585f14519bf17c835f8700 17-Mar-2017 Robert Phillips <robertphillips@google.com> Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""

This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173.

Reason for revert: Android-side fix has landed

Original change's description:
> Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
>
> This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.
>
> Reason for revert:
>
> Android build failed as shown below.
>
> frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
> mImage = surface->makeImageSnapshot(SkBudgeted::kNo);
>
> Original change's description:
> > Remove budgeted parameter from SkSurface::makeImageSnapshot
> >
> > This unused feature complicates MDB.
> >
> > Chrome compiles locally for me with this CL.
> >
> > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> > Reviewed-on: https://skia-review.googlesource.com/9734
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
> Reviewed-on: https://skia-review.googlesource.com/9788
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92
Reviewed-on: https://skia-review.googlesource.com/9843
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
73e21af21390c2806eb1350253233903808edd6b 17-Mar-2017 Eric Boren <borenet@google.com> Revert "Add color spin test for SkColorSpaceXformCanvas"

This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.

Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE

Original change's description:
> Add color spin test for SkColorSpaceXformCanvas
>
> Also changes behavior to treat nullptr srcs as sRGB.
>
> Testing locally, it looks like 353 gms have no diffs from 8888.
> There are 269 diffs - some are fine (gms that do color space stuff)
> and some are bugs.
>
> BUG=skia:
>
> Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> Reviewed-on: https://skia-review.googlesource.com/9738
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
Reviewed-on: https://skia-review.googlesource.com/9823
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9e9188f84b15a25e27f63d5f8de3ccd393d9a173 16-Mar-2017 Yuqian Li <liyuqian@google.com> Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"

This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.

Reason for revert:

Android build failed as shown below.

frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
mImage = surface->makeImageSnapshot(SkBudgeted::kNo);

Original change's description:
> Remove budgeted parameter from SkSurface::makeImageSnapshot
>
> This unused feature complicates MDB.
>
> Chrome compiles locally for me with this CL.
>
> Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> Reviewed-on: https://skia-review.googlesource.com/9734
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
Reviewed-on: https://skia-review.googlesource.com/9788
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5 16-Mar-2017 Robert Phillips <robertphillips@google.com> Remove budgeted parameter from SkSurface::makeImageSnapshot

This unused feature complicates MDB.

Chrome compiles locally for me with this CL.

Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
Reviewed-on: https://skia-review.googlesource.com/9734
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
0c984a0af30989fe20b1f8af18867983a88c48b6 16-Mar-2017 Robert Phillips <robertphillips@google.com> More pre-emptive proxification

These methods are not called yet. This CL is broken out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

Change-Id: I2bf38202750e91e66a8044a790ccfe34d59e08a7
Reviewed-on: https://skia-review.googlesource.com/9683
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
cb01aec63bcb3dee52afcf3605bcd64166b873c0 15-Mar-2017 Matt Sarett <msarett@google.com> Add color spin test for SkColorSpaceXformCanvas

Also changes behavior to treat nullptr srcs as sRGB.

Testing locally, it looks like 353 gms have no diffs from 8888.
There are 269 diffs - some are fine (gms that do color space stuff)
and some are bugs.

BUG=skia:

Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
Reviewed-on: https://skia-review.googlesource.com/9738
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
a4c41b3e83bc684b3535d36590519d6fb676742d 15-Mar-2017 Robert Phillips <robertphillips@google.com> Push setMipColorMode calls further down-stack & add to GrTextureProxy

setMipColorMode seems like an odd call.

Change-Id: I24a1ac3883d52499f3be27282d006144d15b26f1
Reviewed-on: https://skia-review.googlesource.com/9725
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
296b1ccf9b8e9c8b945645efcbaa9c71c7135f58 15-Mar-2017 Robert Phillips <robertphillips@google.com> Retract GrContext from src/gpu/effects

Change-Id: Iceb7263098286bafb2605ef17d1fe6bb25d71e97
Reviewed-on: https://skia-review.googlesource.com/9693
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
63954c9944a5eed4527e0ed368f4e501faf2c625 14-Mar-2017 Brian Osman <brianosman@google.com> GPU version of onMakeColorSpace

New fragment processor that implements end-to-end
color space conversion, with nonlinear blending.

BUG=skia:6242

Change-Id: Ied86170fc28537a2bc209d57530d3ded48b467a9
Reviewed-on: https://skia-review.googlesource.com/9543
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
766fcbb01cece88ad88808581b4ecc5a5cb60e01 13-Mar-2017 Brian Osman <brianosman@google.com> Treat cross context images as Ganesh-created resources

Always create them budgeted, and register them with the cache (not as
wrapped resources).

Re-land (with fixes) of: https://skia-review.googlesource.com/9497

BUG=skia:

Change-Id: I2df7198adc99efa3eea99fc86b0b2930136f22c7
Reviewed-on: https://skia-review.googlesource.com/9544
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
a6953f2a079a64848499709b9c635405f53566e3 10-Mar-2017 Brian Osman <brianosman@google.com> Revert "Treat cross context images as Ganesh-created resources"

This reverts commit cccda60aca592d2320d79e2871e057778b2688ab.

Reason for revert: Android and Windows bot failures.

Original change's description:
> Treat cross context images as Ganesh-created resources
>
> Always create them budgeted, and register them with the cache (not as
> wrapped resources).
>
> BUG=skia:
>
> Change-Id: Id18ecf6e9e512db4be21b4f2bfd8e8c060bbe805
> Reviewed-on: https://skia-review.googlesource.com/9497
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: Ib7bebcad33037dd206c9b06b5cb6c503b00accba
Reviewed-on: https://skia-review.googlesource.com/9541
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
cccda60aca592d2320d79e2871e057778b2688ab 10-Mar-2017 Brian Osman <brianosman@google.com> Treat cross context images as Ganesh-created resources

Always create them budgeted, and register them with the cache (not as
wrapped resources).

BUG=skia:

Change-Id: Id18ecf6e9e512db4be21b4f2bfd8e8c060bbe805
Reviewed-on: https://skia-review.googlesource.com/9497
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b726d58efc91c4eefa5cea0881a823ee108db8fd 09-Mar-2017 Robert Phillips <robertphillips@google.com> Partially defer SkImage_Gpu

One of SkImageCacherator, GrBitmapTextureMaker, GrImageTextureMaker, GrTextureAdjuster, GrTextureProducer or SkImage has to take the first step. This is probably the least odd of the options.

Change-Id: Ie167034553451f4b3633a5a1548dbd4d75839b3d
Reviewed-on: https://skia-review.googlesource.com/9488
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
538f1a36e3cd0327ee2639693143179ec0359151 08-Mar-2017 Robert Phillips <robertphillips@google.com> Switch GrYUVProvider over to GrTextureProxies

This is split out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

Change-Id: I302e6b4c1ffed449a990288ec06f2dfdcdadf1f8
Reviewed-on: https://skia-review.googlesource.com/9448
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
3b65598bceb65736486db27ed49a56d787032747 07-Mar-2017 Brian Osman <brianosman@google.com> Make SkGr.h private and remove unused functions

BUG=skia:

Change-Id: I6699d00c5412ed9d9bf14b032a08b06b1c766bce
Reviewed-on: https://skia-review.googlesource.com/9398
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
32342f032e1dfd133040324f851f0365f9d4cb51 04-Mar-2017 Brian Osman <brianosman@google.com> Rebase and fix chromium

Combine texture provider and resource provider

Largely mechanical. Only three places that were calling createApprox
via texture provider (ie without flags), so that was simple.

BUG=skia:

Change-Id: I876367bcdc6a8db736deedab1028de1972015509
Reviewed-on: https://skia-review.googlesource.com/9176
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
fe3b51636d4216c4ea6cb74ed0964c1d315ca487 02-Mar-2017 Brian Osman <brianosman@google.com> Use GrSemaphore rather than GrFence for external texture data

BUG=skia:

Change-Id: I0d23eb9dcf5c01c71d3571ef97690af68b900807
Reviewed-on: https://skia-review.googlesource.com/9141
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
655f347e282b3cf45fcb813e6e87c6c3e90ad7b5 02-Mar-2017 Brian Osman <brianosman@google.com> Revert "Revert "Revert "Revert "Move GrTextureProvider to src""""

This reverts commit 580ffa0fb17bc4e924776eafd941bf1fab397cde.

Reason for revert: Okay, it landed.

Original change's description:
> Revert "Revert "Revert "Move GrTextureProvider to src"""
>
> This reverts commit 2fe8373bb1d56f531f8a2e03a3087b0aa73e199c.
>
> Reason for revert: Google3 fix isn't landing.
>
> Original change's description:
> > Revert "Revert "Move GrTextureProvider to src""
> >
> > This reverts commit 13d7f5d7c2872ed4298330758e173ae605578cb2.
> >
> > Reason for revert: Fixed client code. Re-landing.
> >
> > Original change's description:
> > > Revert "Move GrTextureProvider to src"
> > >
> > > This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c.
> > >
> > > Reason for revert: Breaking a roll
> > >
> > > Original change's description:
> > > > Move GrTextureProvider to src
> > > >
> > > > With this hidden, we can make further simplification. Just want to test
> > > > this change against our external clients first, to make sure we're okay
> > > > to proceed.
> > > >
> > > > BUG=skia:
> > > >
> > > > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4
> > > > Reviewed-on: https://skia-review.googlesource.com/9072
> > > > Commit-Queue: Brian Osman <brianosman@google.com>
> > > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > >
> > >
> > > TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=skia:
> > >
> > > Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03
> > > Reviewed-on: https://skia-review.googlesource.com/9123
> > > Reviewed-by: Brian Osman <brianosman@google.com>
> > > Commit-Queue: Brian Osman <brianosman@google.com>
> > >
> >
> > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:
> >
> > Change-Id: Ibcb2ea34654315327c46ea8e4de5bf14376d9bdf
> > Reviewed-on: https://skia-review.googlesource.com/9127
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
> >
>
> TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Change-Id: If5c06c7608d76c45438d03fefb21c4edd7da4f36
> Reviewed-on: https://skia-review.googlesource.com/9128
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: I48da978fb73f914c09176e2fefa2882bc8a464a7
Reviewed-on: https://skia-review.googlesource.com/9150
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
580ffa0fb17bc4e924776eafd941bf1fab397cde 02-Mar-2017 Brian Osman <brianosman@google.com> Revert "Revert "Revert "Move GrTextureProvider to src"""

This reverts commit 2fe8373bb1d56f531f8a2e03a3087b0aa73e199c.

Reason for revert: Google3 fix isn't landing.

Original change's description:
> Revert "Revert "Move GrTextureProvider to src""
>
> This reverts commit 13d7f5d7c2872ed4298330758e173ae605578cb2.
>
> Reason for revert: Fixed client code. Re-landing.
>
> Original change's description:
> > Revert "Move GrTextureProvider to src"
> >
> > This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c.
> >
> > Reason for revert: Breaking a roll
> >
> > Original change's description:
> > > Move GrTextureProvider to src
> > >
> > > With this hidden, we can make further simplification. Just want to test
> > > this change against our external clients first, to make sure we're okay
> > > to proceed.
> > >
> > > BUG=skia:
> > >
> > > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4
> > > Reviewed-on: https://skia-review.googlesource.com/9072
> > > Commit-Queue: Brian Osman <brianosman@google.com>
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > >
> >
> > TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:
> >
> > Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03
> > Reviewed-on: https://skia-review.googlesource.com/9123
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
> >
>
> TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Change-Id: Ibcb2ea34654315327c46ea8e4de5bf14376d9bdf
> Reviewed-on: https://skia-review.googlesource.com/9127
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: If5c06c7608d76c45438d03fefb21c4edd7da4f36
Reviewed-on: https://skia-review.googlesource.com/9128
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2fe8373bb1d56f531f8a2e03a3087b0aa73e199c 01-Mar-2017 Brian Osman <brianosman@google.com> Revert "Revert "Move GrTextureProvider to src""

This reverts commit 13d7f5d7c2872ed4298330758e173ae605578cb2.

Reason for revert: Fixed client code. Re-landing.

Original change's description:
> Revert "Move GrTextureProvider to src"
>
> This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c.
>
> Reason for revert: Breaking a roll
>
> Original change's description:
> > Move GrTextureProvider to src
> >
> > With this hidden, we can make further simplification. Just want to test
> > this change against our external clients first, to make sure we're okay
> > to proceed.
> >
> > BUG=skia:
> >
> > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4
> > Reviewed-on: https://skia-review.googlesource.com/9072
> > Commit-Queue: Brian Osman <brianosman@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03
> Reviewed-on: https://skia-review.googlesource.com/9123
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: Ibcb2ea34654315327c46ea8e4de5bf14376d9bdf
Reviewed-on: https://skia-review.googlesource.com/9127
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
13d7f5d7c2872ed4298330758e173ae605578cb2 01-Mar-2017 Brian Osman <brianosman@google.com> Revert "Move GrTextureProvider to src"

This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c.

Reason for revert: Breaking a roll

Original change's description:
> Move GrTextureProvider to src
>
> With this hidden, we can make further simplification. Just want to test
> this change against our external clients first, to make sure we're okay
> to proceed.
>
> BUG=skia:
>
> Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4
> Reviewed-on: https://skia-review.googlesource.com/9072
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03
Reviewed-on: https://skia-review.googlesource.com/9123
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
24429c68c56683252e3fc2a79d9b660eaf96ec0c 01-Mar-2017 Brian Osman <brianosman@google.com> Move GrTextureProvider to src

With this hidden, we can make further simplification. Just want to test
this change against our external clients first, to make sure we're okay
to proceed.

BUG=skia:

Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4
Reviewed-on: https://skia-review.googlesource.com/9072
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2c2bc11aea4dfcd7ee2f5859838a2aa0a56939e0 28-Feb-2017 Brian Osman <brianosman@google.com> Add GrExternalTextureData and SkCrossContextImageData

GrExternalTextureData is an API for exporting the backend-specific
information about a texture in a type-safe way, and without pointing
into the GrTexture. The new detachBackendTexture API lets us release
ownership of a texture to the client.

SkCrossContextImageData is the public API that lets clients upload
textures on one thread/GrContext, then safely transfer ownership to
another thread and GrContext for rendering.

Only GL is implemented/supported right now. Vulkan support requires
that we add thread-safe memory pools, or otherwise transfer the
actual memory block containing the texture to the new context.

Re-land of https://skia-review.googlesource.com/c/8529/

BUG=skia:

Change-Id: I48ebd57d1ea0cfd3a1db10c475f2903afb821966
Reviewed-on: https://skia-review.googlesource.com/8960
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
aa1ab8905e74096f0460af467f126fdb1998a5f9 24-Feb-2017 Brian Osman <brianosman@google.com> Revert "Add GrExternalTextureData and SkCrossContextImageData"

This reverts commit 9ad1f92e2fceea33215c0f13cee42a679fb88d44.

Reason for revert: Breaking lots of bots

Original change's description:
> Add GrExternalTextureData and SkCrossContextImageData
>
> GrExternalTextureData is an API for exporting the backend-specific
> information about a texture in a type-safe way, and without pointing
> into the GrTexture. The new detachBackendTexture API lets us release
> ownership of a texture to the client.
>
> SkCrossContextImageData is the public API that lets clients upload
> textures on one thread/GrContext, then safely transfer ownership to
> another thread and GrContext for rendering.
>
> Only GL is implemented/supported right now. Vulkan support requires
> that we add thread-safe memory pools, or otherwise transfer the
> actual memory block containing the texture to the new context.
>
> BUG=skia:
>
> Change-Id: I784a3a74be69807df038c7d192eaed002c7e45ca
> Reviewed-on: https://skia-review.googlesource.com/8529
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com,reviews@skia.org,chinmaygarde@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: If27d1f4c3a169efb6533170f67a172664c0fe8ce
Reviewed-on: https://skia-review.googlesource.com/8955
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9ad1f92e2fceea33215c0f13cee42a679fb88d44 23-Feb-2017 Brian Osman <brianosman@google.com> Add GrExternalTextureData and SkCrossContextImageData

GrExternalTextureData is an API for exporting the backend-specific
information about a texture in a type-safe way, and without pointing
into the GrTexture. The new detachBackendTexture API lets us release
ownership of a texture to the client.

SkCrossContextImageData is the public API that lets clients upload
textures on one thread/GrContext, then safely transfer ownership to
another thread and GrContext for rendering.

Only GL is implemented/supported right now. Vulkan support requires
that we add thread-safe memory pools, or otherwise transfer the
actual memory block containing the texture to the new context.

BUG=skia:

Change-Id: I784a3a74be69807df038c7d192eaed002c7e45ca
Reviewed-on: https://skia-review.googlesource.com/8529
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
63c67461ed07b5fca35182ac62657b2cb16afbb4 15-Feb-2017 Robert Phillips <robertphillips@google.com> Tighten up GrSurfaceProxy typing

This may reduce the number of "why not GrTextureProxy" issues

Change-Id: I9e0e5042f5801ba9a933b697a380cb0cb54b4522
Reviewed-on: https://skia-review.googlesource.com/8510
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
041f7dfc577822f1e97721a865f86a9a02660cf9 07-Feb-2017 Brian Osman <brianosman@google.com> Bring back SkImage::makeTextureImage

Ensures that an image is GPU backed on the passed-in GrContxt. The new
version requires a destination color space (intended usage of the image),
so we can make a proper decision about decoded format.

This reverts commit d263413a2a92cafe3fd3b051c67d00206c9a0e4d.

BUG=skia:

Change-Id: Ibccddbafc301779559592045ed5a5fa9264e7432
Reviewed-on: https://skia-review.googlesource.com/8116
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
6de99041f13e87ed440f7db13a07693c6c4c461a 31-Jan-2017 Robert Phillips <robertphillips@google.com> Reduce use of SkImage_Base::peekTexture

Change-Id: I079093c9706df4911d47fba04b786e59240e8cb4
Reviewed-on: https://skia-review.googlesource.com/7792
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
f200a90f3e58ce20753420cadced850d7d00dca1 30-Jan-2017 Robert Phillips <robertphillips@google.com> Rationalize GrContext's Gr*Proxy getter naming

This CL replaces the entry points:

asDeferredSurface
asDeferredTexture
asDeferredRenderTarget

with:

GrSurfaceProxy* asSurfaceProxy
sk_sp<GrSurfaceProxy> asSurfaceProxyRef

GrTextureProxy* asTextureProxy
sk_sp<GrTextureProxy> asTextureProxyRef

GrRenderTargetProxy* asRenderTargetProxy
sk_sp<GrRenderTargetProxy> asRenderTargetProxyRef

Change-Id: I7c2b1ea3d702023ff23019815ca13c9ff6f3b32d
Reviewed-on: https://skia-review.googlesource.com/7741
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
26caf898f1db66bc6923b61ef902132bbdff51dd 27-Jan-2017 Robert Phillips <robertphillips@google.com> Add utilities to create GrSurfaceProxy & GrSurfaceContext from backend descs

Change-Id: Iff2278de8ddd6c0dff74e5cf1996702bad31217b
Reviewed-on: https://skia-review.googlesource.com/7647
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b92234a3210bce532f103d71002f4e04d336a182 25-Jan-2017 Brian Osman <brianosman@google.com> Revert "Remove SkImage::MakeTextureFromPixmap"

This reverts commit 8ccbbb455c6ef194920c47e846b95b50f5017138.

Reason for revert: Chrome perf regression

BUG=chrome:684483

Original change's description:
> Remove SkImage::MakeTextureFromPixmap
>
> Another step towards reducing the number of texture upload paths.
>
> BUG=skia:
>
> Change-Id: Ica185e7334f52dc9ebf87e21fe6f60589ef87bb3
> Reviewed-on: https://skia-review.googlesource.com/7346
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com,cblume@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I8bf6970b764018f3ebcac8123e4d6a8ad05317ff
Reviewed-on: https://skia-review.googlesource.com/7484
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
bc7a4fb06780f9829b4b21470fe6f0503d2297cd 23-Jan-2017 Robert Phillips <robertphillips@google.com> Make GrYUVEffect take GrTextureProxies

This opens the door for swapping all the effects over to taking GrTextureProxies.

Change-Id: I3b03ba93a68f9945c9a8fee008fd170ed57616eb
Reviewed-on: https://skia-review.googlesource.com/7344
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
03dd6d5208a6e3d92190e7020300e4399178ae4b 23-Jan-2017 Matt Sarett <msarett@google.com> Reland "Refactor trimming logic for read/writePixels()"

Original CL: https://skia-review.googlesource.com/c/7326/

(1) Move trimming logic into Bitmap/Pixmap level for
raster. Everything goes through here, so we'll
only do the work once.
(2) This means it also goes to GPU level.
(3) Always use SkReadPixelsRec rather than inlining
the logic.
(4) Create an SkWritePixelsRec to encapsulate write
trimming.
(5) Disabled kIndex8 as a dst - always.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug

BUG=skia:6021

Change-Id: I25a964e3c610c4e36d195a255e2150657baec649
Reviewed-on: https://skia-review.googlesource.com/7404
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
26ecfe0af8da1d17a079e17af85c5c576bfeca84 23-Jan-2017 Matt Sarett <msarett@google.com> Revert "Refactor trimming logic for read/writePixels()"

This reverts commit 977f64cbfad1ecd7fd4b1231c694c7e828fda1f0.

Reason for revert: Triggering nanobench asserts

Original change's description:
> Refactor trimming logic for read/writePixels()
>
> (1) Move trimming logic into Bitmap/Pixmap level for
> raster. Everything goes through here, so we'll
> only do the work once.
> (2) This means it also goes to GPU level.
> (3) Always use SkReadPixelsRec rather than inlining
> the logic.
> (4) Create an SkWritePixelsRec to encapsulate write
> trimming.
> (5) Disabled kIndex8 as a dst - always.
>
> BUG=skia:6021
>
> Change-Id: I748f50c3b726f7c6de5462e2b1ccb54bc387a510
> Reviewed-on: https://skia-review.googlesource.com/7326
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=msarett@google.com,brianosman@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6021

Change-Id: If9aacc6ce8b20e3dfe8a0f22ebca653f28356175
Reviewed-on: https://skia-review.googlesource.com/7379
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
977f64cbfad1ecd7fd4b1231c694c7e828fda1f0 20-Jan-2017 Matt Sarett <msarett@google.com> Refactor trimming logic for read/writePixels()

(1) Move trimming logic into Bitmap/Pixmap level for
raster. Everything goes through here, so we'll
only do the work once.
(2) This means it also goes to GPU level.
(3) Always use SkReadPixelsRec rather than inlining
the logic.
(4) Create an SkWritePixelsRec to encapsulate write
trimming.
(5) Disabled kIndex8 as a dst - always.

BUG=skia:6021

Change-Id: I748f50c3b726f7c6de5462e2b1ccb54bc387a510
Reviewed-on: https://skia-review.googlesource.com/7326
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
8ccbbb455c6ef194920c47e846b95b50f5017138 20-Jan-2017 Brian Osman <brianosman@google.com> Remove SkImage::MakeTextureFromPixmap

Another step towards reducing the number of texture upload paths.

BUG=skia:

Change-Id: Ica185e7334f52dc9ebf87e21fe6f60589ef87bb3
Reviewed-on: https://skia-review.googlesource.com/7346
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
aaedae7acb609ac9c914ca435ed845f0139916c0 20-Jan-2017 Brian Osman <brianosman@google.com> Force Index8 to N32 in deferred texture path.

Ganesh doesn't support Index8, because GPUs don't really
support it. So serializing it in the deferred blob just
meant doing an expansion before upload. This forces that
to happen when we build the blob. It also paves the way
for removing the last usage of MakeTextureFromPixmap,
which I'd like to remove.

BUG=skia:

Change-Id: I7c0292098d71e2f8ec1f9910e1234761822ce957
Reviewed-on: https://skia-review.googlesource.com/7340
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
67c18d6b5188a0497f6912a73d964c763d2f8f84 20-Jan-2017 Robert Phillips <robertphillips@google.com> Continue making Ganesh use absolute texture coordinates - take 2

The idea here is that the GrCoordTransform will actually hold a GrTextureProxy (rather than a GrTexture) and then, in GrGLSLPrimitiveProcessor::GetTransformMatrix, use the instantiated width & height (when uploading the transform matrix)

Relanding of: https://skia-review.googlesource.com/c/6977/


Change-Id: Ibc9b9e354f7fc23b1a6e6e4fe7c9fe3cef771c02
Reviewed-on: https://skia-review.googlesource.com/7265
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
2c86249465c28a532c8be55b6ba497021e3110ec 18-Jan-2017 Robert Phillips <robertphillips@google.com> Move read/write-Pixels up to GrSurfaceContext

This still needs to be propagated out in several ways:
replace more instances of GrSurface::read/write-Pixels
add colorSpace to more instances of the TextureContext

but it establishes a beach-head and is exciting enough as is.

Change-Id: If86035aa0245e70b54541e83722b3c75bc5ade13
Reviewed-on: https://skia-review.googlesource.com/7172
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
cb6266b5aa5bbfd880532f08eec83b0c585e873f 17-Jan-2017 Matt Sarett <msarett@google.com> Reland "Add SkImageInfoValidConversion() and SkImageInfoIsValid"

The original is at:
https://skia-review.googlesource.com/c/6887/

The only change to the original is to temporarily comment out
a check in SkImageInfoPriv.h until a Chrome unit test can
be fixed.

The idea is share these standards for the following:
SkImage::readPixels()
SkCanvas::readPixels()
SkCanvas::writePixels()
SkBitmap::readPixels()
SkPixmap::readPixels()

On the raster side, SkPixmap::readPixels() is the right
place to check, because all raster calls go through
there eventually. Then at lower levels (ex: SkPixelInfo),
we can assert.

There's not really a unifying location for gpu calls,
so I've added this in multiple places. I haven't really
dug into the gpu code to SkASSERT() on invalid cases
that we will have already caught.

Follow-up work:
Similar refactor for SkReadPixelRec::trim().
Code cleanup in SkPixelInfo::CopyPixels()

BUG=skia:6021

Change-Id: I6a16f9479bc09e3c87e10c72b0378579f1a70866
Reviewed-on: https://skia-review.googlesource.com/7104
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7a6c9f7be115031a8a86fdae20e8869fd973fdb6 15-Jan-2017 Brian Osman <brianosman@google.com> Revert "Add SkImageInfoValidConversion() and SkImageInfoIsValid"

This reverts commit cf5d6caff7a58f1c7ecc36d9a91ccdada5fc7b78.

Reason for revert: Chrome DEPS roll failing, based on the unit tests, I suspect this is the cause.

Original change's description:
> Add SkImageInfoValidConversion() and SkImageInfoIsValid
>
> The idea is share these standards for the following:
> SkImage::readPixels()
> SkCanvas::readPixels()
> SkCanvas::writePixels()
> SkBitmap::readPixels()
> SkPixmap::readPixels()
>
> On the raster side, SkPixmap::readPixels() is the right
> place to check, because all raster calls go through
> there eventually. Then at lower levels (ex: SkPixelInfo),
> we can assert.
>
> There's not really a unifying location for gpu calls,
> so I've added this in multiple places. I haven't really
> dug into the gpu code to SkASSERT() on invalid cases
> that we will have already caught.
>
> Follow-up work:
> Similar refactor for SkReadPixelRec::trim().
> Code cleanup in SkPixelInfo::CopyPixels()
>
> BUG=skia:6021
>
> Change-Id: I91ecce10e46c1a6530f0af24a9eb8226dbecaaa2
> Reviewed-on: https://skia-review.googlesource.com/6887
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
>

TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reed@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:6021

Change-Id: I63b88e90bdbb3051a14de00ac73a8351ab776d25
Reviewed-on: https://skia-review.googlesource.com/7095
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
cf5d6caff7a58f1c7ecc36d9a91ccdada5fc7b78 13-Jan-2017 Matt Sarett <msarett@google.com> Add SkImageInfoValidConversion() and SkImageInfoIsValid

The idea is share these standards for the following:
SkImage::readPixels()
SkCanvas::readPixels()
SkCanvas::writePixels()
SkBitmap::readPixels()
SkPixmap::readPixels()

On the raster side, SkPixmap::readPixels() is the right
place to check, because all raster calls go through
there eventually. Then at lower levels (ex: SkPixelInfo),
we can assert.

There's not really a unifying location for gpu calls,
so I've added this in multiple places. I haven't really
dug into the gpu code to SkASSERT() on invalid cases
that we will have already caught.

Follow-up work:
Similar refactor for SkReadPixelRec::trim().
Code cleanup in SkPixelInfo::CopyPixels()

BUG=skia:6021

Change-Id: I91ecce10e46c1a6530f0af24a9eb8226dbecaaa2
Reviewed-on: https://skia-review.googlesource.com/6887
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
75a475cf2e7c66eb58b6b8b1441deb5911e53181 13-Jan-2017 Robert Phillips <robertphillips@google.com> Try out refFoo pattern on GrRenderTargetContext

Change-Id: Ifae5618f30c2202b9083f479b58556709ff6126a
Reviewed-on: https://skia-review.googlesource.com/6990
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
82f44319159bb98dcacdbbec7ea643dde5ed024b 11-Jan-2017 Brian Salomon <bsalomon@google.com> Make GrPaints move their GrProcessor ownership into GrPipelineBuilder.

This makes GrPaints usable only once. In some places we must make copies in order to issue draws with the same paint state.

Change-Id: Ie816e5185ce93a064111cad64c6880e1e21184c2
Reviewed-on: https://skia-review.googlesource.com/6844
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
b62ea2240ffbc28bdf2469464e232f674f59584b 22-Dec-2016 Brian Osman <brianosman@google.com> Change GPU read/write pixels API to support color space conversion

GrContext still doesn't convert, but it has the source and destination
color spaces, and call sites are supplying appropriate values where it
makes sense.

BUG=skia:

Change-Id: Ia88733125b8090776cfc9b0dc8030cce365b0b8b
Reviewed-on: https://skia-review.googlesource.com/6400
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
e2f7d1899d890c2f08571e1bd6c7fa2c5ea1be0b 15-Dec-2016 Robert Phillips <robertphillips@google.com> Add a deferred copy surface (take 3)

This CL forces all GrSurface copies to go through a GrSurfaceContext (rather than GrContext).

There is a bit of goofiness going on here until read/writePixels is also consolidated in GrSurfaceContext and a proxy-backed SkImage/SkSurface is added.

This is a reland of https://skia-review.googlesource.com/c/5773/ (Add a deferred copy surface)

Change-Id: Ib8fd96d0569274ef781366eb900ed8ee839ae9bd
Reviewed-on: https://skia-review.googlesource.com/6109
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d316e77c1e1967b439a9a6c11146c54e367bff71 14-Dec-2016 Robert Phillips <robertphillips@google.com> Revert "Add a deferred copy surface (take 2)"

This reverts commit 398487a850431cf495330d4023607df5305a311f.

Reason for revert: See if this is causing the roll failure

Original change's description:
> Add a deferred copy surface (take 2)
>
> This CL forces all GrSurface copies to go through a GrSurfaceContext (rather than GrContext).
>
> There is a bit of goofiness going on here until read/writePixels is also consolidated in GrSurfaceContext and a proxy-backed SkImage/SkSurface is added.
>
> This is a reland of https://skia-review.googlesource.com/c/5773/ (Add a deferred copy surface)
>
> Change-Id: Ide560f569aede5e622420dc2f30eef76357d69f4
> Reviewed-on: https://skia-review.googlesource.com/5939
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1ef40f0d5fb0bca62031f94f10eb18acd753e913
Reviewed-on: https://skia-review.googlesource.com/6024
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
398487a850431cf495330d4023607df5305a311f 13-Dec-2016 Robert Phillips <robertphillips@google.com> Add a deferred copy surface (take 2)

This CL forces all GrSurface copies to go through a GrSurfaceContext (rather than GrContext).

There is a bit of goofiness going on here until read/writePixels is also consolidated in GrSurfaceContext and a proxy-backed SkImage/SkSurface is added.

This is a reland of https://skia-review.googlesource.com/c/5773/ (Add a deferred copy surface)

Change-Id: Ide560f569aede5e622420dc2f30eef76357d69f4
Reviewed-on: https://skia-review.googlesource.com/5939
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
293d696fcfb9f1c83019c4b15c4864cd6649ed78 13-Dec-2016 Robert Phillips <robertphillips@google.com> Revert "Add a deferred copy surface"

This reverts commit 4431de6af930a8638c194b072558ea3a4b79d908.

Reason for revert: ANGLE errors (at the very least)

Original change's description:
> Add a deferred copy surface
>
> This CL forces all GrSurface copies to go through a GrSurfaceContext (rather than GrContext).
>
> There is a bit of goofiness going on here until read/writePixels is also consolidated in GrSurfaceContext and a proxy-backed SkImage/SkSurface is added.
>
> Change-Id: Iab1867668d8146a766201158a251b9174438ee2b
> Reviewed-on: https://skia-review.googlesource.com/5773
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I61408d9e306b9b1ab32f93ab086e95184e12857f
Reviewed-on: https://skia-review.googlesource.com/5938
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
4431de6af930a8638c194b072558ea3a4b79d908 13-Dec-2016 Robert Phillips <robertphillips@google.com> Add a deferred copy surface

This CL forces all GrSurface copies to go through a GrSurfaceContext (rather than GrContext).

There is a bit of goofiness going on here until read/writePixels is also consolidated in GrSurfaceContext and a proxy-backed SkImage/SkSurface is added.

Change-Id: Iab1867668d8146a766201158a251b9174438ee2b
Reviewed-on: https://skia-review.googlesource.com/5773
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
0e8fc8b9e6a138cf4a66b421fb824679df717329 09-Dec-2016 Brian Salomon <bsalomon@google.com> Relandx2 "Remove antialiasing control from GrPaint."

Fixes a bad merge.

This reverts commit 073285c0595d46205d1482cc19af2d7d891bfeae.

Change-Id: I5e92339d9b33d3a6dc58b9fcd2a1b3a5684e8f8a
Reviewed-on: https://skia-review.googlesource.com/5774
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
61624f0c716b576706659750d87b6956f4c15722 09-Dec-2016 Brian Osman <brianosman@google.com> Plumb dst color space in many places, rather than "mode"

This is less to type in most cases, and gives us more information
(for things like picture-backed images, where we need to know all
about the destination surface).

Additionally, strip out the plumbing entirely for bitmap sources,
where we don't need to know anything.

BUG=skia:

Change-Id: I4deff6c7c345fcf62eb08b2aff0560adae4313da
Reviewed-on: https://skia-review.googlesource.com/5748
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
073285c0595d46205d1482cc19af2d7d891bfeae 09-Dec-2016 Brian Salomon <bsalomon@google.com> Revert "Reland "Remove antialiasing control from GrPaint.""

This reverts commit 3944484020d98ff8f386378296106c321279482b.

Reason for revert: Merges badly with a recent change. Will rebase and reland.

Original change's description:
> Reland "Remove antialiasing control from GrPaint."
>
> This contains fixes for GLPrograms test and mixed samples rendering.
>
> This reverts commit 419d81eed4a010e6080db199795117cbedf9e6e4.
>
> BUG=skia:
>
> Change-Id: If8f002fbfaaaab6d1607403f2b15ccc7f1e17e87
> Reviewed-on: https://skia-review.googlesource.com/5763
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
BUG=skia:
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Iff9657041e28604a845bc5a9acec7c9b248c53bd
Reviewed-on: https://skia-review.googlesource.com/5772
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
3944484020d98ff8f386378296106c321279482b 09-Dec-2016 Brian Salomon <bsalomon@google.com> Reland "Remove antialiasing control from GrPaint."

This contains fixes for GLPrograms test and mixed samples rendering.

This reverts commit 419d81eed4a010e6080db199795117cbedf9e6e4.

BUG=skia:

Change-Id: If8f002fbfaaaab6d1607403f2b15ccc7f1e17e87
Reviewed-on: https://skia-review.googlesource.com/5763
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
d263413a2a92cafe3fd3b051c67d00206c9a0e4d 05-Dec-2016 Brian Osman <brianosman@google.com> Remove SkImage::makeTextureImage

No one (other than test code) was using this API, and it lacks the context
to do the right thing. Specifically, if this forces a decode of an encoded
image, we don't know the intended use (re: color spaces) to determine how
we should decode.

BUG=skia:

Change-Id: I6ff700b3a5adce8257f35c5e3dd5ba557b2a3219
Reviewed-on: https://skia-review.googlesource.com/5614
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
419d81eed4a010e6080db199795117cbedf9e6e4 08-Dec-2016 Brian Salomon <bsalomon@google.com> Revert "Remove antialiasing control from GrPaint."

This reverts commit 9f549358b3ac9f61e78b194e39d6ac6eb322e35e.

Reason for revert: hitting asserts

Change-Id: I542d34edc05ecf72b7646263f25736a0950c78e7
Reviewed-on: https://skia-review.googlesource.com/5707
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
9f549358b3ac9f61e78b194e39d6ac6eb322e35e 08-Dec-2016 Brian Salomon <bsalomon@google.com> Remove antialiasing control from GrPaint.

This adds an additional param (of new enum type GrAA) to draws that can antialias and a new enum GrAAType to indicate the AA technique (none, fragment shader computed coverage, msaa).

Some GMs change due to this:
1) In some places we weren't disabling MSAA when the draw was supposed to be unantialiased.
2) Some bounding rect draws that use GrFragmentProcessors were unnecessarily turning on antialiasing, by disabling it a very small number of pixel LSBs change.

Change-Id: I7d8d8793dda70bcd373d09055beb9949c1a8a4d0
Reviewed-on: https://skia-review.googlesource.com/5608
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
a422d706b1a92e71c6f940de3ed3d0b84a13eb1b 30-Nov-2016 Eric Karl <ericrk@chromium.org> Disable mipmap pre-generation path

There is a bug in the mipmap pre-generation logic in use in
getDeferredTextureImageData. This can cause runaway memory leaks, so we
are disabling this path until we can investigate further.

BUG=669775

Change-Id: I2027f6f7994e089edd4f3452284e894752b31779
Reviewed-on: https://skia-review.googlesource.com/5357
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
e8e54580c3c91fd485187af040af118aa5153261 28-Nov-2016 Brian Osman <brianosman@google.com> GrTextureProducer cleanup, phase two: Producer, Adjuster, Maker

Previously: GrTextureProducer, GrTextureAdjuster, and GrTextureMaker
were all in GrTextureParamsAdjuster.h. Now they're each in their own
header.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5202

Change-Id: I17fa9057b11511aa4d3e15569ea1c378cfec4c80
Reviewed-on: https://skia-review.googlesource.com/5202
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
3b66ab6f9fdc6eacdf0ee1921da28751de30c018 28-Nov-2016 Brian Osman <brianosman@google.com> GrTextureProducer cleanup, phase one: Bitmap and Image makers

Split these into their own files, and actually name the files after the
classes they contain. The top three classes in the hierarchy still need
attention, but those are going to be trickier.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5195

Change-Id: I295f4d50e35748eac38a31f302e14b5b62653c55
Reviewed-on: https://skia-review.googlesource.com/5195
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7992da32f02f90e0ac9ab6914eb31676b502eb71 18-Nov-2016 Brian Osman <brianosman@google.com> Support decoding images to multiple formats, depending on usage

Our codec generator will now preserve any asked-for color space, and
convert the encoded data to that representation. Cacherator now
allows decoding an image to both legacy (nullptr color space), and
color-correct formats. In color-correct mode, we choose the best
decoded format, based on the original properties, and our backend's
capabilities. Preference is given to the native format, when it's
already texturable (sRGB 8888 or F16 linear). Otherwise, we prefer
linear F16, and fall back to sRGB when that's not an option.

Re-land (and fix) of:
https://skia-review.googlesource.com/c/4438/
https://skia-review.googlesource.com/c/4796/

BUG=skia:5907

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4838

Change-Id: I20ff972ffe1c7e6535ddc501e2a8ab8c246e4061
Reviewed-on: https://skia-review.googlesource.com/4838
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
514baff8be7f71111aa7bfb9b099a096b31e16ec 17-Nov-2016 Brian Salomon <bsalomon@google.com> Rename GrTextureParams to GrSamplerParams

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4965

Change-Id: I7d52e81c670e92ca96117284f44b274ce3cc3671
Reviewed-on: https://skia-review.googlesource.com/4965
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
e60ad620fe236ce4c1e85a31bd53ed0c848da8c3 17-Nov-2016 Robert Phillips <robertphillips@google.com> Guard against instantiate & accessRenderTarget failures

Chrome's fuzzer have reminded me that, since we are deferring allocation, instantiate and accessRenderTarget can now fail further down the call stack.

This should probably be cherry picked back to M56.

BUG=665681,665500,665621

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4929

Change-Id: I44d81ff29586dfe75ddda30b5ed8ca76354542d6
Reviewed-on: https://skia-review.googlesource.com/4929
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
57ae6cfe01b811aaead80872ed9e5e1d30f35f81 15-Nov-2016 Brian Osman <brianosman@google.com> Revert "Support decoding images to multiple formats, depending on usage"

This reverts commit c73a1ecbed64652b3d7aa8dc6face9a2205ce830.

Reason for revert: ANGLE and CommandBuffer failures

Original change's description:
> Support decoding images to multiple formats, depending on usage
>
> Our codec generator will now preserve any asked-for color space, and
> convert the encoded data to that representation. Cacherator now
> allows decoding an image to both legacy (nullptr color space), and
> color-correct formats. In color-correct mode, we choose the best
> decoded format, based on the original properties, and our backend's
> capabilities. Preference is given to the native format, when it's
> already texturable (sRGB 8888 or F16 linear). Otherwise, we prefer
> linear F16, and fall back to sRGB when that's not an option.
>
> BUG=skia:5907
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4438
>
> Change-Id: I847c243dcfb72d8c0f1f6fc73c09547adea933f0
> Reviewed-on: https://skia-review.googlesource.com/4438
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

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

Change-Id: I1818f937464573d601f64e5a1f1eb43f5a778f4e
Reviewed-on: https://skia-review.googlesource.com/4832
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
c73a1ecbed64652b3d7aa8dc6face9a2205ce830 14-Nov-2016 Brian Osman <brianosman@google.com> Support decoding images to multiple formats, depending on usage

Our codec generator will now preserve any asked-for color space, and
convert the encoded data to that representation. Cacherator now
allows decoding an image to both legacy (nullptr color space), and
color-correct formats. In color-correct mode, we choose the best
decoded format, based on the original properties, and our backend's
capabilities. Preference is given to the native format, when it's
already texturable (sRGB 8888 or F16 linear). Otherwise, we prefer
linear F16, and fall back to sRGB when that's not an option.

BUG=skia:5907

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4438

Change-Id: I847c243dcfb72d8c0f1f6fc73c09547adea933f0
Reviewed-on: https://skia-review.googlesource.com/4438
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
7b8400dad2f82dcc6ed3c7cc1707ebaf85f04840 08-Nov-2016 Brian Osman <brianosman@google.com> Rename SkSourceGammaTreatment to SkDestinationSurfaceColorMode

This is much more explicit about what that type represents (are we in
legacy mode or not), which also makes it suitable for other (upcoming)
usage.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4529

Change-Id: Iacb397c34e7765f1ca86c0195bc622b2be4d9acf
Reviewed-on: https://skia-review.googlesource.com/4529
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
67b39de70fb5d10caebfc75f418754186e5226c3 07-Nov-2016 Hal Canary <halcanary@google.com> s/SkAutoTUnref/sk_sp/ in src/ part 1

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4480

Change-Id: I7d3219b02ad5094785e1b7635a9482e69aadbc8c
Reviewed-on: https://skia-review.googlesource.com/4480
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
145dbcd165d9d27298eb8888bc240e2d06a95464 03-Nov-2016 Ben Wagner <bungeman@google.com> Remove SkAutoTDelete.

Replace with std::unique_ptr.

Change-Id: I5806cfbb30515fcb20e5e66ce13fb5f3b8728176
Reviewed-on: https://skia-review.googlesource.com/4381
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
7ecc59610de72043e9b7ebaf1ef45c43425e54fc 02-Nov-2016 Ben Wagner <bungeman@google.com> Remove SkAutoTDeleteArray

This class is already just an alias for std::unique_ptr<T[]>, so replace
all uses with that and delete the class.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Test-Ubuntu-Clang-Golo-GPU-GT610-x86_64-Debug-ASAN-Trybot

Change-Id: I40668d398356a22da071ee791666c7f728b59266
Reviewed-on: https://skia-review.googlesource.com/4362
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
/external/skia/src/image/SkImage_Gpu.cpp
7d954ad797176afedb9262fdea4507d0fc60eb9d 28-Oct-2016 Mike Reed <reed@google.com> remove xfermode from public api

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4020

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I19cd056f2af778f10e8c6c2b7b2735593b43dbac
Reviewed-on: https://skia-review.googlesource.com/4020
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
1105224f9701e57ec5ce0354d6a380b664f5c638 27-Oct-2016 Brian Osman <brianosman@google.com> Rename GrDrawContext to GrRenderTargetContext

This is in preparation for GrTextureContext and GrSurfaceContext

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4030

Change-Id: Ie58c93052e68f3f1f5fe8d15d63760de274a6fbd
Reviewed-on: https://skia-review.googlesource.com/4030
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
6bd5284415bd983b0628c4941dff5def40018f5a 27-Oct-2016 bungeman <bungeman@google.com> Remove SkAutoTUnref and SkAutoTDelete from public includes.

This also makes the required changed to src, tests, and tools. The few
public APIs modified by this change appear to be unused outside of Skia.

Removing these from the public API makes it easier to ensure users are
no longer using them.

This also updates GrGpu::wrapBackendXXX and the
::onWrapBackendXXX methods to clarify ownership.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2448593002

Review-Url: https://codereview.chromium.org/2448593002
/external/skia/src/image/SkImage_Gpu.cpp
6c15cc7e9d65981ec0363a050d2248f96e21a5da 17-Oct-2016 Brian Osman <brianosman@google.com> Modify deferred texture image API's handling of gamma

This tries to match the behavior you would see if you rendered directly to
a canvas without going through this round-trip. Specifically, mips are
built in the same way that they would be according to the context's
internal logic. To make things clearer, the user passes in the color space
of the destination surface, not our (internal) enum.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3526

Change-Id: If8c61500d34ae712227da0284f3a80cacf84113a
Reviewed-on: https://skia-review.googlesource.com/3526
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/image/SkImage_Gpu.cpp
32b5e70178acda2ce1548cce1740841e7d30344a 13-Oct-2016 brianosman <brianosman@google.com> Preserve color space of images in deferred texture API

For raster images, this already worked (we were peeking the
pixmap's info). But for generated images, we discarded
format and color space information. Fixes an error with the
deferred GMs in sRGB modes, and also should help the Chrome
color correctness work.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2416453004

Review-Url: https://codereview.chromium.org/2416453004
/external/skia/src/image/SkImage_Gpu.cpp
921bc678a7b81de31b4e672326ed2f37ffb66b10 22-Sep-2016 cblume <cblume@chromium.org> Is char* or uintptr_t easier to read?

Using a char* instead of uintptr_t allows us to use fewer
reinterpret_casts which may make the code easier to read.

BUG=648512
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2356703002

Review-Url: https://codereview.chromium.org/2356703002
/external/skia/src/image/SkImage_Gpu.cpp
05a3eac35c58295caf5937da42c32da540b05cb0 20-Sep-2016 cblume <cblume@chromium.org> SkASSERT firing because pointer wraps negative.

Some pointers are being cast to intptr_t so they can be used with
SkAlign8(). However, a large pointer value might become a negative
integer since intptr_t is signed.

When comparing these intptr_ts, we expect the larger pointer value to be
greater. But it might be so large that it becomes negative, causing it
to be less than.

A SkASSERT is firing for this exact reason.

BUG=648452
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2353453004

Review-Url: https://codereview.chromium.org/2353453004
/external/skia/src/image/SkImage_Gpu.cpp
12f752723b31bb015ded118bfa466c2f1e9b2905 19-Sep-2016 cblume <cblume@chromium.org> Remove release asserts.

A handful of changes were added to investigate a bug occurring rarely.
The bug has been found and those changes can be reverted.

BUG=643845
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2347423002

Review-Url: https://codereview.chromium.org/2347423002
/external/skia/src/image/SkImage_Gpu.cpp
94ddf54a6da1b4c65beaf1a32ac1718959b0709c 16-Sep-2016 cblume <cblume@chromium.org> Keeping asserts in release.

We have a bug that is showing up occasionally in Canary.
I want to see if these asserts could provide insight into why the bug
happens.

BUG=643845
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2342903003

Review-Url: https://codereview.chromium.org/2342903003
/external/skia/src/image/SkImage_Gpu.cpp
33e0cb5e7f9926b96db209c825f1eeca7c15bb16 30-Aug-2016 cblume <cblume@chromium.org> Store mipmap levels in deferred texture image

This is a follow-up to https://codereview.chromium.org/2115023002/ and
https://codereview.chromium.org/2034933003/ which were reverted due to
an access violation and a memory leak, respectively.

When creating the deferred texture image, detect if using medium / high
quality. If so, generate and store mipmaps in the deferred texture
image.

When creating a texture from that be sure to read it back out.

BUG=578304
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2242883004

Review-Url: https://codereview.chromium.org/2242883004
/external/skia/src/image/SkImage_Gpu.cpp
19fe41e85e6ce3e78b3a69fce1cf28edf937027d 23-Aug-2016 bsalomon <bsalomon@google.com> Remove SkPixelRef::getTexture()
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2264293003

Review-Url: https://codereview.chromium.org/2264293003
/external/skia/src/image/SkImage_Gpu.cpp
5814b8a1dda25665810e05408895ed202d31d472 18-Aug-2016 brianosman <brianosman@google.com> Add alpha type to texture producer

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2250403003

Review-Url: https://codereview.chromium.org/2250403003
/external/skia/src/image/SkImage_Gpu.cpp
69c166d2ce3f4d2099f35f8e88f1aa56ceeaf960 17-Aug-2016 brianosman <brianosman@google.com> Add alphaType() to SkImage

Keep isOpaque as a convenience method -- many places really only need to
know that for optimization purposes (SrcOver -> Src, etc...).

In all the places where we pull data back out or convert to another
object and need to supply an SkImageInfo, we can avoid losing information
about premulness.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2250663002

Review-Url: https://codereview.chromium.org/2250663002
/external/skia/src/image/SkImage_Gpu.cpp
2d5b7147032e3806b5895667a899440119707c2d 17-Aug-2016 reed <reed@google.com> pin as texture api

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2241353002

Review-Url: https://codereview.chromium.org/2241353002
/external/skia/src/image/SkImage_Gpu.cpp
e9d55c57a6537108ddebdc7afe2b92b4d83426be 10-Aug-2016 halcanary <halcanary@google.com> Revert of Store mipmap levels in deferred texture image (patchset #11 id:200001 of https://codereview.chromium.org/2115023002/ )

Reason for revert:
speculative revert: android dm crashes

Original issue's description:
> Store mipmap levels in deferred texture image
>
> This is a follow-up to https://codereview.chromium.org/2034933003/ which
> was reverted due to a memory leak.
>
> When creating the deferred texture image, detect if using medium / high
> quality. If so, generate and store mipmaps in the deferred texture
> image.
>
> When creating a texture from that be sure to read it back out.
>
> BUG=578304
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2115023002
>
> Committed: https://skia.googlesource.com/skia/+/d6113140f7ae8996f679ac6698a60fb8c1386da3

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

Review-Url: https://codereview.chromium.org/2227323002
/external/skia/src/image/SkImage_Gpu.cpp
d6113140f7ae8996f679ac6698a60fb8c1386da3 09-Aug-2016 cblume <cblume@chromium.org> Store mipmap levels in deferred texture image

This is a follow-up to https://codereview.chromium.org/2034933003/ which
was reverted due to a memory leak.

When creating the deferred texture image, detect if using medium / high
quality. If so, generate and store mipmaps in the deferred texture
image.

When creating a texture from that be sure to read it back out.

BUG=578304
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2115023002

Review-Url: https://codereview.chromium.org/2115023002
/external/skia/src/image/SkImage_Gpu.cpp
9a5a201472c3fb9f02b954ba09ae1ec13ebd50f4 08-Aug-2016 reed <reed@google.com> use onPeekBitmap instead of asLegacyBitmap

Since we know we are raster-backed at this point, it is fine, plus it avoids the copy-mutable logic in asLegacyBitmap, which is not needed here (and is slower if our bitmap was built with kNever_SkCopyPixelsMode).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2223653002

Review-Url: https://codereview.chromium.org/2223653002
/external/skia/src/image/SkImage_Gpu.cpp
ffae30db4ade45b469ac3432ec373b6f6daee6e7 03-Aug-2016 bungeman <bungeman@google.com> Convert SkAutoTUnref<SkData> to sk_sp<SkData>.

With the move from SkData::NewXXX to SkData::MakeXXX most
SkAutoTUnref<SkData> were changed to sk_sp<SkData>. However,
there are still a few SkAutoTUnref<SkData> around, so clean
them up.

Review-Url: https://codereview.chromium.org/2212493002
/external/skia/src/image/SkImage_Gpu.cpp
4d516a6903d83414b5615ca9388b52064da6990c 28-Jul-2016 bsalomon <bsalomon@google.com> Serialize SkColorSpace into DeferredTextureImage

This fixes a memory leak that occurs when DeferredTextureImage is deallocated without being destroyed. It is intended to be stored in discarable memory and thus this has to be safe.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2184823010

Review-Url: https://codereview.chromium.org/2184823010
/external/skia/src/image/SkImage_Gpu.cpp
6738c702423226619ee0172c12a3a007c5f68e57 27-Jul-2016 robertphillips <robertphillips@google.com> Rename GrContext's newDrawContext & drawContext to makeDrawContext

These both return sk_sp.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186073002

Review-Url: https://codereview.chromium.org/2186073002
/external/skia/src/image/SkImage_Gpu.cpp
396fcdba14a0101ed43dcc3863585bf50c4ed6cc 22-Jul-2016 brianosman <brianosman@google.com> Cleanup of code that converts from GPU-backed resources to SkImageInfo

Functions like GrMakeInfoFromTexture encouraged incorrect code to be
written. Similarly, the ability to construct an info from any GrSurface
was never going to be correct. Luckily, the only client of that had all
of the correct parameters much higher on the stack (and dictated or
replaced most of the properties of the returned info anyway).

With this, I can finally remove the color space as an output of the
pixel config -> color type conversion, which was never going to be
correct.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2173513002

Review-Url: https://codereview.chromium.org/2173513002
/external/skia/src/image/SkImage_Gpu.cpp
dfe4f2e4fe5b162d4adb4486fe751f1e3b30bea7 21-Jul-2016 brianosman <brianosman@google.com> Add SkColorSpace to GrDrawContext

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164363002

Review-Url: https://codereview.chromium.org/2164363002
/external/skia/src/image/SkImage_Gpu.cpp
f292a0c862f1c120cade1e8ac0f1882844eb343a 21-Jul-2016 robertphillips <robertphillips@google.com> Remove SkGrPixelRef

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2167173002

Review-Url: https://codereview.chromium.org/2167173002
/external/skia/src/image/SkImage_Gpu.cpp
dddbe380b0e6b690041a4e020aefe57f1b21691a 20-Jul-2016 brianosman <brianosman@google.com> Adding an SkColorSpace to SkImage_Gpu

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165703003

Review-Url: https://codereview.chromium.org/2165703003
/external/skia/src/image/SkImage_Gpu.cpp
ea70c4bb22394c8dcc29a369d3422a2b8f3b3e80 20-Jul-2016 robertphillips <robertphillips@google.com> Remove SkDevice::accessRenderTarget virtual
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2167723002

Review-Url: https://codereview.chromium.org/2167723002
/external/skia/src/image/SkImage_Gpu.cpp
9ecaa1d9f0972a1cb6334aff070f4ef081034b26 19-Jul-2016 brianosman <brianosman@google.com> Remove unused MakeFromTextureCopy API

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165803002

Review-Url: https://codereview.chromium.org/2165803002
/external/skia/src/image/SkImage_Gpu.cpp
634b43008025d039f3f2f1f6c01e8044ffbb901f 13-Jul-2016 bsalomon <bsalomon@google.com> Add a function to convert a texture backed SkImage to raster.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147493004

Review-Url: https://codereview.chromium.org/2147493004
/external/skia/src/image/SkImage_Gpu.cpp
6efeda4838f5944e4e14ff156be5593aa59cf1aa 22-Jun-2016 brianosman <brianosman@google.com> Revert of Store mipmap levels in deferred texture image (patchset #15 id:280001 of https://codereview.chromium.org/2034933003/ )

Reason for revert:
Crashes on a few different bots (including ASAN). Examples:

https://build.chromium.org/p/client.skia.android/builders/Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release/builds/6324
https://build.chromium.org/p/client.skia/builders/Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Debug/builds/5400
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Debug-ASAN/builds/3539

Original issue's description:
> Store mipmap levels in deferred texture image
>
> When creating the deferred texture image, detect if using medium / high
> quality. If so, generate and store mipmaps in the deferred texture
> image.
>
> When creating a texture from that be sure to read it back out.
>
> BUG=578304
> R=bsalomon@google.com
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2034933003
>
> Committed: https://skia.googlesource.com/skia/+/b3105190a6e02d37f1d7f07a3a8bdd368ec7f157

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

Review-Url: https://codereview.chromium.org/2083393002
/external/skia/src/image/SkImage_Gpu.cpp
b3105190a6e02d37f1d7f07a3a8bdd368ec7f157 21-Jun-2016 cblume <cblume@chromium.org> Store mipmap levels in deferred texture image

When creating the deferred texture image, detect if using medium / high
quality. If so, generate and store mipmaps in the deferred texture
image.

When creating a texture from that be sure to read it back out.

BUG=578304
R=bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2034933003

Review-Url: https://codereview.chromium.org/2034933003
/external/skia/src/image/SkImage_Gpu.cpp
b109b8c5ec40a7dd85a0a2951a1f98fa63b805aa 16-Jun-2016 brianosman <brianosman@google.com> Lots of progress on switching to SkColorSpace rather than SkColorProfileType

Fixed a bunch of code in Ganesh, as well as usage of SkColorProfileType in most of our tools (DM, SampleApp, Viewer, nanobench, skiaserve, HelloWorld).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069173002

Committed: https://skia.googlesource.com/skia/+/6a61a875467646f8dbc37cfecf49e12d1f475170
Review-Url: https://codereview.chromium.org/2069173002
/external/skia/src/image/SkImage_Gpu.cpp
ab8241880d09eb1774b4993ca6df048a27b7020c 16-Jun-2016 brianosman <brianosman@google.com> Revert of Lots of progress switching to SkColorSpace rather than SkColorProfileType (patchset #10 id:180001 of https://codereview.chromium.org/2069173002/ )

Reason for revert:
Mac crashes in GrUploadPixmapToTexture

Original issue's description:
> Lots of progress on switching to SkColorSpace rather than SkColorProfileType
>
> Fixed a bunch of code in Ganesh, as well as usage of SkColorProfileType in most of our tools (DM, SampleApp, Viewer, nanobench, skiaserve, HelloWorld).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069173002
>
> Committed: https://skia.googlesource.com/skia/+/6a61a875467646f8dbc37cfecf49e12d1f475170

TBR=reed@google.com,herb@google.com,msarett@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/2072813002
/external/skia/src/image/SkImage_Gpu.cpp
6a61a875467646f8dbc37cfecf49e12d1f475170 16-Jun-2016 brianosman <brianosman@google.com> Lots of progress on switching to SkColorSpace rather than SkColorProfileType

Fixed a bunch of code in Ganesh, as well as usage of SkColorProfileType in most of our tools (DM, SampleApp, Viewer, nanobench, skiaserve, HelloWorld).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069173002

Review-Url: https://codereview.chromium.org/2069173002
/external/skia/src/image/SkImage_Gpu.cpp
b4da01d8f719f3c43d492e8f62a7e2c861e9ef27 13-Jun-2016 ericrk <ericrk@chromium.org> Add prescale option to deferred params

Currently, Skia always uploads GPU textures at full resolution. This
change allows us to pass a pre-scale mip level to the
deferred texture image logic, which causes us to pre-scale the image
to the given mip level, and upload that mip level instead of the full
image.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2007113008

Review-Url: https://codereview.chromium.org/2007113008
/external/skia/src/image/SkImage_Gpu.cpp
b445a57e6c36cce86580b618701b5af708a6f271 09-Jun-2016 jbauman <jbauman@chromium.org> Add NV12 texture conversion support.

If textures 1 and 2 passed into MakeFromYUVTexturesCopy are the same,
then treat the input as NV12 and sample from the g component of texture
2.

BUG=skia:5209
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2016593002

Review-Url: https://codereview.chromium.org/2016593002
/external/skia/src/image/SkImage_Gpu.cpp
06ca8ec87cf6fab57cadd043a5ac18c4154a4129 09-Jun-2016 bungeman <bungeman@google.com> sk_sp for Ganesh.

Convert use of GrFragmentProcessor, GrGeometryProcessor, and
GrXPFactory to sk_sp. This clarifies ownership and should
reduce reference count churn by moving ownership.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2041113004

Review-Url: https://codereview.chromium.org/2041113004
/external/skia/src/image/SkImage_Gpu.cpp
982eb7f377a0c771345276558072deb2fcea0d3e 06-Jun-2016 brianosman <brianosman@google.com> Add new SkSourceGammaTreatment enum, used in situations like mipmap construction, where we need to know if we should respect (vs. ignore) the gamma encoding of sRGB tagged images. Plumb that extensively.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2037413002

Review-Url: https://codereview.chromium.org/2037413002
/external/skia/src/image/SkImage_Gpu.cpp
186d2d430ba248fea1e00669154b95252ac9a486 03-Jun-2016 cblume <cblume@chromium.org> Plumbing mipmaps to the point of creation.

When creating a DeferredTextureImage we may create mipmaps.
Those mipmaps need to then be passed along for when the texture is
actually created.

R=bsalomon@google.com
BUG=578304
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2031273002

Review-Url: https://codereview.chromium.org/2031273002
/external/skia/src/image/SkImage_Gpu.cpp
2c05280a0f792fc94c879e29011312a57532786b 31-May-2016 cblume <cblume@chromium.org> Add mip support to *DeferredTextureImageData functions.

As a first step, I want to add the ability to store multiple mip levels
in the opaque object.

I will follow this with using SkMipMap to generate and store the mip
levels and generating the texture from those stored mip levels.

R=bsalomon@chromium.org
CC=ericrk@chromium.org
BUG=578304
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2023573002

Review-Url: https://codereview.chromium.org/2023573002
/external/skia/src/image/SkImage_Gpu.cpp
87751127172bd49c632c9290ffde43385d38ce61 20-May-2016 senorblanco <senorblanco@chromium.org> Fix leak in SkImage_Gpu::onMakeSubset().

BUG=skia:5327
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2003573002

Review-Url: https://codereview.chromium.org/2003573002
/external/skia/src/image/SkImage_Gpu.cpp
846c051a4800b3cea341a0195db24297d6d9047f 13-May-2016 cdalton <cdalton@nvidia.com> Convert GrClip to an abstract base class

Converts GrClip to an abstract base class and adds a "GrFixedClip"
implementation. GrFixedClip denotes a clip implemented with fixed-
function hardware. GrFixedClip allows us to remove the stateful
"fClipMode" member from GrClipMaskManager, and in the future will
be able to nicely encapsulate window rectangles.

After this change GrClipMaskManager is just a wrapper around
GrDrawTarget. We may want to consider removing it altogether.

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

Review-Url: https://codereview.chromium.org/1971343002
/external/skia/src/image/SkImage_Gpu.cpp
76948d4faaca9fd7730576e2f79790ca8d93c10b 04-May-2016 robertphillips <robertphillips@google.com> Add Gr*Proxy classes

This isn't wired in anywhere yet.

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

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

Committed: https://skia.googlesource.com/skia/+/92605b35efa0155c44d24bd8415b4cc1db8831db

Review-Url: https://codereview.chromium.org/1937553002
/external/skia/src/image/SkImage_Gpu.cpp
4f16e6361db190d3cf1b6e8a117071cb0b54d0f5 03-May-2016 robertphillips <robertphillips@google.com> Revert of Add Gr*Proxy classes (patchset #10 id:220001 of https://codereview.chromium.org/1937553002/ )

Reason for revert:
ASAN

Original issue's description:
> Add Gr*Proxy classes
>
> This isn't wired in anywhere yet.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
>
> Committed: https://skia.googlesource.com/skia/+/de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1
>
> Committed: https://skia.googlesource.com/skia/+/92605b35efa0155c44d24bd8415b4cc1db8831db

TBR=bsalomon@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/1944953002
/external/skia/src/image/SkImage_Gpu.cpp
92605b35efa0155c44d24bd8415b4cc1db8831db 03-May-2016 robertphillips <robertphillips@google.com> Add Gr*Proxy classes

This isn't wired in anywhere yet.

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

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

Review-Url: https://codereview.chromium.org/1937553002
/external/skia/src/image/SkImage_Gpu.cpp
89d09a1f70280cd0317d8a8d4e8973e5fa43182c 03-May-2016 robertphillips <robertphillips@google.com> Revert of Add Gr*Proxy classes (patchset #9 id:160001 of https://codereview.chromium.org/1937553002/ )

Reason for revert:
Seems to be breaking N7 & ANGLE bots

Original issue's description:
> Add Gr*Proxy classes
>
> This isn't wired in anywhere yet.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
>
> Committed: https://skia.googlesource.com/skia/+/de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1

TBR=bsalomon@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/1949463002
/external/skia/src/image/SkImage_Gpu.cpp
de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1 03-May-2016 robertphillips <robertphillips@google.com> Add Gr*Proxy classes

This isn't wired in anywhere yet.

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

Review-Url: https://codereview.chromium.org/1937553002
/external/skia/src/image/SkImage_Gpu.cpp
d4c741e3d0e0fa633399691c47f76b6c7841ee83 28-Apr-2016 robertphillips <robertphillips@google.com> Refactor drawContext/RenderTarget creation
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1914883002

Committed: https://skia.googlesource.com/skia/+/2f1c42e8448bbbadeb3df1c626faa90aa33f8907

Review-Url: https://codereview.chromium.org/1914883002
/external/skia/src/image/SkImage_Gpu.cpp
aa19a5fbc58e372df11443c90a25f02a04ecef52 28-Apr-2016 robertphillips <robertphillips@google.com> Revert of Refactor drawContext/RenderTarget creation (patchset #8 id:140001 of https://codereview.chromium.org/1914883002/ )

Reason for revert:
Experimental revert to see if this is blocking the DEPS roll.

Original issue's description:
> Refactor drawContext/RenderTarget creation
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1914883002
>
> Committed: https://skia.googlesource.com/skia/+/2f1c42e8448bbbadeb3df1c626faa90aa33f8907

TBR=bsalomon@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/1929833004
/external/skia/src/image/SkImage_Gpu.cpp
2f1c42e8448bbbadeb3df1c626faa90aa33f8907 27-Apr-2016 robertphillips <robertphillips@google.com> Refactor drawContext/RenderTarget creation
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1914883002

Review-Url: https://codereview.chromium.org/1914883002
/external/skia/src/image/SkImage_Gpu.cpp
6c7e325236b7fbb9c9b14ebb4715f88a59718695 27-Apr-2016 robertphillips <robertphillips@google.com> Bring sk_sp to GrDrawContext

This is split out of: https://codereview.chromium.org/1914883002/ (Refactor drawContext/RenderTarget creation)

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

Review-Url: https://codereview.chromium.org/1918003003
/external/skia/src/image/SkImage_Gpu.cpp
7715e06b68a1f07f07d23c63e7128d32654e30e9 22-Apr-2016 robertphillips <robertphillips@google.com> Retract SkDevice a bit more

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

Review URL: https://codereview.chromium.org/1905383002
/external/skia/src/image/SkImage_Gpu.cpp
f5575463f4901ce177516b0f82054c585ddaa2af 22-Apr-2016 senorblanco <senorblanco@chromium.org> Remove some unnecessary #includes of SkImageFilter.h

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

Review URL: https://codereview.chromium.org/1907283002
/external/skia/src/image/SkImage_Gpu.cpp
c429baf7a28205a19975cfbb60db1b7bfc9c61fa 24-Mar-2016 ericrk <ericrk@chromium.org> Add getDeferredTextureImageData early out

Currently, when dealing with deferred texture image data, we will decode the image even if it will later fail to
upload to the GPU due to size constraints.

This change adds an early out to our initial decode /
sizing logic.

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

Review URL: https://codereview.chromium.org/1831873002
/external/skia/src/image/SkImage_Gpu.cpp
a6359365887048ef055196de75591311d7a015f0 21-Mar-2016 brianosman <brianosman@google.com> sRGB support in Ganesh. Several pieces:

sRGB support now also requires GL_EXT_texture_sRGB_decode, which allows
us to disable sRGB -> Linear conversion when reading textures. This gives
us an easy way to support "legacy" L32 mode. We disable decoding based on
the pixel config of the render target. Textures can override that behavior
(specifically for format-conversion draws where we want that behavior).

Added sBGRA pixel config, which is not-really-a-format. It's just sRGBA
internally, and the external format is BGR order, so TexImage calls will
swizzle correctly. This lets us interact with sRGB raster surfaces on BGR
platforms.

Devices without sRGB support behave like they always have: conversion from
color type and profile type ignores sRGB and always returns linear pixel
configs.

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

Review URL: https://codereview.chromium.org/1789663002
/external/skia/src/image/SkImage_Gpu.cpp
8bea8905e406fc1d15ef5a8294a735f3d33fb2d0 18-Mar-2016 ericrk <ericrk@chromium.org> Propogate SkBudgeted for NewFromDeferredTextureImageData

The budgeted flag was not propogated from
NewFromDeferredTextureImageData to MakeTextureFromPixmap, resulting in
the created textures always being budgeted, even when SkBudgeted::kNo
was passed in.

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

Review URL: https://codereview.chromium.org/1809663002
/external/skia/src/image/SkImage_Gpu.cpp
c571c001cee4e0dfacd7bd17d5cd0a2900a853a9 17-Mar-2016 brianosman <brianosman@google.com> Revert of sRGB support in Ganesh. Several pieces: (patchset #12 id:220001 of https://codereview.chromium.org/1789663002/ )

Reason for revert:
We're getting sRGB non-8888 configs?

Original issue's description:
> sRGB support in Ganesh. Several pieces:
>
> sRGB support now also requires GL_EXT_texture_sRGB_decode, which allows
> us to disable sRGB -> Linear conversion when reading textures. This gives
> us an easy way to support "legacy" L32 mode. We disable decoding based on
> the pixel config of the render target. Textures can override that behavior
> (specifically for format-conversion draws where we want that behavior).
>
> Added sBGRA pixel config, which is not-really-a-format. It's just sRGBA
> internally, and the external format is BGR order, so TexImage calls will
> swizzle correctly. This lets us interact with sRGB raster surfaces on BGR
> platforms.
>
> Devices without sRGB support behave like they always have: conversion from
> color type and profile type ignores sRGB and always returns linear pixel
> configs.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1789663002
>
> Committed: https://skia.googlesource.com/skia/+/9e3f1bf4e5cd8fc59554f986f36d6b034e99f9eb

TBR=reed@google.com,bsalomon@google.com,robertphillips@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/1814533003
/external/skia/src/image/SkImage_Gpu.cpp
9e3f1bf4e5cd8fc59554f986f36d6b034e99f9eb 17-Mar-2016 brianosman <brianosman@google.com> sRGB support in Ganesh. Several pieces:

sRGB support now also requires GL_EXT_texture_sRGB_decode, which allows
us to disable sRGB -> Linear conversion when reading textures. This gives
us an easy way to support "legacy" L32 mode. We disable decoding based on
the pixel config of the render target. Textures can override that behavior
(specifically for format-conversion draws where we want that behavior).

Added sBGRA pixel config, which is not-really-a-format. It's just sRGBA
internally, and the external format is BGR order, so TexImage calls will
swizzle correctly. This lets us interact with sRGB raster surfaces on BGR
platforms.

Devices without sRGB support behave like they always have: conversion from
color type and profile type ignores sRGB and always returns linear pixel
configs.

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

Review URL: https://codereview.chromium.org/1789663002
/external/skia/src/image/SkImage_Gpu.cpp
c5035e70cc3fb290f95fd1c052c637aa0dbaf9ea 17-Mar-2016 robertphillips <robertphillips@google.com> Add SkSpecialImage::extractSubset & NewFromPixmap

This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)

This now relies on: https://codereview.chromium.org/1813483002/ (ImagePixelLocker now manually allocates SkPixmap) to clean up the uses of SkAutoPixmapStorage in Chromium

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

Committed: https://skia.googlesource.com/skia/+/250581493a0859987e482810879e85e5ac2dc002

Review URL: https://codereview.chromium.org/1787883002
/external/skia/src/image/SkImage_Gpu.cpp
19dea94f1d073c20dfd26d36a7f86e0bc57f04e0 16-Mar-2016 robertphillips <robertphillips@google.com> Revert of Add SkSpecialImage::extractSubset & NewFromPixmap (patchset #5 id:80001 of https://codereview.chromium.org/1787883002/ )

Reason for revert:
Need to wean ImagePixelLocker.h off of SkAutoPixmapStorage :(

Original issue's description:
> Add SkSpecialImage::extractSubset & NewFromPixmap
>
> This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
>
> Committed: https://skia.googlesource.com/skia/+/250581493a0859987e482810879e85e5ac2dc002

TBR=bsalomon@google.com,reed@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/1808833002
/external/skia/src/image/SkImage_Gpu.cpp
250581493a0859987e482810879e85e5ac2dc002 16-Mar-2016 robertphillips <robertphillips@google.com> Add SkSpecialImage::extractSubset & NewFromPixmap

This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)

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

Review URL: https://codereview.chromium.org/1787883002
/external/skia/src/image/SkImage_Gpu.cpp
41b952c296e343eeabb07d52b6a55ba7565a286b 11-Mar-2016 bsalomon <bsalomon@google.com> Add deferred texture upload API.

Performs thread-safe decoding of SkImage in order to later create a texture-backed SkImage.

The client allocates storage for the data.

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

Review URL: https://codereview.chromium.org/1776693002
/external/skia/src/image/SkImage_Gpu.cpp
7fb4f8bd031eda87e1da9bc0f749968c0e872e6f 11-Mar-2016 reed <reed@google.com> Revert "Revert of add Make variations to return SkImage by sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1778393002/ )"

Fix was to call get() instead of release() when passing the sp to a bare-ptr method.

This reverts commit e683c56115a210b5993df9294260bb147b408bfa.

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

TBR=

Review URL: https://codereview.chromium.org/1789443002
/external/skia/src/image/SkImage_Gpu.cpp
e683c56115a210b5993df9294260bb147b408bfa 11-Mar-2016 robertphillips <robertphillips@google.com> Revert of add Make variations to return SkImage by sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1778393002/ )

Reason for revert:
Experimental revert to try to clear up ASAN failures

Original issue's description:
> add Make variations to return SkImage by sk_sp
>
> some internal call-sites update, but not. Will follow-up in future to complete that.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1778393002
>
> Committed: https://skia.googlesource.com/skia/+/bd73ffb83022f1f6b1997e2a91c049949e88a8a2

TBR=fmalita@chromium.org,bsalomon@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/1783063002
/external/skia/src/image/SkImage_Gpu.cpp
bd73ffb83022f1f6b1997e2a91c049949e88a8a2 10-Mar-2016 reed <reed@google.com> add Make variations to return SkImage by sk_sp

some internal call-sites update, but not. Will follow-up in future to complete that.

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

Review URL: https://codereview.chromium.org/1778393002
/external/skia/src/image/SkImage_Gpu.cpp
0d996868c3dd5af2ccb6fced488edb335185c107 10-Mar-2016 bsalomon <bsalomon@google.com> Restore SkImage::NewTextureFromPixmap changes.

6ceeebd37a43d879c120b6ba100ae1febdd67a18 contained the fix for the issues that prompted the revert (index8 bitmaps weren't drawing).

Revert "TBR=robertphillips@google.com"

This reverts commit 236640872fa8cad105273055fdcf6829d5c025a1.

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
/external/skia/src/image/SkImage_Gpu.cpp
236640872fa8cad105273055fdcf6829d5c025a1 09-Mar-2016 bsalomon <bsalomon@google.com> TBR=robertphillips@google.com

Revert "Add SkImage::NewTextureFromPixmap"

This reverts commit 045afea97902936869d71389e656a9c6917fa32f.

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

This reverts commit e344b26a7d3c0efaab21bb17fa5b2d96dfc92edf.

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
/external/skia/src/image/SkImage_Gpu.cpp
045afea97902936869d71389e656a9c6917fa32f 09-Mar-2016 bsalomon <bsalomon@google.com> 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
/external/skia/src/image/SkImage_Gpu.cpp
84a4e5a8d683bf17d6c3058b977b9dfb000428af 29-Feb-2016 bsalomon <bsalomon@google.com> 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
/external/skia/src/image/SkImage_Gpu.cpp
5ec26ae9bfca635ccc98283aad5deda11519d826 25-Feb-2016 bsalomon <bsalomon@google.com> 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
/external/skia/src/image/SkImage_Gpu.cpp
bd500f09ce5b1ca464431d693f9ec5da60a59230 25-Feb-2016 bsalomon <bsalomon@google.com> 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
/external/skia/src/image/SkImage_Gpu.cpp
57599fe6c0336feaeeeb9b1996e77b70219b483c 25-Feb-2016 bsalomon <bsalomon@google.com> 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
/external/skia/src/image/SkImage_Gpu.cpp
b8fea97a7a493897fcff33aa2932d875c572f163 16-Feb-2016 bsalomon <bsalomon@google.com> Make copySurface work for texture dsts, return a bool, & add unit test.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684313002

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

Review URL: https://codereview.chromium.org/1684313002
/external/skia/src/image/SkImage_Gpu.cpp
0eed945294fa0b2dee7d971c16dc9beefab2ec1c 11-Feb-2016 kjlubick <kjlubick@google.com> Revert of Make copySurface work for texture dsts, return a bool, & add unit test. (patchset #6 id:100001 of https://codereview.chromium.org/1684313002/ )

Reason for revert:
Copy surface tests are not happy for Windows, Android and probably others:
https://uberchromegw.corp.google.com/i/client.skia.android/builders/Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release/builds/4161
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Win8-MSVC-ShuttleA-GPU-GTX960-x86_64-Release/builds/3694

Original issue's description:
> Make copySurface work for texture dsts, return a bool, & add unit test.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684313002
>
> Committed: https://skia.googlesource.com/skia/+/7ea5e28065e5eb797e95f5d81c1a65cf3209d741

TBR=robertphillips@google.com,bsalomon@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/1690053002
/external/skia/src/image/SkImage_Gpu.cpp
7ea5e28065e5eb797e95f5d81c1a65cf3209d741 11-Feb-2016 bsalomon <bsalomon@google.com> Make copySurface work for texture dsts, return a bool, & add unit test.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684313002

Review URL: https://codereview.chromium.org/1684313002
/external/skia/src/image/SkImage_Gpu.cpp
f267c1efe7de7a8e71404afde6cbf93c3808d267 01-Feb-2016 bsalomon <bsalomon@google.com> Add ability to extract YUV planes from SkImage

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

Review URL: https://codereview.chromium.org/1513393002
/external/skia/src/image/SkImage_Gpu.cpp
8e74f80ca1bd32581a583e2325daf4b46d892ee5 30-Jan-2016 bsalomon <bsalomon@google.com> Add SkImage factory method that forces image to be resolved to a texture.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1631053003

Review URL: https://codereview.chromium.org/1631053003
/external/skia/src/image/SkImage_Gpu.cpp
6121405df5689875c7309c20632a82897fce4127 26-Jan-2016 cblume <cblume@chromium.org> Cleaning up trailing spaces and typos.

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

Review URL: https://codereview.chromium.org/1631993002
/external/skia/src/image/SkImage_Gpu.cpp
22471ed134f7ad507ce239f96e265f10864adf58 09-Jan-2016 reed <reed@google.com> remove SkImage::applyFilter() -- unused, can always re-add later

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

Review URL: https://codereview.chromium.org/1573653002
/external/skia/src/image/SkImage_Gpu.cpp
f1ecd21bf6fd69953f78dd79502c7c9df92cdc9a 10-Dec-2015 bsalomon <bsalomon@google.com> Make "alpha only" be a property of GrTextureProducer

Review URL: https://codereview.chromium.org/1507973005
/external/skia/src/image/SkImage_Gpu.cpp
262a71b7f95ce98ff3dd8dba845afbd724470903 05-Dec-2015 reed <reed@google.com> detect when we can filter bitmaps/images directly, w/o a tmp layer

visual bench run on Mac Pro

curr/maxrss loops min median mean max stddev samples config bench
100/100 MB 16 412µs 413µs 413µs 414µs 0% ▄▁▇▄▄▄▄█▄▃▅ gpu warmupbench
101/102 MB 32 547µs 548µs 611µs 1.24ms 34% █▁▁▁▁▁▁▁▁▁▁ gpu image-filter-sprite-draw-image
102/103 MB 32 547µs 548µs 721µs 1.23ms 41% █▁▇▁▁█▁▁▁▁▁ gpu image-filter-sprite-draw-bitmap
103/103 MB 64 546µs 546µs 546µs 547µs 0% ▆▄▂▁▇█▅▇▅▇▃ gpu image-filter-sprite-draw-sprite

Should have no effect on Chrome while SK_SUPPORT_LEGACY_LAYER_BITMAP_IMAGEFILTERS is defined (which it is in chrome)

BUG=skia:1073

Review URL: https://codereview.chromium.org/1491293002
/external/skia/src/image/SkImage_Gpu.cpp
095530389d8211895309107a4f74beefacce638c 23-Nov-2015 reed <reed@google.com> scaling API on SkPixmap

BUG=skia:4481

Review URL: https://codereview.chromium.org/1463373002
/external/skia/src/image/SkImage_Gpu.cpp
89fe56bb98de55c7bd2b547c875b74a98bd5a1ca 29-Oct-2015 bsalomon <bsalomon@google.com> Pull texture-backed bitmap resampler out of GrTextureParamsAdjuster code into its own class.

Review URL: https://codereview.chromium.org/1420963008
/external/skia/src/image/SkImage_Gpu.cpp
100b8f8c079510a6b7572f9ed8058c1d4a2bfeba 28-Oct-2015 bsalomon <bsalomon@google.com> Remove min texture size support

BUG=skia:4524

Review URL: https://codereview.chromium.org/1430643002
/external/skia/src/image/SkImage_Gpu.cpp
c9b5f8b1522e72449d704d30ed6aee4fc6211ee8 22-Oct-2015 reed <reed@google.com> tunnel down texture-size-constraint to imagefilters

BUG=skia:

Review URL: https://codereview.chromium.org/1421493003
/external/skia/src/image/SkImage_Gpu.cpp
13ccbf8a681d69e4685849d9dedeabea0fea7773 20-Oct-2015 reed <reed@google.com> use (temp) gpu-imagefilter-cache for applyFilter

BUG=skia:

Review URL: https://codereview.chromium.org/1414653003
/external/skia/src/image/SkImage_Gpu.cpp
045802dbb7202b52f5fd2758d725f39c156a6165 20-Oct-2015 bsalomon <bsalomon@google.com> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.

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

Committed: https://skia.googlesource.com/skia/+/1a197ea31e0aac7ea312e9a6c0d9f5df626b0350

Review URL: https://codereview.chromium.org/1409163002
/external/skia/src/image/SkImage_Gpu.cpp
bc0bcc08b390e430f66710ddfbc47da39ab841d9 19-Oct-2015 Brian Salomon <bsalomon@google.com> Revert recent CLs around GrTextureMaker/GrTextureParamsAdjuster

Review URL: https://codereview.chromium.org/1411353002 .
/external/skia/src/image/SkImage_Gpu.cpp
59dc0d22f557a20669126fa425baefe6dd4b727a 19-Oct-2015 reed <reed@google.com> change SkImage_Gpu to handle all filters (w/ and w/o gpu support

The result is that the set of "generic" imagefilters (e.g. SkColorFilterImageFilter) that use drawing commands to return their results will now stay in the same domain as their src (i.e. gpu-src --> gpu-dst).

ApplyFilterGM exercises this, and now asserts this same-domain invariant.

BUG=skia:4467

Review URL: https://codereview.chromium.org/1401053003
/external/skia/src/image/SkImage_Gpu.cpp
1a197ea31e0aac7ea312e9a6c0d9f5df626b0350 19-Oct-2015 bsalomon <bsalomon@google.com> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.

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

Review URL: https://codereview.chromium.org/1409163002
/external/skia/src/image/SkImage_Gpu.cpp
91957941ce2fe9457babe7f83514e4599089d411 16-Oct-2015 egdaniel <egdaniel@google.com> Revert of Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what… (patchset #4 id:60001 of https://codereview.chromium.org/1409163002/ )

Reason for revert:
breaking nanobench

Original issue's description:
> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
>
> Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79

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

Review URL: https://codereview.chromium.org/1409923003
/external/skia/src/image/SkImage_Gpu.cpp
fcffaf22d697f06f903c3193308f9dc54a959f79 16-Oct-2015 bsalomon <bsalomon@google.com> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.

Review URL: https://codereview.chromium.org/1409163002
/external/skia/src/image/SkImage_Gpu.cpp
2e1e51f04985f7c258b96f0decc190456f5dd74d 15-Oct-2015 robertphillips <robertphillips@google.com> GrDrawContext now holds GrRenderTarget pointer

Review URL: https://codereview.chromium.org/1404823005
/external/skia/src/image/SkImage_Gpu.cpp
d82bc7b90ab0a88d6fb401994f3763d3057ab6e7 12-Oct-2015 reed <reed@google.com> post-commit fixes to applyFilter CL

BUG=skia:

Review URL: https://codereview.chromium.org/1404483002
/external/skia/src/image/SkImage_Gpu.cpp
88d064d0e481949184305c7b1d6b282dddffac39 12-Oct-2015 reed <reed@google.com> add applyFilter() to SkImage

Result:
- clients can get a filtered version of an image without having to setup a temp drawing environment
- for some cases, the process is more efficient even than (deprecated) drawSprite, since there is no need to draw/copy the result

Impl:
- made Proxy virtual so we don't need to have an existing device to use it

This, in conjunction with LocalMatrixImageFilter, should allow us to simplify and optimize ApplyImageFilter() in cc/output/gl_renderer.cc

BUG=skia:

Review URL: https://codereview.chromium.org/1390913005
/external/skia/src/image/SkImage_Gpu.cpp
afa95e270c64c9777647b6c58b796750ced57c39 12-Oct-2015 bsalomon <bsalomon@google.com> Remove image usage type enum. Use GrTextureParams instead.

BUG=skia:

Review URL: https://codereview.chromium.org/1404433002
/external/skia/src/image/SkImage_Gpu.cpp
f276ac5c16d39a2b877300d760041f0291bb5ec9 09-Oct-2015 bsalomon <bsalomon@google.com> Move functions from SkGr to SkGrPriv.h

Review URL: https://codereview.chromium.org/1397123002
/external/skia/src/image/SkImage_Gpu.cpp
4a339529612a43871d021877e58698e067d6c4cd 06-Oct-2015 bsalomon <bsalomon@google.com> Bye bye processor data manager.

Review URL: https://codereview.chromium.org/1388113002
/external/skia/src/image/SkImage_Gpu.cpp
af3fbfca0ab706230c33e46af620e0044a56c83e 04-Oct-2015 reed <reed@chromium.org> SkImage doesn't use props, so don't need to store it

BUG=skia:
TBR=bsalomon

Review URL: https://codereview.chromium.org/1372153006
/external/skia/src/image/SkImage_Gpu.cpp
856e9d921462136da8562f8f122d42e114cd4710 30-Sep-2015 reed <reed@google.com> Revert[4] of add ImageShader, sharing code with its Bitmap cousin

Now with GrTextureMaker subclasses to handle npot usage.

This reverts commit 476506d070dbc59b158acc1a00c34bff95ab2968.

BUG=skia:

Review URL: https://codereview.chromium.org/1370223002
/external/skia/src/image/SkImage_Gpu.cpp
476506d070dbc59b158acc1a00c34bff95ab2968 28-Sep-2015 reed <reed@google.com> Revert of Revert[2] of add ImageShader, sharing code with its Bitmap cousin (patchset #11 id:200001 of https://codereview.chromium.org/1352293002/ )

Reason for revert:
guess: Need to handle NPOT support in shader case

Original issue's description:
> Revert[2] of add ImageShader, sharing code with its Bitmap cousin
>
> Adjustment from previous land : runtime check for npot-support when texture is requested for tiling.
>
> (patchset #10 id:180001 of https://codereview.chromium.org/1342113002/ )
>
> This reverts commit f2608513626264459a00388537175600b515cae2.
>
> BUG=skia:4365
>
> Committed: https://skia.googlesource.com/skia/+/fe05707c356d2a8c2c69222591d4cafbd456b4e5

TBR=fmalita@chromium.org,robertphillips@google.com,bsalomon@google.com,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4365

Review URL: https://codereview.chromium.org/1375673002
/external/skia/src/image/SkImage_Gpu.cpp
fe05707c356d2a8c2c69222591d4cafbd456b4e5 25-Sep-2015 reed <reed@google.com> Revert[2] of add ImageShader, sharing code with its Bitmap cousin

Adjustment from previous land : runtime check for npot-support when texture is requested for tiling.

(patchset #10 id:180001 of https://codereview.chromium.org/1342113002/ )

This reverts commit f2608513626264459a00388537175600b515cae2.

BUG=skia:4365

Review URL: https://codereview.chromium.org/1352293002
/external/skia/src/image/SkImage_Gpu.cpp
7b6945bc4e639d7cc4a49b84d492690f8e865566 24-Sep-2015 reed <reed@google.com> remove unused (by the outside) SkImage::newSurface, and simplify newImage -> newSubset

BUG=skia:

Review URL: https://codereview.chromium.org/1364443002
/external/skia/src/image/SkImage_Gpu.cpp
f2608513626264459a00388537175600b515cae2 18-Sep-2015 tomhudson <tomhudson@google.com> Revert of add ImageShader, sharing code with its Bitmap cousin (patchset #10 id:180001 of https://codereview.chromium.org/1342113002/ )

Reason for revert:
Failing ImageNewShaderTest on both Android (Tegra3 GPU) and iOS bots.

e.g.

/Users/chrome-bot/buildbot/skiabot-ipad4-000/build/slave/workdir/build/skia/tests/
ImageNewShaderTest.cpp:24 0 == memcmp(bm1.getPixels(), bm2.getPixels(), bm1.getSize())
ImageNewShaderTest.cpp:95 0xFFFF0000 == bmt.getColor(0, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:95 0xFFFF0000 == bmt.getColor(0, y)
...

Original issue's description:
> add ImageShader, sharing code with its Bitmap cousin
>
> This is done by having abstracted the BitmapShaderContext to take a BitmapProvider, instead of just a bitmap. This allows us to share all of that code between SkBitmap and SkImage, since both are valid providers.
>
> It also means that we can simplify SkImage_Base to not need a virtual for onNewShader, since ALL images can uniformly be turned into a shader now.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/0b93e3149d2cb30860c51f9f3204ae811d9a97ca

TBR=fmalita@chromium.org,bsalomon@google.com,robertphillips@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1355863002
/external/skia/src/image/SkImage_Gpu.cpp
0b93e3149d2cb30860c51f9f3204ae811d9a97ca 18-Sep-2015 reed <reed@google.com> add ImageShader, sharing code with its Bitmap cousin

This is done by having abstracted the BitmapShaderContext to take a BitmapProvider, instead of just a bitmap. This allows us to share all of that code between SkBitmap and SkImage, since both are valid providers.

It also means that we can simplify SkImage_Base to not need a virtual for onNewShader, since ALL images can uniformly be turned into a shader now.

BUG=skia:

Review URL: https://codereview.chromium.org/1342113002
/external/skia/src/image/SkImage_Gpu.cpp
85d9178832f4a64c9d80ffb14cb9dab4fe0fa54a 10-Sep-2015 reed <reed@google.com> Use SkImageCacherator in SkImages

Possible follow-up changes to consider

1. Roll SkImage_Raster and _Gpu into _Generator, where the generator (or cacherator) is backed by a pre-existing texture or raster.
2. Evolve SkImageUsageType into a verb requiring stretching, and have the caller (common code) digest the caps() and usage, so that subclasses are just told what to do (stretch or not)
3. Common code/utility to convert an unstretched texture into a stretch one (and cache it) if the generator can only make an unstretched one.

BUG=skia:

Review URL: https://codereview.chromium.org/1282363002
/external/skia/src/image/SkImage_Gpu.cpp
c9a3706f1ee38c331610ec1e872d9a658566c397 01-Sep-2015 robertphillips <robertphillips@google.com> Limit lifetime of GrDrawContext objects

GrDrawContext's are about to become real allocated objects. This CL sets up the machinery so they won't leak.

Review URL: https://codereview.chromium.org/1321353002
/external/skia/src/image/SkImage_Gpu.cpp
96fcdcc219d2a0d3579719b84b28bede76efba64 27-Aug-2015 halcanary <halcanary@google.com> Style Change: NULL->nullptr
DOCS_PREVIEW= https://skia.org/?cl=1316233002

Review URL: https://codereview.chromium.org/1316233002
/external/skia/src/image/SkImage_Gpu.cpp
ac856c97acc84dcb54d9cdb068ec8a02b8869647 27-Aug-2015 bsalomon <bsalomon@google.com> Remove GrStagedProcessor, remove the word Stage as it applies to FPs

Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7

Review URL: https://codereview.chromium.org/1307223004
/external/skia/src/image/SkImage_Gpu.cpp
385fe4d4b62d7d1dd76116dd570df3290a2f487b 26-Aug-2015 halcanary <halcanary@google.com> Style Change: SkNEW->new; SkDELETE->delete
DOCS_PREVIEW= https://skia.org/?cl=1316123003

Review URL: https://codereview.chromium.org/1316123003
/external/skia/src/image/SkImage_Gpu.cpp
4bf69f7bbc073c1dc257f93f8c5b2a530123cb3c 26-Aug-2015 rmistry <rmistry@google.com> Revert of Remove GrStagedProcessor, remove the word Stage as it applies to FPs (patchset #6 id:90001 of https://codereview.chromium.org/1307223004/ )

Reason for revert:
Causes bot failures:

https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/1639

https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Debug/builds/1702

https://uberchromegw.corp.google.com/i/client.skia.android/builders/Test-Android-GCC-NexusPlayer-GPU-PowerVR-x86-Debug/builds/1223

Original issue's description:
> Remove GrStagedProcessor, remove the word Stage as it applies to FPs
>
> Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7

TBR=joshualitt@google.com,egdaniel@google.com,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1306803003
/external/skia/src/image/SkImage_Gpu.cpp
24243446cdf7b7e4e132c2a0c387c7723777e0c7 26-Aug-2015 bsalomon <bsalomon@google.com> Remove GrStagedProcessor, remove the word Stage as it applies to FPs

Review URL: https://codereview.chromium.org/1307223004
/external/skia/src/image/SkImage_Gpu.cpp
1cd63111d599f8c690c56b43502b6d9f3bee1ef2 05-Aug-2015 bsalomon <bsalomon@google.com> init atomic bool in SkImage_Gpu

BUG=chromium:516860

TBR=reed@google.com

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/1269243004
/external/skia/src/image/SkImage_Gpu.cpp
6f1216ac158e36a3a1cc805e7f899c755c5b98a2 04-Aug-2015 reed <reed@google.com> cache private readback for gpu-images

Does not try to cache calls to readPixels at the moment:
- not triggered by drawing
- not clear if we want to perform any pixel transformations (that readPixels allows) on the GPU or CPU

Can consider that another time.

BUG=513695

Review URL: https://codereview.chromium.org/1262923003
/external/skia/src/image/SkImage_Gpu.cpp
eae6200acbec2255ac00ab363ffbe16758ec9076 31-Jul-2015 bsalomon <bsalomon@google.com> Some cleanup in GrTextureProvider and GrResourceProvider.

Review URL: https://codereview.chromium.org/1261643004
/external/skia/src/image/SkImage_Gpu.cpp
80c772b2a46aea7efe0632e580fbc8233ff2a190 31-Jul-2015 reed <reed@google.com> unify pixelref and image ID space, so we can share IDs when we share pixels

I view this as a performance opportunity, not a feature or bug fix per-se.

BUG=skia:

Review URL: https://codereview.chromium.org/1266883002
/external/skia/src/image/SkImage_Gpu.cpp
e8d21e8f24aa676765d0ff8f433228665c75cdc2 16-Jul-2015 bsalomon <bsalomon@google.com> Make readpixels work on GrTextures

Review URL: https://codereview.chromium.org/1234313002
/external/skia/src/image/SkImage_Gpu.cpp
2cdec31c29a6ba1a6927b3ee2325bf53b86796aa 09-Jul-2015 joshualitt <joshualitt@chromium.org> YUV to RGB Texture threading GrProcessorDataManager

BUG=skia:

Review URL: https://codereview.chromium.org/1230803002
/external/skia/src/image/SkImage_Gpu.cpp
5617900063f69754de62b8b12d32f6e36df14104 07-Jul-2015 reed <reed@chromium.org> add SkImage::NewFromBitmap

BUG=skia:

Review URL: https://codereview.chromium.org/1217053003
/external/skia/src/image/SkImage_Gpu.cpp
74f681dce2fbadd481596aea15afb3e0fb36ceff 23-Jun-2015 bsalomon <bsalomon@google.com> Make SkGpuDevice know its alpha type

Make SkImage_Gpu snapshots opaque if surface is opaque.

BUG=skia:3965

Review URL: https://codereview.chromium.org/1205643002
/external/skia/src/image/SkImage_Gpu.cpp
de49988bc24977f97bb1da8c17ceee5432fcc8e7 18-Jun-2015 reed <reed@google.com> add callbacks to Images that wrap client-provided content

BUG=skia:

Review URL: https://codereview.chromium.org/1169553003
/external/skia/src/image/SkImage_Gpu.cpp
6dc6f5f4a153d33ed91565cb3cd397a310a937d0 18-Jun-2015 bsalomon <bsalomon@google.com> Add support for creating texture backed images where Skia will delete the texture.

Review URL: https://codereview.chromium.org/1187523005
/external/skia/src/image/SkImage_Gpu.cpp
2334fb655f8d4ef5915770d32bf845c88d3627f4 17-Jun-2015 robertphillips <robertphillips@google.com> Make GrTextContext be owned by the GrDrawContext

This CL makes the GrTextContext be owned (and hidden) by the GrDrawContext. This funnels all the drawText* calls through the GrDrawContext and hides the (dispreferred) GrPipelineBuilder drawText variant.

Some consequences of this are:

GrDrawContext now has to get the text drawing settings (i.e., SkDeviceProperties & useDFT). This means that we need a separate GrDrawContext for each combination of pixel geometry and DFT-use.

All the GrTextContext-derived classes now get a back pointer to the originating GrDrawContext so their method calls no longer take one.

Committed: https://skia.googlesource.com/skia/+/5b16e740fe6ab6d679083d06f07651602265081b

Review URL: https://codereview.chromium.org/1175553002
/external/skia/src/image/SkImage_Gpu.cpp
781d58215f03cfe43c6b5f7bf1a578bc3c9a1e6f 17-Jun-2015 bsalomon <bsalomon@google.com> Revert of Make GrTextContext be owned by the GrDrawContext (patchset #7 id:120001 of https://codereview.chromium.org/1175553002/)

Reason for revert:
Breaking Test-Win8-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug ?

https://build.chromium.org/p/client.skia/builders/Test-Win8-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug/builds/436/steps/dm/logs/stdio

Original issue's description:
> Make GrTextContext be owned by the GrDrawContext
>
> This CL makes the GrTextContext be owned (and hidden) by the GrDrawContext. This funnels all the drawText* calls through the GrDrawContext and hides the (dispreferred) GrPipelineBuilder drawText variant.
>
> Some consequences of this are:
>
> GrDrawContext now has to get the text drawing settings (i.e., SkDeviceProperties & useDFT). This means that we need a separate GrDrawContext for each combination of pixel geometry and DFT-use.
>
> All the GrTextContext-derived classes now get a back pointer to the originating GrDrawContext so their method calls no longer take one.
>
> Committed: https://skia.googlesource.com/skia/+/5b16e740fe6ab6d679083d06f07651602265081b

TBR=joshualitt@chromium.org,joshualitt@google.com,jvanverth@google.com,reed@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1178383003
/external/skia/src/image/SkImage_Gpu.cpp
5b16e740fe6ab6d679083d06f07651602265081b 16-Jun-2015 robertphillips <robertphillips@google.com> Make GrTextContext be owned by the GrDrawContext

This CL makes the GrTextContext be owned (and hidden) by the GrDrawContext. This funnels all the drawText* calls through the GrDrawContext and hides the (dispreferred) GrPipelineBuilder drawText variant.

Some consequences of this are:

GrDrawContext now has to get the text drawing settings (i.e., SkDeviceProperties & useDFT). This means that we need a separate GrDrawContext for each combination of pixel geometry and DFT-use.

All the GrTextContext-derived classes now get a back pointer to the originating GrDrawContext so their method calls no longer take one.

Review URL: https://codereview.chromium.org/1175553002
/external/skia/src/image/SkImage_Gpu.cpp
55812362f1df3c1f7341f687d5bab0adab8ac954 10-Jun-2015 bsalomon <bsalomon@google.com> Towards removing getTexture() on SkImage

Review URL: https://codereview.chromium.org/1166993002
/external/skia/src/image/SkImage_Gpu.cpp
993a4216a6014b9de8f4d8120360c94550dc6761 29-May-2015 bsalomon <bsalomon@google.com> SkImage::NewFromYUVTexturesCopy

Review URL: https://codereview.chromium.org/1149553002
/external/skia/src/image/SkImage_Gpu.cpp
8b26b99c97473f020df4b9d4ba789e074e06cedd 08-May-2015 reed <reed@google.com> new image from backend desc

BUG=485243

Review URL: https://codereview.chromium.org/1121813002
/external/skia/src/image/SkImage_Gpu.cpp
a85d4d0814818e4ddabb9237da209d61d6cd5854 06-May-2015 reed <reed@google.com> Make drawImage a virtual on SkDevice

This reverts commit 06dad4b92f1fcb593bc686f9537d3e0d866b2241.

BUG=485243

Review URL: https://codereview.chromium.org/1129843003
/external/skia/src/image/SkImage_Gpu.cpp
06dad4b92f1fcb593bc686f9537d3e0d866b2241 06-May-2015 reed <reed@google.com> Revert of Revert of Revert of Make drawImage a virtual on SkDevice (patchset #1 id:1 of https://codereview.chromium.org/1126273002/)

Reason for revert:
still breaking webglconformance

Original issue's description:
> Revert of Revert of Make drawImage a virtual on SkDevice (patchset #1 id:1 of https://codereview.chromium.org/1124003002/)
>
> Reason for revert:
> retry now that some fixes (onDrawImage overrides) have landed in chrome/blink
>
> Original issue's description:
> > Revert of Make drawImage a virtual on SkDevice (patchset #4 id:60001 of https://codereview.chromium.org/1122643005/)
> >
> > Reason for revert:
> > speculative to see if it unblocks DEPS roll
> >
> > Original issue's description:
> > > Make drawImage a virtual on SkDevice
> > >
> > > Now with patch for SkDeferredCanvas
> > >
> > > This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57.
> > >
> > > BUG=skia:
> > >
> > > Committed: https://skia.googlesource.com/skia/+/14fe8fd3e53b5e988aac189a8bc3ed28904d85c8
> >
> > TBR=robertphillips@google.com,mtklein@google.com,reed@google.com
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/3538e3bfe2e00bc1b5b48d977fa7adff64d8c96b
>
> TBR=robertphillips@google.com,mtklein@google.com,reed@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/620ba3afe09d4173c87537040fe50c1c1895fb1a

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

Review URL: https://codereview.chromium.org/1127993004
/external/skia/src/image/SkImage_Gpu.cpp
620ba3afe09d4173c87537040fe50c1c1895fb1a 06-May-2015 reed <reed@google.com> Revert of Revert of Make drawImage a virtual on SkDevice (patchset #1 id:1 of https://codereview.chromium.org/1124003002/)

Reason for revert:
retry now that some fixes (onDrawImage overrides) have landed in chrome/blink

Original issue's description:
> Revert of Make drawImage a virtual on SkDevice (patchset #4 id:60001 of https://codereview.chromium.org/1122643005/)
>
> Reason for revert:
> speculative to see if it unblocks DEPS roll
>
> Original issue's description:
> > Make drawImage a virtual on SkDevice
> >
> > Now with patch for SkDeferredCanvas
> >
> > This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57.
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/14fe8fd3e53b5e988aac189a8bc3ed28904d85c8
>
> TBR=robertphillips@google.com,mtklein@google.com,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/3538e3bfe2e00bc1b5b48d977fa7adff64d8c96b

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

Review URL: https://codereview.chromium.org/1126273002
/external/skia/src/image/SkImage_Gpu.cpp
3538e3bfe2e00bc1b5b48d977fa7adff64d8c96b 06-May-2015 reed <reed@chromium.org> Revert of Make drawImage a virtual on SkDevice (patchset #4 id:60001 of https://codereview.chromium.org/1122643005/)

Reason for revert:
speculative to see if it unblocks DEPS roll

Original issue's description:
> Make drawImage a virtual on SkDevice
>
> Now with patch for SkDeferredCanvas
>
> This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/14fe8fd3e53b5e988aac189a8bc3ed28904d85c8

TBR=robertphillips@google.com,mtklein@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1124003002
/external/skia/src/image/SkImage_Gpu.cpp
14fe8fd3e53b5e988aac189a8bc3ed28904d85c8 05-May-2015 reed <reed@google.com> Make drawImage a virtual on SkDevice

Now with patch for SkDeferredCanvas

This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57.

BUG=skia:

Review URL: https://codereview.chromium.org/1122643005
/external/skia/src/image/SkImage_Gpu.cpp
119468b71f8f4f45657ab30ead331be665de5a57 05-May-2015 reed <reed@google.com> Revert of Make drawImage a virtual on SkDevice (patchset #3 id:40001 of https://codereview.chromium.org/11188… (patchset #2 id:20001 of https://codereview.chromium.org/1122813002/)

Reason for revert:
did not update DeferredCanvas

Original issue's description:
> Make drawImage a virtual on SkDevice (patchset #3 id:40001 of https://codereview.chromium.org/1118823004/)"
>
> Fixed serialization from prev CL
>
> This reverts commit 973d1f1f60f2710a268a3165aa4f3460502d4be5.
>
> BUG=skia:3803
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/5392785080001fe737fac9e5801fc2127a78d4fb

TBR=
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3803

Review URL: https://codereview.chromium.org/1123743006
/external/skia/src/image/SkImage_Gpu.cpp
5392785080001fe737fac9e5801fc2127a78d4fb 04-May-2015 reed <reed@google.com> Make drawImage a virtual on SkDevice (patchset #3 id:40001 of https://codereview.chromium.org/1118823004/)"

Fixed serialization from prev CL

This reverts commit 973d1f1f60f2710a268a3165aa4f3460502d4be5.

BUG=skia:3803
TBR=

Review URL: https://codereview.chromium.org/1122813002
/external/skia/src/image/SkImage_Gpu.cpp
973d1f1f60f2710a268a3165aa4f3460502d4be5 04-May-2015 reed <reed@google.com> Revert of make drawImage a virtual on SkDevice (patchset #3 id:40001 of https://codereview.chromium.org/1118823004/)

Reason for revert:
need to make serialization work for pictures, now that images are "real"

Original issue's description:
> make drawImage a virtual on SkDevice
>
> default impl will turn the Image into a (raster) bitmap and call drawBitmap.
>
> BUG=skia:3803
>
> Committed: https://skia.googlesource.com/skia/+/f603fb3d0e5fa57c3f228d66945bef198b001135

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3803

Review URL: https://codereview.chromium.org/1122803002
/external/skia/src/image/SkImage_Gpu.cpp
f603fb3d0e5fa57c3f228d66945bef198b001135 04-May-2015 reed <reed@google.com> make drawImage a virtual on SkDevice

default impl will turn the Image into a (raster) bitmap and call drawBitmap.

BUG=skia:3803

Review URL: https://codereview.chromium.org/1118823004
/external/skia/src/image/SkImage_Gpu.cpp
eaaaf0b16c4e55ff8a48c5ac1ed623a6ba469053 23-Jan-2015 bsalomon <bsalomon@google.com> Take budgeted param when snapping new image.

Review URL: https://codereview.chromium.org/872543002
/external/skia/src/image/SkImage_Gpu.cpp
7983bf914a6df040befe2aafb3657c469b678257 23-Jan-2015 reed <reed@google.com> more reinforcement that images never have zero width or height

BUG=skia:

Review URL: https://codereview.chromium.org/869743002
/external/skia/src/image/SkImage_Gpu.cpp
afe3005be3392e43bc51eb7eb2017eefaed85ad1 16-Jan-2015 bsalomon <bsalomon@google.com> Require budget decision when creating a RenderTarget SkSurface.

Restructure SkGpuDevice creation:
*SkSurfaceProps are optional.
*Use SkSurfaceProps to communicate DF text rather than a flag.
*Tell SkGpuDevice::Create whether RT comes from cache or not.

Review URL: https://codereview.chromium.org/848903004
/external/skia/src/image/SkImage_Gpu.cpp
4ef0c8aea2f966f42592202659afb21f6b0fb511 13-Jan-2015 reed <reed@chromium.org> remove NewTexture?

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/831323005
/external/skia/src/image/SkImage_Gpu.cpp
3f10b9dd2c9d256b77111e9669806785a54c7f54 21-Nov-2014 reed <reed@google.com> clarify samplecount field in imagegpu

BUG=skia:
TBR=bsalomon

Review URL: https://codereview.chromium.org/750023002
/external/skia/src/image/SkImage_Gpu.cpp
4af267b11964d4a8acdb232ac46094c84d890e88 21-Nov-2014 reed <reed@google.com> add SkImage::newSurface

BUG=skia:

Review URL: https://codereview.chromium.org/741763002
/external/skia/src/image/SkImage_Gpu.cpp
5ceff913cfd458c653358db7f60e995f505bce84 26-Sep-2014 piotaixr <piotaixr@chromium.org> Rename SkImage::draw(_, SkRect, SkRect) in SkImage::drawRect()

BUG=skia:2947
R=reed@google.com, junov@chromium.org

Author: piotaixr@chromium.org

Review URL: https://codereview.chromium.org/605843002
/external/skia/src/image/SkImage_Gpu.cpp
a29b5d8430ada72bc73b1e6e1b8f09e4b046b2ff 22-Sep-2014 piotaixr <piotaixr@chromium.org> Cleaning includes in SkImage-related files

BUG=skia:2948
R=junov@chromium.org, tfarina@chromium.org, reed@google.com

Author: piotaixr@chromium.org

Review URL: https://codereview.chromium.org/586853003
/external/skia/src/image/SkImage_Gpu.cpp
49f085dddff10473b6ebf832a974288300224e60 05-Sep-2014 bsalomon <bsalomon@google.com> "NULL !=" = NULL

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/544233002
/external/skia/src/image/SkImage_Gpu.cpp
d2a3522503ca0c39829f1bb41f01201d1affdaf6 19-Aug-2014 piotaixr <piotaixr@chromium.org> Add the method isOpaque() to SkImage

BUG=skia:2766
R=junov@chromium.org, halcanary@google.com, scroggo@google.com, reed@google.com, bsalomon@google.com

Author: piotaixr@chromium.org

Review URL: https://codereview.chromium.org/406673003
/external/skia/src/image/SkImage_Gpu.cpp
8572fc01ac4f6bdcf173b05417776abc55f729c1 11-Aug-2014 reed <reed@google.com> mark all SkImage methods const, so we can make it thread-safe

BUG=skia:
R=mtklein@google.com, halcanary@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/453613003
/external/skia/src/image/SkImage_Gpu.cpp
76d5b477c92ef076374fc7ea9d551c798656bebd 23-Jul-2014 piotaixr <piotaixr@chromium.org> Now able to set the localMatrix when creating a SkShader from a SkImage

BUG=skia:2771
R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, bsalomon@google.com

Author: piotaixr@chromium.org

Review URL: https://codereview.chromium.org/409653003
/external/skia/src/image/SkImage_Gpu.cpp
cef04f818820e59fb534eb226f967f72497845d3 14-Jul-2014 piotaixr <piotaixr@chromium.org> Deleted SkImage::newShaderClamp: not used, not implemented.

Implemented SkImage::newShader.

BUG=skia:2701, 344804
R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, reed@google.com

Author: piotaixr@chromium.org

Review URL: https://codereview.chromium.org/345463009
/external/skia/src/image/SkImage_Gpu.cpp
28fcae2ec77eb16a79e155f8d788b20457f1c951 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)

Reason for revert:
Want to reland the original CL.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, bensong@google.com
TBR=bensong@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14156 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
96edc2459820f0f60ea9b57959c1e5018ef95e28 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)

Reason for revert:
Chrome's side of define changes not easy to figure out quickly. Reverting this for DEPS roll for now.

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14149 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
d923288e50b5a69afb0bdd5c161191b24cab8345 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)

Reason for revert:
fixes on the chrome side are landing (brettw), keep fingers crossed.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14145 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
757ebd20ef284b6428eb9f4b9b69826cc3640a82 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)

Reason for revert:
breaking the Chrome deps roll.
http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14144 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
149e9a107c356b0151433fb23c2b1c8d0634947c 09-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename kPMColor_SkColorType to kN32_SkColorType.

The new name better represents what this flag means.

BUG=skia:2384
R=reed@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14117 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
8a2ad3cae710f05cca57e48dd1732d575dba2dc7 23-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add new copyTo version to SkBitmap, which takes SkColorType

BUG=skia:
R=scroggo@google.com, halcanary@google.com, bsalomon@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13553 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
ace135453db02cfe83d7c7bbeaa679f98d18fbe2 06-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> impl getROPixels for gpu SkImage

BUG=skia:
R=jvanverth@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13352 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
ab1c13864df34aecfd4840ea7d1e4f8730b44f4e 05-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix compilation with SK_ENABLE_INST_COUNT=1

Add INHERITED declarations to class declarations that prevent
compilation with the flag.

Remove SK_DEFINE_INST_COUNT from all class implementations. Instead,
use function-local static variables in the reference count helper
classes to create the global instances to store the needed info. The
accessor functions are defined inline in the helper classes, so
definitions are not needed. The initialization point of the variables
should be as well defined as previously.

Remove SK_DECLARE_INST_COUNT_TEMPLATE and use SK_DECLARE_INST_COUNT
instead. This avoids possible future compilation errors further.

For SK_ENABLE_INST_COUNT=0 compilation, add an empty static member
function to all classes that use SK_DECLARE_INST_COUNT and
SK_DECLARE_INST_COUNT_ROOT macros. The function ensures that classes
contain public INHERITED typedef. This member function seems to be
compiled away. This shouĺd ensure that part of the compilation errors
are caught earlier.

Also adds DSK_DECLARE_INST_COUNT to few SkPDFDict subclasses.

R=robertphillips@google.com, richardlin@chromium.org, bsalomon@google.com

Author: kkinnunen@nvidia.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12501 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
4d24b747e272355395f456e088a2d0177c00ddb5 26-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkImage_Gpu share it's pixelref with the surface to prevent premature return to scratch pool.

BUG=crbug.com/263329
TEST=Surface unit test, function Test_crbug263329
R=bsalomon@google.com, reed@google.com

Author: junov@chromium.org

Review URL: https://chromiumcodereview.appspot.com/20354003

git-svn-id: http://skia.googlecode.com/svn/trunk@10378 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
dfec28d4a9e05d1d525f377b380b4df3c5e07c7b 23-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkImage->draw() call with src and dst rects.

Committed: http://code.google.com/p/skia/source/detail?r=10237

R=junov@chromium.org, senorblanco@chromium.org, reed@google.com

Author: arbesfeld@chromium.org

Review URL: https://chromiumcodereview.appspot.com/19729007

git-svn-id: http://skia.googlecode.com/svn/trunk@10274 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
1d241f13d5474770ff517bd0c7999d9014e12ced 22-Jul-2013 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Add SkImage->draw() call with src and dst rects."

This reverts commit 9c730e27e0bb550dc228ad496cadeed8787b2244.

git-svn-id: http://skia.googlecode.com/svn/trunk@10238 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
1d91600a0272025364e2d3447b4c085f470a773b 22-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkImage->draw() call with src and dst rects.

R=junov@chromium.org, senorblanco@chromium.org, reed@google.com

Author: arbesfeld@chromium.org

Review URL: https://chromiumcodereview.appspot.com/19729007

git-svn-id: http://skia.googlecode.com/svn/trunk@10237 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
4b0757b7489ee5d6bd7149bbcdb0b2af6b7a21cb 20-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add encodeData() to SkImageEncoder, and add encoding to SkImage

BUG=
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9193 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
da90474b5fcc019fb0971d12360bd05213ad4dc8 02-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding public API method on SkImage for extracting the GPU texture handle.

TEST=Surface unit test

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8945 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
c37589d78ef31a36ddd227aa96bc22f0bf918fac 03-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Replacing 'new' with 'SkNEW_ARGS' in SkImage_Gpu
Review URL: https://codereview.chromium.org/13535004

git-svn-id: http://skia.googlecode.com/svn/trunk@8509 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
97b6b0730dcb0feee9224ff04eb3985ca4bd0216 31-Oct-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fleshed out GPU portion of image/surface feature

https://codereview.appspot.com/6813055/



git-svn-id: http://skia.googlecode.com/svn/trunk@6214 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
fbfcd5602128ec010c82cb733c9cdc0a3254f9f3 23-Aug-2012 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)

This CL is part I of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6485054

git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp
5d4ba8869476831ee73b15a052af8003d0a1fa2e 31-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point for gpu support in SkImage/SkSurface



git-svn-id: http://skia.googlecode.com/svn/trunk@4859 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/image/SkImage_Gpu.cpp