Merge "Fix TextureLayer test" into nyc-dev
This commit is contained in:
@@ -42,17 +42,20 @@ SkColor TestUtils::interpolateColor(float fraction, SkColor start, SkColor end)
|
|||||||
|
|
||||||
sp<DeferredLayerUpdater> TestUtils::createTextureLayerUpdater(
|
sp<DeferredLayerUpdater> TestUtils::createTextureLayerUpdater(
|
||||||
renderthread::RenderThread& renderThread, uint32_t width, uint32_t height,
|
renderthread::RenderThread& renderThread, uint32_t width, uint32_t height,
|
||||||
std::function<void(Matrix4*)> transformSetupCallback) {
|
const SkMatrix& transform) {
|
||||||
|
Layer* layer = LayerRenderer::createTextureLayer(renderThread.renderState());
|
||||||
|
|
||||||
|
sp<DeferredLayerUpdater> layerUpdater = new DeferredLayerUpdater(layer);
|
||||||
|
layerUpdater->setSize(width, height);
|
||||||
|
layerUpdater->setTransform(&transform);
|
||||||
|
|
||||||
|
// updateLayer so it's ready to draw
|
||||||
bool isOpaque = true;
|
bool isOpaque = true;
|
||||||
bool forceFilter = true;
|
bool forceFilter = true;
|
||||||
GLenum renderTarget = GL_TEXTURE_EXTERNAL_OES;
|
GLenum renderTarget = GL_TEXTURE_EXTERNAL_OES;
|
||||||
|
|
||||||
Layer* layer = LayerRenderer::createTextureLayer(renderThread.renderState());
|
|
||||||
LayerRenderer::updateTextureLayer(layer, width, height, isOpaque, forceFilter,
|
LayerRenderer::updateTextureLayer(layer, width, height, isOpaque, forceFilter,
|
||||||
renderTarget, Matrix4::identity().data);
|
renderTarget, Matrix4::identity().data);
|
||||||
transformSetupCallback(&(layer->getTransform()));
|
|
||||||
|
|
||||||
sp<DeferredLayerUpdater> layerUpdater = new DeferredLayerUpdater(layer);
|
|
||||||
return layerUpdater;
|
return layerUpdater;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ public:
|
|||||||
|
|
||||||
static sp<DeferredLayerUpdater> createTextureLayerUpdater(
|
static sp<DeferredLayerUpdater> createTextureLayerUpdater(
|
||||||
renderthread::RenderThread& renderThread, uint32_t width, uint32_t height,
|
renderthread::RenderThread& renderThread, uint32_t width, uint32_t height,
|
||||||
std::function<void(Matrix4*)> transformSetupCallback);
|
const SkMatrix& transform);
|
||||||
|
|
||||||
template<class CanvasType>
|
template<class CanvasType>
|
||||||
static std::unique_ptr<DisplayList> createDisplayList(int width, int height,
|
static std::unique_ptr<DisplayList> createDisplayList(int width, int height,
|
||||||
|
|||||||
@@ -387,9 +387,7 @@ RENDERTHREAD_TEST(FrameBuilder, textureLayer) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
auto layerUpdater = TestUtils::createTextureLayerUpdater(renderThread, 100, 100,
|
auto layerUpdater = TestUtils::createTextureLayerUpdater(renderThread, 100, 100,
|
||||||
[](Matrix4* transform) {
|
SkMatrix::MakeTrans(5, 5));
|
||||||
transform->loadTranslate(5, 5, 0);
|
|
||||||
});
|
|
||||||
|
|
||||||
auto node = TestUtils::createNode(0, 0, 200, 200,
|
auto node = TestUtils::createNode(0, 0, 200, 200,
|
||||||
[&layerUpdater](RenderProperties& props, RecordingCanvas& canvas) {
|
[&layerUpdater](RenderProperties& props, RecordingCanvas& canvas) {
|
||||||
|
|||||||
Reference in New Issue
Block a user