| 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 "chrome/browser/ui/webui/popular_sites_internals_message_handler.h" | 5 #include "chrome/browser/ui/webui/popular_sites_internals_message_handler.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 125 base::Bind(&PopularSitesInternalsMessageHandler::SendJson, | 125 base::Bind(&PopularSitesInternalsMessageHandler::SendJson, |
| 126 weak_ptr_factory_.GetWeakPtr())); | 126 weak_ptr_factory_.GetWeakPtr())); |
| 127 } | 127 } |
| 128 | 128 |
| 129 void PopularSitesInternalsMessageHandler::SendOverrides() { | 129 void PopularSitesInternalsMessageHandler::SendOverrides() { |
| 130 PrefService* prefs = Profile::FromWebUI(web_ui())->GetPrefs(); | 130 PrefService* prefs = Profile::FromWebUI(web_ui())->GetPrefs(); |
| 131 std::string country = | 131 std::string country = |
| 132 prefs->GetString(ntp_tiles::prefs::kPopularSitesOverrideCountry); | 132 prefs->GetString(ntp_tiles::prefs::kPopularSitesOverrideCountry); |
| 133 std::string version = | 133 std::string version = |
| 134 prefs->GetString(ntp_tiles::prefs::kPopularSitesOverrideVersion); | 134 prefs->GetString(ntp_tiles::prefs::kPopularSitesOverrideVersion); |
| 135 web_ui()->CallJavascriptFunction( | 135 web_ui()->CallJavascriptFunctionUnsafe( |
| 136 "chrome.popular_sites_internals.receiveOverrides", | 136 "chrome.popular_sites_internals.receiveOverrides", |
| 137 base::StringValue(country), base::StringValue(version)); | 137 base::StringValue(country), base::StringValue(version)); |
| 138 } | 138 } |
| 139 | 139 |
| 140 void PopularSitesInternalsMessageHandler::SendDownloadResult(bool success) { | 140 void PopularSitesInternalsMessageHandler::SendDownloadResult(bool success) { |
| 141 base::StringValue result(success ? "Success" : "Fail"); | 141 base::StringValue result(success ? "Success" : "Fail"); |
| 142 web_ui()->CallJavascriptFunction( | 142 web_ui()->CallJavascriptFunctionUnsafe( |
| 143 "chrome.popular_sites_internals.receiveDownloadResult", result); | 143 "chrome.popular_sites_internals.receiveDownloadResult", result); |
| 144 } | 144 } |
| 145 | 145 |
| 146 void PopularSitesInternalsMessageHandler::SendSites() { | 146 void PopularSitesInternalsMessageHandler::SendSites() { |
| 147 std::unique_ptr<base::ListValue> sites_list(new base::ListValue); | 147 std::unique_ptr<base::ListValue> sites_list(new base::ListValue); |
| 148 for (const PopularSites::Site& site : popular_sites_->sites()) { | 148 for (const PopularSites::Site& site : popular_sites_->sites()) { |
| 149 std::unique_ptr<base::DictionaryValue> entry(new base::DictionaryValue); | 149 std::unique_ptr<base::DictionaryValue> entry(new base::DictionaryValue); |
| 150 entry->SetString("title", site.title); | 150 entry->SetString("title", site.title); |
| 151 entry->SetString("url", site.url.spec()); | 151 entry->SetString("url", site.url.spec()); |
| 152 sites_list->Append(std::move(entry)); | 152 sites_list->Append(std::move(entry)); |
| 153 } | 153 } |
| 154 | 154 |
| 155 base::DictionaryValue result; | 155 base::DictionaryValue result; |
| 156 result.Set("sites", std::move(sites_list)); | 156 result.Set("sites", std::move(sites_list)); |
| 157 result.SetString("country", popular_sites_->GetCountry()); | 157 result.SetString("country", popular_sites_->GetCountry()); |
| 158 result.SetString("version", popular_sites_->GetVersion()); | 158 result.SetString("version", popular_sites_->GetVersion()); |
| 159 web_ui()->CallJavascriptFunction( | 159 web_ui()->CallJavascriptFunctionUnsafe( |
| 160 "chrome.popular_sites_internals.receiveSites", result); | 160 "chrome.popular_sites_internals.receiveSites", result); |
| 161 } | 161 } |
| 162 | 162 |
| 163 void PopularSitesInternalsMessageHandler::SendJson(const std::string& json) { | 163 void PopularSitesInternalsMessageHandler::SendJson(const std::string& json) { |
| 164 web_ui()->CallJavascriptFunction("chrome.popular_sites_internals.receiveJson", | 164 web_ui()->CallJavascriptFunctionUnsafe( |
| 165 base::StringValue(json)); | 165 "chrome.popular_sites_internals.receiveJson", base::StringValue(json)); |
| 166 } | 166 } |
| 167 | 167 |
| 168 void PopularSitesInternalsMessageHandler::OnPopularSitesAvailable( | 168 void PopularSitesInternalsMessageHandler::OnPopularSitesAvailable( |
| 169 bool explicit_request, bool success) { | 169 bool explicit_request, bool success) { |
| 170 if (explicit_request) | 170 if (explicit_request) |
| 171 SendDownloadResult(success); | 171 SendDownloadResult(success); |
| 172 SendSites(); | 172 SendSites(); |
| 173 } | 173 } |
| OLD | NEW |