| Index: Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| diff --git a/Source/platform/graphics/DeferredImageDecoderTest.cpp b/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| index 7baee44dea1dba2567a33c61986ab981d2bc06fd..20d48c4dd4883c8919265f767a1ababeb8424233 100644
|
| --- a/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| +++ b/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| @@ -34,7 +34,6 @@
|
| #include "platform/SharedBuffer.h"
|
| #include "platform/Task.h"
|
| #include "platform/graphics/ImageDecodingStore.h"
|
| -#include "platform/graphics/skia/NativeImageSkia.h"
|
| #include "platform/graphics/test/MockImageDecoder.h"
|
| #include "public/platform/Platform.h"
|
| #include "public/platform/WebThread.h"
|
| @@ -152,15 +151,16 @@ protected:
|
| TEST_F(DeferredImageDecoderTest, drawIntoSkPicture)
|
| {
|
| m_lazyDecoder->setData(*m_data, true);
|
| - RefPtr<NativeImageSkia> image = m_lazyDecoder->createFrameAtIndex(0);
|
| - EXPECT_EQ(1, image->bitmap().width());
|
| - EXPECT_EQ(1, image->bitmap().height());
|
| - EXPECT_FALSE(image->bitmap().isNull());
|
| - EXPECT_TRUE(image->bitmap().isImmutable());
|
| + SkBitmap bitmap;
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + EXPECT_EQ(1, bitmap.width());
|
| + EXPECT_EQ(1, bitmap.height());
|
| + EXPECT_FALSE(bitmap.isNull());
|
| + EXPECT_TRUE(bitmap.isImmutable());
|
|
|
| SkPictureRecorder recorder;
|
| SkCanvas* tempCanvas = recorder.beginRecording(100, 100, 0, 0);
|
| - tempCanvas->drawBitmap(image->bitmap(), 0, 0);
|
| + tempCanvas->drawBitmap(bitmap, 0, 0);
|
| RefPtr<SkPicture> picture = adoptRef(recorder.endRecording());
|
| EXPECT_EQ(0, m_frameBufferRequestCount);
|
|
|
| @@ -180,18 +180,19 @@ TEST_F(DeferredImageDecoderTest, drawIntoSkPictureProgressive)
|
|
|
| // Received only half the file.
|
| m_lazyDecoder->setData(*partialData, false);
|
| - RefPtr<NativeImageSkia> image = m_lazyDecoder->createFrameAtIndex(0);
|
| + SkBitmap bitmap;
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| SkPictureRecorder recorder;
|
| SkCanvas* tempCanvas = recorder.beginRecording(100, 100, 0, 0);
|
| - tempCanvas->drawBitmap(image->bitmap(), 0, 0);
|
| + tempCanvas->drawBitmap(bitmap, 0, 0);
|
| RefPtr<SkPicture> picture = adoptRef(recorder.endRecording());
|
| m_surface->getCanvas()->drawPicture(picture.get());
|
|
|
| // Fully received the file and draw the SkPicture again.
|
| m_lazyDecoder->setData(*m_data, true);
|
| - image = m_lazyDecoder->createFrameAtIndex(0);
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| tempCanvas = recorder.beginRecording(100, 100, 0, 0);
|
| - tempCanvas->drawBitmap(image->bitmap(), 0, 0);
|
| + tempCanvas->drawBitmap(bitmap, 0, 0);
|
| picture = adoptRef(recorder.endRecording());
|
| m_surface->getCanvas()->drawPicture(picture.get());
|
|
|
| @@ -210,15 +211,16 @@ static void rasterizeMain(SkCanvas* canvas, SkPicture* picture)
|
| TEST_F(DeferredImageDecoderTest, decodeOnOtherThread)
|
| {
|
| m_lazyDecoder->setData(*m_data, true);
|
| - RefPtr<NativeImageSkia> image = m_lazyDecoder->createFrameAtIndex(0);
|
| - EXPECT_EQ(1, image->bitmap().width());
|
| - EXPECT_EQ(1, image->bitmap().height());
|
| - EXPECT_FALSE(image->bitmap().isNull());
|
| - EXPECT_TRUE(image->bitmap().isImmutable());
|
| + SkBitmap bitmap;
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + EXPECT_EQ(1, bitmap.width());
|
| + EXPECT_EQ(1, bitmap.height());
|
| + EXPECT_FALSE(bitmap.isNull());
|
| + EXPECT_TRUE(bitmap.isImmutable());
|
|
|
| SkPictureRecorder recorder;
|
| SkCanvas* tempCanvas = recorder.beginRecording(100, 100, 0, 0);
|
| - tempCanvas->drawBitmap(image->bitmap(), 0, 0);
|
| + tempCanvas->drawBitmap(bitmap, 0, 0);
|
| RefPtr<SkPicture> picture = adoptRef(recorder.endRecording());
|
| EXPECT_EQ(0, m_frameBufferRequestCount);
|
|
|
| @@ -240,7 +242,9 @@ TEST_F(DeferredImageDecoderTest, singleFrameImageLoading)
|
| m_status = ImageFrame::FramePartial;
|
| m_lazyDecoder->setData(*m_data, false);
|
| EXPECT_FALSE(m_lazyDecoder->frameIsCompleteAtIndex(0));
|
| - unsigned firstId = m_lazyDecoder->createFrameAtIndex(0)->bitmap().getGenerationID();
|
| + SkBitmap bitmap;
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + unsigned firstId = bitmap.getGenerationID();
|
| EXPECT_FALSE(m_lazyDecoder->frameIsCompleteAtIndex(0));
|
| EXPECT_TRUE(m_actualDecoder);
|
|
|
| @@ -249,7 +253,8 @@ TEST_F(DeferredImageDecoderTest, singleFrameImageLoading)
|
| m_lazyDecoder->setData(*m_data, true);
|
| EXPECT_FALSE(m_actualDecoder);
|
| EXPECT_TRUE(m_lazyDecoder->frameIsCompleteAtIndex(0));
|
| - unsigned secondId = m_lazyDecoder->createFrameAtIndex(0)->bitmap().getGenerationID();
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + unsigned secondId = bitmap.getGenerationID();
|
| EXPECT_FALSE(m_frameBufferRequestCount);
|
| EXPECT_NE(firstId, secondId);
|
| }
|
| @@ -261,7 +266,9 @@ TEST_F(DeferredImageDecoderTest, multiFrameImageLoading)
|
| m_frameDuration = 10;
|
| m_status = ImageFrame::FramePartial;
|
| m_lazyDecoder->setData(*m_data, false);
|
| - unsigned firstId = m_lazyDecoder->createFrameAtIndex(0)->bitmap().getGenerationID();
|
| + SkBitmap bitmap;
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + unsigned firstId = bitmap.getGenerationID();
|
| EXPECT_FALSE(m_lazyDecoder->frameIsCompleteAtIndex(0));
|
| EXPECT_EQ(10.0f, m_lazyDecoder->frameDurationAtIndex(0));
|
|
|
| @@ -270,7 +277,8 @@ TEST_F(DeferredImageDecoderTest, multiFrameImageLoading)
|
| m_status = ImageFrame::FrameComplete;
|
| m_data->append(" ", 1);
|
| m_lazyDecoder->setData(*m_data, false);
|
| - unsigned secondId = m_lazyDecoder->createFrameAtIndex(0)->bitmap().getGenerationID();
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + unsigned secondId = bitmap.getGenerationID();
|
| EXPECT_NE(firstId, secondId);
|
| EXPECT_TRUE(m_lazyDecoder->frameIsCompleteAtIndex(0));
|
| EXPECT_TRUE(m_lazyDecoder->frameIsCompleteAtIndex(1));
|
| @@ -295,18 +303,19 @@ TEST_F(DeferredImageDecoderTest, decodedSize)
|
| {
|
| m_decodedSize = IntSize(22, 33);
|
| m_lazyDecoder->setData(*m_data, true);
|
| - RefPtr<NativeImageSkia> image = m_lazyDecoder->createFrameAtIndex(0);
|
| - EXPECT_EQ(m_decodedSize.width(), image->bitmap().width());
|
| - EXPECT_EQ(m_decodedSize.height(), image->bitmap().height());
|
| - EXPECT_FALSE(image->bitmap().isNull());
|
| - EXPECT_TRUE(image->bitmap().isImmutable());
|
| + SkBitmap bitmap;
|
| + EXPECT_TRUE(m_lazyDecoder->createFrameAtIndex(0, &bitmap));
|
| + EXPECT_EQ(m_decodedSize.width(), bitmap.width());
|
| + EXPECT_EQ(m_decodedSize.height(), bitmap.height());
|
| + EXPECT_FALSE(bitmap.isNull());
|
| + EXPECT_TRUE(bitmap.isImmutable());
|
|
|
| useMockImageDecoderFactory();
|
|
|
| // The following code should not fail any assert.
|
| SkPictureRecorder recorder;
|
| SkCanvas* tempCanvas = recorder.beginRecording(100, 100, 0, 0);
|
| - tempCanvas->drawBitmap(image->bitmap(), 0, 0);
|
| + tempCanvas->drawBitmap(bitmap, 0, 0);
|
| RefPtr<SkPicture> picture = adoptRef(recorder.endRecording());
|
| EXPECT_EQ(0, m_frameBufferRequestCount);
|
| m_surface->getCanvas()->drawPicture(picture.get());
|
|
|