Chromium Code Reviews| Index: content/renderer/image_downloader/image_downloader_impl.h |
| diff --git a/content/renderer/image_downloader/image_downloader_impl.h b/content/renderer/image_downloader/image_downloader_impl.h |
| index 310ed0384c7f409b06f29a03589172fdef3cb6e9..f2a2d5f7ec92f3f451e0d26365e121be638d5936 100644 |
| --- a/content/renderer/image_downloader/image_downloader_impl.h |
| +++ b/content/renderer/image_downloader/image_downloader_impl.h |
| @@ -9,37 +9,26 @@ |
| #include <vector> |
| -#include "base/macros.h" |
| -#include "base/memory/scoped_vector.h" |
| #include "content/common/image_downloader/image_downloader.mojom.h" |
| #include "content/public/renderer/render_frame_observer.h" |
| -#include "content/public/renderer/render_thread_observer.h" |
| +#include "content/renderer/image_downloader/image_downloader_core.h" |
| #include "mojo/public/cpp/bindings/binding.h" |
| +#include "third_party/skia/include/core/SkBitmap.h" |
| #include "url/gurl.h" |
| -class SkBitmap; |
| - |
| -namespace gfx { |
| -class Size; |
| -} |
| - |
| namespace content { |
| -class MultiResolutionImageResourceFetcher; |
| +class ImageDownloaderCore; |
| class RenderFrame; |
| class ImageDownloaderImpl : public mojom::ImageDownloader, |
| - public RenderFrameObserver, |
| - public RenderThreadObserver { |
| + public RenderFrameObserver { |
| public: |
| ~ImageDownloaderImpl() override; |
| static void CreateMojoService(RenderFrame* render_frame, |
| mojom::ImageDownloaderRequest request); |
| - // RenderThreadObserver implementation. |
| - void OnRenderProcessShutdown() override; |
| - |
| private: |
| ImageDownloaderImpl(RenderFrame* render_frame, |
| mojom::ImageDownloaderRequest request); |
| @@ -47,51 +36,27 @@ class ImageDownloaderImpl : public mojom::ImageDownloader, |
| // RenderFrameObserver implementation. |
| void OnDestruct() override; |
| - // ImageDownloader methods: |
| + // ImageDownloader implementation. |
| void DownloadImage(const GURL& url, |
| bool is_favicon, |
| uint32_t max_bitmap_size, |
| bool bypass_cache, |
| const DownloadImageCallback& callback) override; |
| - // Requests to fetch an image. When done, the ImageDownloaderImpl |
| - // is notified by way of DidFetchImage. Returns true if the |
| - // request was successfully started, false otherwise. |
| - // If the image is a favicon, cookies will not be |
| - // sent nor accepted during download. If the image has multiple frames, all |
| - // the frames whose size <= |max_image_size| are returned. If all of the |
| - // frames are larger than |max_image_size|, the smallest frame is resized to |
| + // Called when downloading finishes. All frames in |images| whose size <= |
| + // |max_image_size| will be returned through |callback|. If all of the frames |
| + // are larger than |max_image_size|, the smallest frame is resized to |
| // |max_image_size| and is the only result. |max_image_size| == 0 is |
| // interpreted as no max image size. |
| - bool FetchImage(const GURL& image_url, |
| - bool is_favicon, |
| - uint32_t max_image_size, |
| - bool bypass_cache, |
| - const DownloadImageCallback& callback); |
| - |
| - // This callback is triggered when FetchImage completes, either |
| - // succesfully or with a failure. See FetchImage for more |
| - // details. |
| - void DidFetchImage(uint32_t max_image_size, |
| - const DownloadImageCallback& callback, |
| - MultiResolutionImageResourceFetcher* fetcher, |
| - const std::vector<SkBitmap>& images); |
| - |
| - // Reply download result |
| - void ReplyDownloadResult( |
| - int32_t http_status_code, |
| - const std::vector<SkBitmap>& result_images, |
| - const std::vector<gfx::Size>& result_original_image_sizes, |
| - const DownloadImageCallback& callback); |
| - |
| - typedef ScopedVector<MultiResolutionImageResourceFetcher> |
| - ImageResourceFetcherList; |
| - |
| - // ImageResourceFetchers schedule via FetchImage. |
| - ImageResourceFetcherList image_fetchers_; |
| + void DidDownloadImage(uint32_t max_bitmap_size, |
| + const DownloadImageCallback& callback, |
| + int32_t http_status_code, |
| + const std::vector<SkBitmap>& images); |
| mojo::Binding<mojom::ImageDownloader> binding_; |
| + ImageDownloaderCore image_downloader_; |
|
miu
2016/12/03 01:05:30
If the core installs a RenderFrameObserver (see ot
xjz
2016/12/06 19:50:55
Changed to use inheritance and "delete this" in ba
xjz
2016/12/06 23:58:17
As commented elsewhere, removed "delete this" in b
|
| + |
| DISALLOW_COPY_AND_ASSIGN(ImageDownloaderImpl); |
| }; |