| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "sky/engine/config.h" | 5 #include "sky/engine/config.h" |
| 6 #include "sky/engine/core/loader/CanvasImageLoader.h" | 6 #include "sky/engine/core/loader/CanvasImageLoader.h" |
| 7 #include "sky/engine/core/painting/CanvasImage.h" | 7 #include "sky/engine/core/painting/CanvasImage.h" |
| 8 #include "sky/engine/core/script/dom_dart_state.h" |
| 9 #include "sky/engine/platform/SharedBuffer.h" |
| 8 #include "sky/engine/platform/image-decoders/ImageDecoder.h" | 10 #include "sky/engine/platform/image-decoders/ImageDecoder.h" |
| 9 #include "sky/engine/platform/SharedBuffer.h" | |
| 10 | 11 |
| 11 namespace blink { | 12 namespace blink { |
| 12 | 13 |
| 13 CanvasImageLoader::CanvasImageLoader(const String& src, PassOwnPtr<ImageLoaderCa
llback> callback) | 14 CanvasImageLoader::CanvasImageLoader(const String& src, PassOwnPtr<ImageLoaderCa
llback> callback) |
| 14 : callback_(callback) { | 15 : callback_(callback) { |
| 15 // TODO(jackson): Figure out how to determine the proper base URL here | 16 KURL url = KURL(DOMDartState::Current()->url(), src); |
| 16 KURL url = KURL(KURL(), src); | |
| 17 fetcher_ = adoptPtr(new MojoFetcher(this, url)); | 17 fetcher_ = adoptPtr(new MojoFetcher(this, url)); |
| 18 } | 18 } |
| 19 | 19 |
| 20 CanvasImageLoader::~CanvasImageLoader() { | 20 CanvasImageLoader::~CanvasImageLoader() { |
| 21 } | 21 } |
| 22 | 22 |
| 23 void CanvasImageLoader::OnReceivedResponse(mojo::URLResponsePtr response) { | 23 void CanvasImageLoader::OnReceivedResponse(mojo::URLResponsePtr response) { |
| 24 if (response->status_code != 200) { | 24 if (response->status_code != 200) { |
| 25 callback_->handleEvent(nullptr); | 25 callback_->handleEvent(nullptr); |
| 26 return; | 26 return; |
| (...skipping 15 matching lines...) Expand all Loading... |
| 42 if (!decoder->failed() && decoder->frameCount() > 0) { | 42 if (!decoder->failed() && decoder->frameCount() > 0) { |
| 43 RefPtr<CanvasImage> resultImage = CanvasImage::create(); | 43 RefPtr<CanvasImage> resultImage = CanvasImage::create(); |
| 44 resultImage->setBitmap(decoder->frameBufferAtIndex(0)->getSkBitmap()); | 44 resultImage->setBitmap(decoder->frameBufferAtIndex(0)->getSkBitmap()); |
| 45 callback_->handleEvent(resultImage.get()); | 45 callback_->handleEvent(resultImage.get()); |
| 46 } else { | 46 } else { |
| 47 callback_->handleEvent(nullptr); | 47 callback_->handleEvent(nullptr); |
| 48 } | 48 } |
| 49 } | 49 } |
| 50 | 50 |
| 51 } // namespace blink | 51 } // namespace blink |
| OLD | NEW |