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/LocalDOMWindow.h" | 12 #include "core/frame/LocalDOMWindow.h" |
13 #include "core/frame/LocalFrame.h" | 13 #include "core/frame/LocalFrame.h" |
14 #include "core/html/HTMLImageElement.h" | 14 #include "core/html/HTMLImageElement.h" |
15 #include "core/html/HTMLVideoElement.h" | 15 #include "core/html/HTMLVideoElement.h" |
16 #include "core/html/canvas/CanvasImageSource.h" | 16 #include "core/html/canvas/CanvasImageSource.h" |
17 #include "modules/shapedetection/DetectedBarcode.h" | 17 #include "modules/shapedetection/DetectedBarcode.h" |
18 #include "platform/graphics/Image.h" | 18 #include "platform/graphics/Image.h" |
19 #include "public/platform/InterfaceProvider.h" | 19 #include "public/platform/InterfaceProvider.h" |
20 #include "third_party/skia/include/core/SkImage.h" | 20 #include "third_party/skia/include/core/SkImage.h" |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 ScriptPromise ShapeDetector::detectShapesOnImageElement( | 110 ScriptPromise ShapeDetector::detectShapesOnImageElement( |
111 DetectorType detectorType, | 111 DetectorType detectorType, |
112 ScriptPromiseResolver* resolver, | 112 ScriptPromiseResolver* resolver, |
113 const HTMLImageElement* img) { | 113 const HTMLImageElement* img) { |
114 ScriptPromise promise = resolver->promise(); | 114 ScriptPromise promise = resolver->promise(); |
115 if (img->bitmapSourceSize().isZero()) { | 115 if (img->bitmapSourceSize().isZero()) { |
116 resolver->resolve(HeapVector<Member<DOMRect>>()); | 116 resolver->resolve(HeapVector<Member<DOMRect>>()); |
117 return promise; | 117 return promise; |
118 } | 118 } |
119 | 119 |
120 ImageResource* const imageResource = img->cachedImage(); | 120 ImageResourceContent* const imageResource = img->cachedImage(); |
121 if (!imageResource || imageResource->errorOccurred()) { | 121 if (!imageResource || imageResource->errorOccurred()) { |
122 resolver->reject(DOMException::create( | 122 resolver->reject(DOMException::create( |
123 InvalidStateError, "Failed to load or decode HTMLImageElement.")); | 123 InvalidStateError, "Failed to load or decode HTMLImageElement.")); |
124 return promise; | 124 return promise; |
125 } | 125 } |
126 | 126 |
127 Image* const blinkImage = imageResource->getImage(); | 127 Image* const blinkImage = imageResource->getImage(); |
128 if (!blinkImage) { | 128 if (!blinkImage) { |
129 resolver->reject(DOMException::create( | 129 resolver->reject(DOMException::create( |
130 InvalidStateError, "Failed to get image from resource.")); | 130 InvalidStateError, "Failed to get image from resource.")); |
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
396 m_barcodeServiceRequests.clear(); | 396 m_barcodeServiceRequests.clear(); |
397 m_barcodeService.reset(); | 397 m_barcodeService.reset(); |
398 } | 398 } |
399 | 399 |
400 DEFINE_TRACE(ShapeDetector) { | 400 DEFINE_TRACE(ShapeDetector) { |
401 visitor->trace(m_faceServiceRequests); | 401 visitor->trace(m_faceServiceRequests); |
402 visitor->trace(m_barcodeServiceRequests); | 402 visitor->trace(m_barcodeServiceRequests); |
403 } | 403 } |
404 | 404 |
405 } // namespace blink | 405 } // namespace blink |
OLD | NEW |