| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "ios/chrome/browser/google/google_logo_service.h" | 5 #include "ios/chrome/browser/google/google_logo_service.h" |
| 6 | 6 |
| 7 #import <Foundation/Foundation.h> | 7 #import <Foundation/Foundation.h> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/strings/sys_string_conversions.h" | 10 #include "base/strings/sys_string_conversions.h" |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 104 web::WebThread::GetTaskRunnerForThread(web::WebThread::FILE), | 104 web::WebThread::GetTaskRunnerForThread(web::WebThread::FILE), |
| 105 web::WebThread::GetBlockingPool(), browser_state_->GetRequestContext(), | 105 web::WebThread::GetBlockingPool(), browser_state_->GetRequestContext(), |
| 106 std::unique_ptr<search_provider_logos::LogoDelegate>( | 106 std::unique_ptr<search_provider_logos::LogoDelegate>( |
| 107 new IOSChromeLogoDelegate()))); | 107 new IOSChromeLogoDelegate()))); |
| 108 } | 108 } |
| 109 | 109 |
| 110 logo_tracker_->SetServerAPI( | 110 logo_tracker_->SetServerAPI( |
| 111 GetGoogleDoodleURL(browser_state_), | 111 GetGoogleDoodleURL(browser_state_), |
| 112 base::Bind(&search_provider_logos::GoogleParseLogoResponse), | 112 base::Bind(&search_provider_logos::GoogleParseLogoResponse), |
| 113 base::Bind(&search_provider_logos::GoogleAppendQueryparamsToLogoURL), | 113 base::Bind(&search_provider_logos::GoogleAppendQueryparamsToLogoURL), |
| 114 true, false /* transparent */); | 114 true, false /* gray_background */); |
| 115 logo_tracker_->GetLogo(observer); | 115 logo_tracker_->GetLogo(observer); |
| 116 } | 116 } |
| 117 | 117 |
| 118 void GoogleLogoService::SetCachedLogo(const search_provider_logos::Logo* logo) { | 118 void GoogleLogoService::SetCachedLogo(const search_provider_logos::Logo* logo) { |
| 119 if (logo) { | 119 if (logo) { |
| 120 if (cached_metadata_.fingerprint == logo->metadata.fingerprint) { | 120 if (cached_metadata_.fingerprint == logo->metadata.fingerprint) { |
| 121 return; | 121 return; |
| 122 } | 122 } |
| 123 logo->image.deepCopyTo(&cached_image_); | 123 logo->image.deepCopyTo(&cached_image_); |
| 124 cached_metadata_ = logo->metadata; | 124 cached_metadata_ = logo->metadata; |
| 125 } else { | 125 } else { |
| 126 cached_image_ = SkBitmap(); | 126 cached_image_ = SkBitmap(); |
| 127 cached_metadata_ = empty_metadata; | 127 cached_metadata_ = empty_metadata; |
| 128 } | 128 } |
| 129 } | 129 } |
| 130 | 130 |
| 131 search_provider_logos::Logo GoogleLogoService::GetCachedLogo() { | 131 search_provider_logos::Logo GoogleLogoService::GetCachedLogo() { |
| 132 search_provider_logos::Logo logo; | 132 search_provider_logos::Logo logo; |
| 133 logo.image = cached_image_; | 133 logo.image = cached_image_; |
| 134 logo.metadata = cached_metadata_; | 134 logo.metadata = cached_metadata_; |
| 135 return logo; | 135 return logo; |
| 136 } | 136 } |
| OLD | NEW |