| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2013, Google Inc. All rights reserved. | 2 * Copyright (c) 2013, 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 are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * 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 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 | 99 |
| 100 RefPtr<Image> emptyImage = imageBitmapOutsideCrop->bitmapImage(); | 100 RefPtr<Image> emptyImage = imageBitmapOutsideCrop->bitmapImage(); |
| 101 ASSERT_NE(emptyImage.get(), imageElement->cachedImage()->image()); | 101 ASSERT_NE(emptyImage.get(), imageElement->cachedImage()->image()); |
| 102 } | 102 } |
| 103 | 103 |
| 104 // Verifies that HTMLImageElements are given an elevated CacheLiveResourcePriori
ty when used to construct an ImageBitmap. | 104 // Verifies that HTMLImageElements are given an elevated CacheLiveResourcePriori
ty when used to construct an ImageBitmap. |
| 105 // ImageBitmaps that have crop rects outside of the bounds of the HTMLImageEleme
nt do not have elevated CacheLiveResourcePriority. | 105 // ImageBitmaps that have crop rects outside of the bounds of the HTMLImageEleme
nt do not have elevated CacheLiveResourcePriority. |
| 106 TEST_F(ImageBitmapTest, ImageBitmapLiveResourcePriority) | 106 TEST_F(ImageBitmapTest, ImageBitmapLiveResourcePriority) |
| 107 { | 107 { |
| 108 RefPtr<HTMLImageElement> imageNoCrop = HTMLImageElement::create(*Document::c
reate().get()); | 108 RefPtr<HTMLImageElement> imageNoCrop = HTMLImageElement::create(*Document::c
reate().get()); |
| 109 ResourcePtr<ImageResource> cachedImageNoCrop = new ImageResource(BitmapImage
::create(NativeImageSkia::create(m_bitmap)).get()); | 109 ResourcePtr<ImageResource> cachedImageNoCrop = new ImageResource(ResourceReq
uest("http://foo.com/1"), BitmapImage::create(NativeImageSkia::create(m_bitmap))
.get()); |
| 110 imageNoCrop->setImageResource(cachedImageNoCrop.get()); | 110 imageNoCrop->setImageResource(cachedImageNoCrop.get()); |
| 111 | 111 |
| 112 RefPtr<HTMLImageElement> imageInteriorCrop = HTMLImageElement::create(*Docum
ent::create().get()); | 112 RefPtr<HTMLImageElement> imageInteriorCrop = HTMLImageElement::create(*Docum
ent::create().get()); |
| 113 ResourcePtr<ImageResource> cachedImageInteriorCrop = new ImageResource(Bitma
pImage::create(NativeImageSkia::create(m_bitmap)).get()); | 113 ResourcePtr<ImageResource> cachedImageInteriorCrop = new ImageResource(Resou
rceRequest("http://foo.com/2"), BitmapImage::create(NativeImageSkia::create(m_bi
tmap)).get()); |
| 114 imageInteriorCrop->setImageResource(cachedImageInteriorCrop.get()); | 114 imageInteriorCrop->setImageResource(cachedImageInteriorCrop.get()); |
| 115 | 115 |
| 116 RefPtr<HTMLImageElement> imageExteriorCrop = HTMLImageElement::create(*Docum
ent::create().get()); | 116 RefPtr<HTMLImageElement> imageExteriorCrop = HTMLImageElement::create(*Docum
ent::create().get()); |
| 117 ResourcePtr<ImageResource> cachedImageExteriorCrop = new ImageResource(Bitma
pImage::create(NativeImageSkia::create(m_bitmap)).get()); | 117 ResourcePtr<ImageResource> cachedImageExteriorCrop = new ImageResource(Resou
rceRequest("http://foo.com/3"), BitmapImage::create(NativeImageSkia::create(m_bi
tmap)).get()); |
| 118 imageExteriorCrop->setImageResource(cachedImageExteriorCrop.get()); | 118 imageExteriorCrop->setImageResource(cachedImageExteriorCrop.get()); |
| 119 | 119 |
| 120 RefPtr<HTMLImageElement> imageOutsideCrop = HTMLImageElement::create(*Docume
nt::create().get()); | 120 RefPtr<HTMLImageElement> imageOutsideCrop = HTMLImageElement::create(*Docume
nt::create().get()); |
| 121 ResourcePtr<ImageResource> cachedImageOutsideCrop = new ImageResource(Bitmap
Image::create(NativeImageSkia::create(m_bitmap)).get()); | 121 ResourcePtr<ImageResource> cachedImageOutsideCrop = new ImageResource(Resour
ceRequest("http://foo.com/4"), BitmapImage::create(NativeImageSkia::create(m_bit
map)).get()); |
| 122 imageOutsideCrop->setImageResource(cachedImageOutsideCrop.get()); | 122 imageOutsideCrop->setImageResource(cachedImageOutsideCrop.get()); |
| 123 | 123 |
| 124 MockImageResourceClient mockClient1, mockClient2, mockClient3, mockClient4; | 124 MockImageResourceClient mockClient1, mockClient2, mockClient3, mockClient4; |
| 125 cachedImageNoCrop->addClient(&mockClient1); | 125 cachedImageNoCrop->addClient(&mockClient1); |
| 126 cachedImageInteriorCrop->addClient(&mockClient2); | 126 cachedImageInteriorCrop->addClient(&mockClient2); |
| 127 cachedImageExteriorCrop->addClient(&mockClient3); | 127 cachedImageExteriorCrop->addClient(&mockClient3); |
| 128 cachedImageOutsideCrop->addClient(&mockClient4); | 128 cachedImageOutsideCrop->addClient(&mockClient4); |
| 129 | 129 |
| 130 memoryCache()->add(cachedImageNoCrop.get()); | 130 memoryCache()->add(cachedImageNoCrop.get()); |
| 131 memoryCache()->add(cachedImageInteriorCrop.get()); | 131 memoryCache()->add(cachedImageInteriorCrop.get()); |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 200 { | 200 { |
| 201 RefPtr<ImageBitmap> imageBitmapFromCanvas = ImageBitmap::create(canvasEl
ement.get(), IntRect(0, 0, canvasElement->width(), canvasElement->height())); | 201 RefPtr<ImageBitmap> imageBitmapFromCanvas = ImageBitmap::create(canvasEl
ement.get(), IntRect(0, 0, canvasElement->width(), canvasElement->height())); |
| 202 imageBitmapDerived = ImageBitmap::create(imageBitmapFromCanvas.get(), In
tRect(0, 0, 20, 20)); | 202 imageBitmapDerived = ImageBitmap::create(imageBitmapFromCanvas.get(), In
tRect(0, 0, 20, 20)); |
| 203 } | 203 } |
| 204 CanvasRenderingContext* context = canvasElement->getContext("2d"); | 204 CanvasRenderingContext* context = canvasElement->getContext("2d"); |
| 205 TrackExceptionState exceptionState; | 205 TrackExceptionState exceptionState; |
| 206 toCanvasRenderingContext2D(context)->drawImage(imageBitmapDerived.get(), 0,
0, exceptionState); | 206 toCanvasRenderingContext2D(context)->drawImage(imageBitmapDerived.get(), 0,
0, exceptionState); |
| 207 } | 207 } |
| 208 | 208 |
| 209 } // namespace | 209 } // namespace |
| OLD | NEW |