diff options
author | Stan Iliev <stani@google.com> | 2018-08-30 18:56:41 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-08-30 18:56:41 +0000 |
commit | e6cfb09cc4938078d14b1b4abca1678ac8fb170c (patch) | |
tree | c71f82bc74a53be28d30c88ca3b8f84b666578de /libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp | |
parent | c72888de5dec8327da3d1a8d328f2c92a629d91e (diff) | |
parent | 867c43de0544217d26c3ee18f4d6603bb2ea97ce (diff) |
Merge "Revert "TextureView Vulkan support and optimized OpenGL draw""
Diffstat (limited to 'libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp')
-rw-r--r-- | libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp b/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp index 2ae37233098e..78f5a71dee3b 100644 --- a/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp +++ b/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp @@ -17,6 +17,7 @@ #include "SkiaOpenGLPipeline.h" #include "DeferredLayerUpdater.h" +#include "GlLayer.h" #include "LayerDrawable.h" #include "SkiaPipeline.h" #include "SkiaProfileRenderer.h" @@ -186,9 +187,18 @@ bool SkiaOpenGLPipeline::copyLayerInto(DeferredLayerUpdater* deferredLayer, SkBi return false; } +static Layer* createLayer(RenderState& renderState, uint32_t layerWidth, uint32_t layerHeight, + sk_sp<SkColorFilter> colorFilter, int alpha, SkBlendMode mode, + bool blend) { + GlLayer* layer = + new GlLayer(renderState, layerWidth, layerHeight, colorFilter, alpha, mode, blend); + layer->generateTexture(); + return layer; +} + DeferredLayerUpdater* SkiaOpenGLPipeline::createTextureLayer() { mRenderThread.requireGlContext(); - return new DeferredLayerUpdater(mRenderThread.renderState()); + return new DeferredLayerUpdater(mRenderThread.renderState(), createLayer, Layer::Api::OpenGL); } void SkiaOpenGLPipeline::onStop() { |