| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 169 m_canvas->drawPicture(m_picture); | 169 m_canvas->drawPicture(m_picture); |
| 170 EXPECT_EQ(0, m_frameBufferRequestCount); | 170 EXPECT_EQ(0, m_frameBufferRequestCount); |
| 171 | 171 |
| 172 SkBitmap canvasBitmap; | 172 SkBitmap canvasBitmap; |
| 173 canvasBitmap.setConfig(SkBitmap::kARGB_8888_Config, 100, 100); | 173 canvasBitmap.setConfig(SkBitmap::kARGB_8888_Config, 100, 100); |
| 174 ASSERT_TRUE(m_canvas->readPixels(&canvasBitmap, 0, 0)); | 174 ASSERT_TRUE(m_canvas->readPixels(&canvasBitmap, 0, 0)); |
| 175 SkAutoLockPixels autoLock(canvasBitmap); | 175 SkAutoLockPixels autoLock(canvasBitmap); |
| 176 EXPECT_EQ(SkColorSetARGB(255, 255, 255, 255), canvasBitmap.getColor(0, 0)); | 176 EXPECT_EQ(SkColorSetARGB(255, 255, 255, 255), canvasBitmap.getColor(0, 0)); |
| 177 } | 177 } |
| 178 | 178 |
| 179 TEST_F(DeferredImageDecoderTest, drawDiscardableIntoSkPicture) | |
| 180 { | |
| 181 DeferredImageDecoder::setSkiaDiscardableMemoryEnabled(true); | |
| 182 | |
| 183 m_lazyDecoder->setData(m_data.get(), true); | |
| 184 RefPtr<NativeImageSkia> image = m_lazyDecoder->frameBufferAtIndex(0)->asNewN
ativeImage(); | |
| 185 EXPECT_EQ(1, image->bitmap().width()); | |
| 186 EXPECT_EQ(1, image->bitmap().height()); | |
| 187 EXPECT_FALSE(image->bitmap().isNull()); | |
| 188 EXPECT_TRUE(image->bitmap().isImmutable()); | |
| 189 | |
| 190 SkCanvas* tempCanvas = m_picture.beginRecording(100, 100); | |
| 191 tempCanvas->drawBitmap(image->bitmap(), 0, 0); | |
| 192 m_picture.endRecording(); | |
| 193 EXPECT_EQ(0, m_frameBufferRequestCount); | |
| 194 | |
| 195 m_canvas->drawPicture(m_picture); | |
| 196 EXPECT_EQ(0, m_frameBufferRequestCount); | |
| 197 | |
| 198 SkBitmap canvasBitmap; | |
| 199 canvasBitmap.setConfig(SkBitmap::kARGB_8888_Config, 100, 100); | |
| 200 ASSERT_TRUE(m_canvas->readPixels(&canvasBitmap, 0, 0)); | |
| 201 SkAutoLockPixels autoLock(canvasBitmap); | |
| 202 EXPECT_EQ(SkColorSetARGB(255, 255, 255, 255), canvasBitmap.getColor(0, 0)); | |
| 203 | |
| 204 DeferredImageDecoder::setSkiaDiscardableMemoryEnabled(false); | |
| 205 } | |
| 206 | |
| 207 TEST_F(DeferredImageDecoderTest, DISABLED_drawScaledIntoSkPicture) | 179 TEST_F(DeferredImageDecoderTest, DISABLED_drawScaledIntoSkPicture) |
| 208 { | 180 { |
| 209 m_lazyDecoder->setData(m_data.get(), true); | 181 m_lazyDecoder->setData(m_data.get(), true); |
| 210 RefPtr<NativeImageSkia> image = m_lazyDecoder->frameBufferAtIndex(0)->asNewN
ativeImage(); | 182 RefPtr<NativeImageSkia> image = m_lazyDecoder->frameBufferAtIndex(0)->asNewN
ativeImage(); |
| 211 SkBitmap scaledBitmap = image->resizedBitmap(SkISize::Make(50, 51), SkIRect:
:MakeWH(50, 51)); | 183 SkBitmap scaledBitmap = image->resizedBitmap(SkISize::Make(50, 51), SkIRect:
:MakeWH(50, 51)); |
| 212 EXPECT_FALSE(scaledBitmap.isNull()); | 184 EXPECT_FALSE(scaledBitmap.isNull()); |
| 213 EXPECT_TRUE(scaledBitmap.isImmutable()); | 185 EXPECT_TRUE(scaledBitmap.isImmutable()); |
| 214 EXPECT_EQ(50, scaledBitmap.width()); | 186 EXPECT_EQ(50, scaledBitmap.width()); |
| 215 EXPECT_EQ(51, scaledBitmap.height()); | 187 EXPECT_EQ(51, scaledBitmap.height()); |
| 216 EXPECT_EQ(0, m_frameBufferRequestCount); | 188 EXPECT_EQ(0, m_frameBufferRequestCount); |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 341 // The following code should not fail any assert. | 313 // The following code should not fail any assert. |
| 342 SkCanvas* tempCanvas = m_picture.beginRecording(100, 100); | 314 SkCanvas* tempCanvas = m_picture.beginRecording(100, 100); |
| 343 tempCanvas->drawBitmap(image->bitmap(), 0, 0); | 315 tempCanvas->drawBitmap(image->bitmap(), 0, 0); |
| 344 m_picture.endRecording(); | 316 m_picture.endRecording(); |
| 345 EXPECT_EQ(0, m_frameBufferRequestCount); | 317 EXPECT_EQ(0, m_frameBufferRequestCount); |
| 346 m_canvas->drawPicture(m_picture); | 318 m_canvas->drawPicture(m_picture); |
| 347 EXPECT_EQ(1, m_frameBufferRequestCount); | 319 EXPECT_EQ(1, m_frameBufferRequestCount); |
| 348 } | 320 } |
| 349 | 321 |
| 350 } // namespace WebCore | 322 } // namespace WebCore |
| OLD | NEW |