aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/core/SkCrossContextImageData.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/core/SkCrossContextImageData.h')
-rw-r--r--include/core/SkCrossContextImageData.h15
1 files changed, 7 insertions, 8 deletions
diff --git a/include/core/SkCrossContextImageData.h b/include/core/SkCrossContextImageData.h
index a408f71446..beaaaa6a28 100644
--- a/include/core/SkCrossContextImageData.h
+++ b/include/core/SkCrossContextImageData.h
@@ -12,7 +12,6 @@
#include "SkImage.h"
#if SK_SUPPORT_GPU
-#include "GrBackendSurface.h"
#include "GrExternalTextureData.h"
#endif
@@ -69,15 +68,16 @@ public:
~SkCCIDBackendTexture() override {}
private:
- SkCCIDBackendTexture(const GrBackendTexture& backendTex,
- GrSurfaceOrigin origin,
+ SkCCIDBackendTexture(const GrBackendTextureDesc& desc,
std::unique_ptr<GrExternalTextureData> textureData,
SkAlphaType alphaType, sk_sp<SkColorSpace> colorSpace)
: fAlphaType(alphaType)
, fColorSpace(std::move(colorSpace))
- , fBackendTex(backendTex)
- , fOrigin(origin)
- , fTextureData(std::move(textureData)) {}
+ , fDesc(desc)
+ , fTextureData(std::move(textureData)) {
+ // Point our texture desc at our copy of the backend information
+ fDesc.fTextureHandle = fTextureData->getBackendObject();
+ }
sk_sp<SkImage> makeImage(GrContext*) override;
@@ -85,8 +85,7 @@ private:
// and some backend-specific info (to reconstruct the texture).
SkAlphaType fAlphaType;
sk_sp<SkColorSpace> fColorSpace;
- GrBackendTexture fBackendTex;
- GrSurfaceOrigin fOrigin;
+ GrBackendTextureDesc fDesc;
std::unique_ptr<GrExternalTextureData> fTextureData;
friend class SkCrossContextImageData;