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 |