| 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 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 ASSERT_EQ(imageBitmapExteriorCrop->bitmapImage().get(), imageElement->cached
Image()->image()); | 102 ASSERT_EQ(imageBitmapExteriorCrop->bitmapImage().get(), imageElement->cached
Image()->image()); |
| 103 | 103 |
| 104 RefPtr<Image> emptyImage = imageBitmapOutsideCrop->bitmapImage(); | 104 RefPtr<Image> emptyImage = imageBitmapOutsideCrop->bitmapImage(); |
| 105 ASSERT_NE(emptyImage.get(), imageElement->cachedImage()->image()); | 105 ASSERT_NE(emptyImage.get(), imageElement->cachedImage()->image()); |
| 106 } | 106 } |
| 107 | 107 |
| 108 // Verifies that HTMLImageElements are given an elevated CacheLiveResourcePriori
ty when used to construct an ImageBitmap. | 108 // Verifies that HTMLImageElements are given an elevated CacheLiveResourcePriori
ty when used to construct an ImageBitmap. |
| 109 // ImageBitmaps that have crop rects outside of the bounds of the HTMLImageEleme
nt do not have elevated CacheLiveResourcePriority. | 109 // ImageBitmaps that have crop rects outside of the bounds of the HTMLImageEleme
nt do not have elevated CacheLiveResourcePriority. |
| 110 TEST_F(ImageBitmapTest, ImageBitmapLiveResourcePriority) | 110 TEST_F(ImageBitmapTest, ImageBitmapLiveResourcePriority) |
| 111 { | 111 { |
| 112 RefPtrWillBeRawPtr<HTMLImageElement> imageNoCrop = HTMLImageElement::create(
*Document::create().get()); | 112 RefPtrWillBePersistent<HTMLImageElement> imageNoCrop = HTMLImageElement::cre
ate(*Document::create().get()); |
| 113 ResourcePtr<ImageResource> cachedImageNoCrop = new ImageResource(ResourceReq
uest("http://foo.com/1"), BitmapImage::create(NativeImageSkia::create(m_bitmap))
.get()); | 113 ResourcePtr<ImageResource> cachedImageNoCrop = new ImageResource(ResourceReq
uest("http://foo.com/1"), BitmapImage::create(NativeImageSkia::create(m_bitmap))
.get()); |
| 114 imageNoCrop->setImageResource(cachedImageNoCrop.get()); | 114 imageNoCrop->setImageResource(cachedImageNoCrop.get()); |
| 115 | 115 |
| 116 RefPtrWillBeRawPtr<HTMLImageElement> imageInteriorCrop = HTMLImageElement::c
reate(*Document::create().get()); | 116 RefPtrWillBePersistent<HTMLImageElement> imageInteriorCrop = HTMLImageElemen
t::create(*Document::create().get()); |
| 117 ResourcePtr<ImageResource> cachedImageInteriorCrop = new ImageResource(Resou
rceRequest("http://foo.com/2"), BitmapImage::create(NativeImageSkia::create(m_bi
tmap)).get()); | 117 ResourcePtr<ImageResource> cachedImageInteriorCrop = new ImageResource(Resou
rceRequest("http://foo.com/2"), BitmapImage::create(NativeImageSkia::create(m_bi
tmap)).get()); |
| 118 imageInteriorCrop->setImageResource(cachedImageInteriorCrop.get()); | 118 imageInteriorCrop->setImageResource(cachedImageInteriorCrop.get()); |
| 119 | 119 |
| 120 RefPtrWillBeRawPtr<HTMLImageElement> imageExteriorCrop = HTMLImageElement::c
reate(*Document::create().get()); | 120 RefPtrWillBePersistent<HTMLImageElement> imageExteriorCrop = HTMLImageElemen
t::create(*Document::create().get()); |
| 121 ResourcePtr<ImageResource> cachedImageExteriorCrop = new ImageResource(Resou
rceRequest("http://foo.com/3"), BitmapImage::create(NativeImageSkia::create(m_bi
tmap)).get()); | 121 ResourcePtr<ImageResource> cachedImageExteriorCrop = new ImageResource(Resou
rceRequest("http://foo.com/3"), BitmapImage::create(NativeImageSkia::create(m_bi
tmap)).get()); |
| 122 imageExteriorCrop->setImageResource(cachedImageExteriorCrop.get()); | 122 imageExteriorCrop->setImageResource(cachedImageExteriorCrop.get()); |
| 123 | 123 |
| 124 RefPtrWillBeRawPtr<HTMLImageElement> imageOutsideCrop = HTMLImageElement::cr
eate(*Document::create().get()); | 124 RefPtrWillBePersistent<HTMLImageElement> imageOutsideCrop = HTMLImageElement
::create(*Document::create().get()); |
| 125 ResourcePtr<ImageResource> cachedImageOutsideCrop = new ImageResource(Resour
ceRequest("http://foo.com/4"), BitmapImage::create(NativeImageSkia::create(m_bit
map)).get()); | 125 ResourcePtr<ImageResource> cachedImageOutsideCrop = new ImageResource(Resour
ceRequest("http://foo.com/4"), BitmapImage::create(NativeImageSkia::create(m_bit
map)).get()); |
| 126 imageOutsideCrop->setImageResource(cachedImageOutsideCrop.get()); | 126 imageOutsideCrop->setImageResource(cachedImageOutsideCrop.get()); |
| 127 | 127 |
| 128 MockImageResourceClient mockClient1, mockClient2, mockClient3, mockClient4; | 128 MockImageResourceClient mockClient1, mockClient2, mockClient3, mockClient4; |
| 129 cachedImageNoCrop->addClient(&mockClient1); | 129 cachedImageNoCrop->addClient(&mockClient1); |
| 130 cachedImageInteriorCrop->addClient(&mockClient2); | 130 cachedImageInteriorCrop->addClient(&mockClient2); |
| 131 cachedImageExteriorCrop->addClient(&mockClient3); | 131 cachedImageExteriorCrop->addClient(&mockClient3); |
| 132 cachedImageOutsideCrop->addClient(&mockClient4); | 132 cachedImageOutsideCrop->addClient(&mockClient4); |
| 133 | 133 |
| 134 memoryCache()->add(cachedImageNoCrop.get()); | 134 memoryCache()->add(cachedImageNoCrop.get()); |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 207 { | 207 { |
| 208 RefPtrWillBeRawPtr<ImageBitmap> imageBitmapFromCanvas = ImageBitmap::cre
ate(canvasElement.get(), IntRect(0, 0, canvasElement->width(), canvasElement->he
ight())); | 208 RefPtrWillBeRawPtr<ImageBitmap> imageBitmapFromCanvas = ImageBitmap::cre
ate(canvasElement.get(), IntRect(0, 0, canvasElement->width(), canvasElement->he
ight())); |
| 209 imageBitmapDerived = ImageBitmap::create(imageBitmapFromCanvas.get(), In
tRect(0, 0, 20, 20)); | 209 imageBitmapDerived = ImageBitmap::create(imageBitmapFromCanvas.get(), In
tRect(0, 0, 20, 20)); |
| 210 } | 210 } |
| 211 CanvasRenderingContext* context = canvasElement->getContext("2d"); | 211 CanvasRenderingContext* context = canvasElement->getContext("2d"); |
| 212 TrackExceptionState exceptionState; | 212 TrackExceptionState exceptionState; |
| 213 toCanvasRenderingContext2D(context)->drawImage(imageBitmapDerived.get(), 0,
0, exceptionState); | 213 toCanvasRenderingContext2D(context)->drawImage(imageBitmapDerived.get(), 0,
0, exceptionState); |
| 214 } | 214 } |
| 215 | 215 |
| 216 } // namespace | 216 } // namespace |
| OLD | NEW |