| 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 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 160 m_pendingLoaders.add(loader); | 160 m_pendingLoaders.add(loader); |
| 161 } | 161 } |
| 162 | 162 |
| 163 void ImageBitmapFactories::didFinishLoading(ImageBitmapLoader* loader) | 163 void ImageBitmapFactories::didFinishLoading(ImageBitmapLoader* loader) |
| 164 { | 164 { |
| 165 ASSERT(m_pendingLoaders.contains(loader)); | 165 ASSERT(m_pendingLoaders.contains(loader)); |
| 166 m_pendingLoaders.remove(loader); | 166 m_pendingLoaders.remove(loader); |
| 167 } | 167 } |
| 168 | 168 |
| 169 ImageBitmapFactories::ImageBitmapLoader::ImageBitmapLoader(ImageBitmapFactories&
factory, Optional<IntRect> cropRect, ScriptState* scriptState, const ImageBitma
pOptions& options) | 169 ImageBitmapFactories::ImageBitmapLoader::ImageBitmapLoader(ImageBitmapFactories&
factory, Optional<IntRect> cropRect, ScriptState* scriptState, const ImageBitma
pOptions& options) |
| 170 : m_loader(FileReaderLoader::ReadAsArrayBuffer, this) | 170 : m_loader(FileReaderLoader::create(FileReaderLoader::ReadAsArrayBuffer, thi
s)) |
| 171 , m_factory(&factory) | 171 , m_factory(&factory) |
| 172 , m_resolver(ScriptPromiseResolver::create(scriptState)) | 172 , m_resolver(ScriptPromiseResolver::create(scriptState)) |
| 173 , m_cropRect(cropRect) | 173 , m_cropRect(cropRect) |
| 174 , m_options(options) | 174 , m_options(options) |
| 175 { | 175 { |
| 176 } | 176 } |
| 177 | 177 |
| 178 void ImageBitmapFactories::ImageBitmapLoader::loadBlobAsync(ExecutionContext* co
ntext, Blob* blob) | 178 void ImageBitmapFactories::ImageBitmapLoader::loadBlobAsync(ExecutionContext* co
ntext, Blob* blob) |
| 179 { | 179 { |
| 180 m_loader.start(context, blob->blobDataHandle()); | 180 m_loader->start(context, blob->blobDataHandle()); |
| 181 } | 181 } |
| 182 | 182 |
| 183 DEFINE_TRACE(ImageBitmapFactories) | 183 DEFINE_TRACE(ImageBitmapFactories) |
| 184 { | 184 { |
| 185 visitor->trace(m_pendingLoaders); | 185 visitor->trace(m_pendingLoaders); |
| 186 Supplement<LocalDOMWindow>::trace(visitor); | 186 Supplement<LocalDOMWindow>::trace(visitor); |
| 187 Supplement<WorkerGlobalScope>::trace(visitor); | 187 Supplement<WorkerGlobalScope>::trace(visitor); |
| 188 } | 188 } |
| 189 | 189 |
| 190 void ImageBitmapFactories::ImageBitmapLoader::rejectPromise() | 190 void ImageBitmapFactories::ImageBitmapLoader::rejectPromise() |
| 191 { | 191 { |
| 192 m_resolver->reject(DOMException::create(InvalidStateError, "The source image
cannot be decoded.")); | 192 m_resolver->reject(DOMException::create(InvalidStateError, "The source image
cannot be decoded.")); |
| 193 m_factory->didFinishLoading(this); | 193 m_factory->didFinishLoading(this); |
| 194 } | 194 } |
| 195 | 195 |
| 196 void ImageBitmapFactories::ImageBitmapLoader::didFinishLoading() | 196 void ImageBitmapFactories::ImageBitmapLoader::didFinishLoading() |
| 197 { | 197 { |
| 198 DOMArrayBuffer* arrayBuffer = m_loader.arrayBufferResult(); | 198 DOMArrayBuffer* arrayBuffer = m_loader->arrayBufferResult(); |
| 199 if (!arrayBuffer) { | 199 if (!arrayBuffer) { |
| 200 rejectPromise(); | 200 rejectPromise(); |
| 201 return; | 201 return; |
| 202 } | 202 } |
| 203 scheduleAsyncImageBitmapDecoding(arrayBuffer); | 203 scheduleAsyncImageBitmapDecoding(arrayBuffer); |
| 204 } | 204 } |
| 205 | 205 |
| 206 void ImageBitmapFactories::ImageBitmapLoader::didFail(FileError::ErrorCode) | 206 void ImageBitmapFactories::ImageBitmapLoader::didFail(FileError::ErrorCode) |
| 207 { | 207 { |
| 208 rejectPromise(); | 208 rejectPromise(); |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 m_factory->didFinishLoading(this); | 262 m_factory->didFinishLoading(this); |
| 263 } | 263 } |
| 264 | 264 |
| 265 DEFINE_TRACE(ImageBitmapFactories::ImageBitmapLoader) | 265 DEFINE_TRACE(ImageBitmapFactories::ImageBitmapLoader) |
| 266 { | 266 { |
| 267 visitor->trace(m_factory); | 267 visitor->trace(m_factory); |
| 268 visitor->trace(m_resolver); | 268 visitor->trace(m_resolver); |
| 269 } | 269 } |
| 270 | 270 |
| 271 } // namespace blink | 271 } // namespace blink |
| OLD | NEW |