| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "core/frame/ImageBitmap.h" | 5 #include "core/frame/ImageBitmap.h" |
| 6 | 6 |
| 7 #include "core/html/HTMLCanvasElement.h" | 7 #include "core/html/HTMLCanvasElement.h" |
| 8 #include "core/html/HTMLVideoElement.h" | 8 #include "core/html/HTMLVideoElement.h" |
| 9 #include "core/html/ImageData.h" | 9 #include "core/html/ImageData.h" |
| 10 #include "core/offscreencanvas/OffscreenCanvas.h" | 10 #include "core/offscreencanvas/OffscreenCanvas.h" |
| (...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 544 | 544 |
| 545 if (parsedOptions.premultiplyAlpha) { | 545 if (parsedOptions.premultiplyAlpha) { |
| 546 if (imageFormat == DontPremultiplyAlpha) | 546 if (imageFormat == DontPremultiplyAlpha) |
| 547 return StaticBitmapImage::create( | 547 return StaticBitmapImage::create( |
| 548 unPremulSkImageToPremul(skiaImage.get())); | 548 unPremulSkImageToPremul(skiaImage.get())); |
| 549 return StaticBitmapImage::create(std::move(skiaImage)); | 549 return StaticBitmapImage::create(std::move(skiaImage)); |
| 550 } | 550 } |
| 551 return StaticBitmapImage::create(premulSkImageToUnPremul(skiaImage.get())); | 551 return StaticBitmapImage::create(premulSkImageToUnPremul(skiaImage.get())); |
| 552 } | 552 } |
| 553 | 553 |
| 554 ImageBitmap::ImageBitmap(HTMLImageElement* image, | 554 ImageBitmap::ImageBitmap(HTMLAndSVGImageElementSource* image, |
| 555 Optional<IntRect> cropRect, | 555 Optional<IntRect> cropRect, |
| 556 Document* document, | 556 Document* document, |
| 557 const ImageBitmapOptions& options) { | 557 const ImageBitmapOptions& options) { |
| 558 RefPtr<Image> input = image->cachedImage()->getImage(); | 558 RefPtr<Image> input = image->cachedImage()->getImage(); |
| 559 ParsedOptions parsedOptions = | 559 ParsedOptions parsedOptions = |
| 560 parseOptions(options, cropRect, image->bitmapSourceSize()); | 560 parseOptions(options, cropRect, image->bitmapSourceSize()); |
| 561 if (dstBufferSizeHasOverflow(parsedOptions)) | 561 if (dstBufferSizeHasOverflow(parsedOptions)) |
| 562 return; | 562 return; |
| 563 | 563 |
| 564 if (options.colorSpaceConversion() == kImageBitmapOptionNone) { | 564 if (options.colorSpaceConversion() == kImageBitmapOptionNone) { |
| (...skipping 411 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 976 | 976 |
| 977 PassRefPtr<StaticBitmapImage> ImageBitmap::transfer() { | 977 PassRefPtr<StaticBitmapImage> ImageBitmap::transfer() { |
| 978 ASSERT(!isNeutered()); | 978 ASSERT(!isNeutered()); |
| 979 m_isNeutered = true; | 979 m_isNeutered = true; |
| 980 m_image->transfer(); | 980 m_image->transfer(); |
| 981 return std::move(m_image); | 981 return std::move(m_image); |
| 982 } | 982 } |
| 983 | 983 |
| 984 ImageBitmap::~ImageBitmap() {} | 984 ImageBitmap::~ImageBitmap() {} |
| 985 | 985 |
| 986 ImageBitmap* ImageBitmap::create(HTMLImageElement* image, | 986 ImageBitmap* ImageBitmap::create(HTMLAndSVGImageElementSource* image, |
| 987 Optional<IntRect> cropRect, | 987 Optional<IntRect> cropRect, |
| 988 Document* document, | 988 Document* document, |
| 989 const ImageBitmapOptions& options) { | 989 const ImageBitmapOptions& options) { |
| 990 return new ImageBitmap(image, cropRect, document, options); | 990 return new ImageBitmap(image, cropRect, document, options); |
| 991 } | 991 } |
| 992 | 992 |
| 993 ImageBitmap* ImageBitmap::create(HTMLVideoElement* video, | 993 ImageBitmap* ImageBitmap::create(HTMLVideoElement* video, |
| 994 Optional<IntRect> cropRect, | 994 Optional<IntRect> cropRect, |
| 995 Document* document, | 995 Document* document, |
| 996 const ImageBitmapOptions& options) { | 996 const ImageBitmapOptions& options) { |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1125 void ImageBitmap::adjustDrawRects(FloatRect* srcRect, | 1125 void ImageBitmap::adjustDrawRects(FloatRect* srcRect, |
| 1126 FloatRect* dstRect) const {} | 1126 FloatRect* dstRect) const {} |
| 1127 | 1127 |
| 1128 FloatSize ImageBitmap::elementSize(const FloatSize&) const { | 1128 FloatSize ImageBitmap::elementSize(const FloatSize&) const { |
| 1129 return FloatSize(width(), height()); | 1129 return FloatSize(width(), height()); |
| 1130 } | 1130 } |
| 1131 | 1131 |
| 1132 DEFINE_TRACE(ImageBitmap) {} | 1132 DEFINE_TRACE(ImageBitmap) {} |
| 1133 | 1133 |
| 1134 } // namespace blink | 1134 } // namespace blink |
| OLD | NEW |