| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "modules/shapedetection/ShapeDetector.h" | 5 #include "modules/shapedetection/ShapeDetector.h" |
| 6 | 6 |
| 7 #include "core/dom/DOMException.h" | 7 #include "core/dom/DOMException.h" |
| 8 #include "core/dom/DOMRect.h" | 8 #include "core/dom/DOMRect.h" |
| 9 #include "core/dom/Document.h" | 9 #include "core/dom/Document.h" |
| 10 #include "core/fetch/ImageResource.h" | 10 #include "core/fetch/ImageResourceContent.h" |
| 11 #include "core/frame/ImageBitmap.h" | 11 #include "core/frame/ImageBitmap.h" |
| 12 #include "core/frame/LocalFrame.h" | 12 #include "core/frame/LocalFrame.h" |
| 13 #include "core/html/HTMLImageElement.h" | 13 #include "core/html/HTMLImageElement.h" |
| 14 #include "core/html/HTMLVideoElement.h" | 14 #include "core/html/HTMLVideoElement.h" |
| 15 #include "core/html/canvas/CanvasImageSource.h" | 15 #include "core/html/canvas/CanvasImageSource.h" |
| 16 #include "platform/graphics/Image.h" | 16 #include "platform/graphics/Image.h" |
| 17 #include "third_party/skia/include/core/SkImage.h" | 17 #include "third_party/skia/include/core/SkImage.h" |
| 18 #include "third_party/skia/include/core/SkImageInfo.h" | 18 #include "third_party/skia/include/core/SkImageInfo.h" |
| 19 #include "wtf/CheckedNumeric.h" | 19 #include "wtf/CheckedNumeric.h" |
| 20 | 20 |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 142 ScriptPromise ShapeDetector::detectShapesOnImageElement( | 142 ScriptPromise ShapeDetector::detectShapesOnImageElement( |
| 143 ScriptPromiseResolver* resolver, | 143 ScriptPromiseResolver* resolver, |
| 144 const HTMLImageElement* img) { | 144 const HTMLImageElement* img) { |
| 145 ScriptPromise promise = resolver->promise(); | 145 ScriptPromise promise = resolver->promise(); |
| 146 | 146 |
| 147 if (img->bitmapSourceSize().isZero()) { | 147 if (img->bitmapSourceSize().isZero()) { |
| 148 resolver->resolve(HeapVector<Member<DOMRect>>()); | 148 resolver->resolve(HeapVector<Member<DOMRect>>()); |
| 149 return promise; | 149 return promise; |
| 150 } | 150 } |
| 151 | 151 |
| 152 ImageResource* const imageResource = img->cachedImage(); | 152 ImageResourceContent* const imageResource = img->cachedImage(); |
| 153 if (!imageResource || imageResource->errorOccurred()) { | 153 if (!imageResource || imageResource->errorOccurred()) { |
| 154 resolver->reject(DOMException::create( | 154 resolver->reject(DOMException::create( |
| 155 InvalidStateError, "Failed to load or decode HTMLImageElement.")); | 155 InvalidStateError, "Failed to load or decode HTMLImageElement.")); |
| 156 return promise; | 156 return promise; |
| 157 } | 157 } |
| 158 | 158 |
| 159 Image* const blinkImage = imageResource->getImage(); | 159 Image* const blinkImage = imageResource->getImage(); |
| 160 if (!blinkImage) { | 160 if (!blinkImage) { |
| 161 resolver->reject(DOMException::create( | 161 resolver->reject(DOMException::create( |
| 162 InvalidStateError, "Failed to get image from resource.")); | 162 InvalidStateError, "Failed to get image from resource.")); |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 200 InvalidStateError, | 200 InvalidStateError, |
| 201 "Failed to read pixels: Unable to decompress or unsupported format.")); | 201 "Failed to read pixels: Unable to decompress or unsupported format.")); |
| 202 return promise; | 202 return promise; |
| 203 } | 203 } |
| 204 | 204 |
| 205 return doDetect(resolver, std::move(sharedBufferHandle), img->naturalWidth(), | 205 return doDetect(resolver, std::move(sharedBufferHandle), img->naturalWidth(), |
| 206 img->naturalHeight()); | 206 img->naturalHeight()); |
| 207 } | 207 } |
| 208 | 208 |
| 209 } // namespace blink | 209 } // namespace blink |
| OLD | NEW |