OSDN Git Service

Fix TextureLayer test
authorChris Craik <ccraik@google.com>
Fri, 25 Mar 2016 22:26:11 +0000 (15:26 -0700)
committerChris Craik <ccraik@google.com>
Fri, 25 Mar 2016 22:36:43 +0000 (15:36 -0700)
Fixes: 27823158

Change-Id: Ifed0d6119349662a23899935bfe5f3bacb361617

libs/hwui/tests/common/TestUtils.cpp
libs/hwui/tests/common/TestUtils.h
libs/hwui/tests/unit/FrameBuilderTests.cpp

index e1c9319..059e9ae 100644 (file)
@@ -42,17 +42,20 @@ SkColor TestUtils::interpolateColor(float fraction, SkColor start, SkColor end)
 
 sp<DeferredLayerUpdater> TestUtils::createTextureLayerUpdater(
         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 forceFilter = true;
     GLenum renderTarget = GL_TEXTURE_EXTERNAL_OES;
-
-    Layer* layer = LayerRenderer::createTextureLayer(renderThread.renderState());
     LayerRenderer::updateTextureLayer(layer, width, height, isOpaque, forceFilter,
-            renderTarget, Matrix4::identity().data);
-    transformSetupCallback(&(layer->getTransform()));
+    renderTarget, Matrix4::identity().data);
 
-    sp<DeferredLayerUpdater> layerUpdater = new DeferredLayerUpdater(layer);
     return layerUpdater;
 }
 
index 73027e2..2d1e2e9 100644 (file)
@@ -122,7 +122,7 @@ public:
 
     static sp<DeferredLayerUpdater> createTextureLayerUpdater(
             renderthread::RenderThread& renderThread, uint32_t width, uint32_t height,
-            std::function<void(Matrix4*)> transformSetupCallback);
+            const SkMatrix& transform);
 
     template<class CanvasType>
     static std::unique_ptr<DisplayList> createDisplayList(int width, int height,
index 99400c6..ba22d91 100644 (file)
@@ -387,9 +387,7 @@ RENDERTHREAD_TEST(FrameBuilder, textureLayer) {
     };
 
     auto layerUpdater = TestUtils::createTextureLayerUpdater(renderThread, 100, 100,
-            [](Matrix4* transform) {
-        transform->loadTranslate(5, 5, 0);
-    });
+            SkMatrix::MakeTrans(5, 5));
 
     auto node = TestUtils::createNode(0, 0, 200, 200,
             [&layerUpdater](RenderProperties& props, RecordingCanvas& canvas) {