OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/settings/settings_import_data_handler.h" | 5 #include "chrome/browser/ui/webui/settings/settings_import_data_handler.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 #include <utility> | 10 #include <utility> |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 87 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
88 | 88 |
89 if (!imported_items) | 89 if (!imported_items) |
90 return; | 90 return; |
91 | 91 |
92 // If another import is already ongoing, let it finish silently. | 92 // If another import is already ongoing, let it finish silently. |
93 if (importer_host_) | 93 if (importer_host_) |
94 importer_host_->set_observer(NULL); | 94 importer_host_->set_observer(NULL); |
95 | 95 |
96 CallJavascriptFunction("cr.webUIListenerCallback", | 96 CallJavascriptFunction("cr.webUIListenerCallback", |
97 base::StringValue("import-data-status-changed"), | 97 base::Value("import-data-status-changed"), |
98 base::StringValue(kImportStatusInProgress)); | 98 base::Value(kImportStatusInProgress)); |
99 import_did_succeed_ = false; | 99 import_did_succeed_ = false; |
100 | 100 |
101 importer_host_ = new ExternalProcessImporterHost(); | 101 importer_host_ = new ExternalProcessImporterHost(); |
102 importer_host_->set_observer(this); | 102 importer_host_->set_observer(this); |
103 Profile* profile = Profile::FromWebUI(web_ui()); | 103 Profile* profile = Profile::FromWebUI(web_ui()); |
104 importer_host_->StartImportSettings(source_profile, profile, | 104 importer_host_->StartImportSettings(source_profile, profile, |
105 imported_items, | 105 imported_items, |
106 new ProfileWriter(profile)); | 106 new ProfileWriter(profile)); |
107 | 107 |
108 importer::LogImporterUseToMetrics("ImportDataHandler", | 108 importer::LogImporterUseToMetrics("ImportDataHandler", |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 (browser_services & importer::PASSWORDS) != 0); | 178 (browser_services & importer::PASSWORDS) != 0); |
179 browser_profile->SetBoolean("search", | 179 browser_profile->SetBoolean("search", |
180 (browser_services & importer::SEARCH_ENGINES) != 0); | 180 (browser_services & importer::SEARCH_ENGINES) != 0); |
181 browser_profile->SetBoolean( | 181 browser_profile->SetBoolean( |
182 "autofillFormData", | 182 "autofillFormData", |
183 (browser_services & importer::AUTOFILL_FORM_DATA) != 0); | 183 (browser_services & importer::AUTOFILL_FORM_DATA) != 0); |
184 | 184 |
185 browser_profiles.Append(std::move(browser_profile)); | 185 browser_profiles.Append(std::move(browser_profile)); |
186 } | 186 } |
187 | 187 |
188 ResolveJavascriptCallback(base::StringValue(callback_id), browser_profiles); | 188 ResolveJavascriptCallback(base::Value(callback_id), browser_profiles); |
189 } | 189 } |
190 | 190 |
191 void ImportDataHandler::ImportStarted() { | 191 void ImportDataHandler::ImportStarted() { |
192 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 192 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
193 } | 193 } |
194 | 194 |
195 void ImportDataHandler::ImportItemStarted(importer::ImportItem item) { | 195 void ImportDataHandler::ImportItemStarted(importer::ImportItem item) { |
196 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 196 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
197 | 197 |
198 // TODO(csilv): show progress detail in the web view. | 198 // TODO(csilv): show progress detail in the web view. |
199 } | 199 } |
200 | 200 |
201 void ImportDataHandler::ImportItemEnded(importer::ImportItem item) { | 201 void ImportDataHandler::ImportItemEnded(importer::ImportItem item) { |
202 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 202 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
203 | 203 |
204 // TODO(csilv): show progress detail in the web view. | 204 // TODO(csilv): show progress detail in the web view. |
205 import_did_succeed_ = true; | 205 import_did_succeed_ = true; |
206 } | 206 } |
207 | 207 |
208 void ImportDataHandler::ImportEnded() { | 208 void ImportDataHandler::ImportEnded() { |
209 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 209 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
210 | 210 |
211 importer_host_->set_observer(NULL); | 211 importer_host_->set_observer(NULL); |
212 importer_host_ = NULL; | 212 importer_host_ = NULL; |
213 | 213 |
214 CallJavascriptFunction( | 214 CallJavascriptFunction( |
215 "cr.webUIListenerCallback", | 215 "cr.webUIListenerCallback", base::Value("import-data-status-changed"), |
216 base::StringValue("import-data-status-changed"), | 216 base::Value(import_did_succeed_ ? kImportStatusSucceeded |
217 base::StringValue(import_did_succeed_ ? kImportStatusSucceeded | 217 : kImportStatusFailed)); |
218 : kImportStatusFailed)); | |
219 } | 218 } |
220 | 219 |
221 void ImportDataHandler::FileSelected(const base::FilePath& path, | 220 void ImportDataHandler::FileSelected(const base::FilePath& path, |
222 int /*index*/, | 221 int /*index*/, |
223 void* /*params*/) { | 222 void* /*params*/) { |
224 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 223 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
225 | 224 |
226 importer::SourceProfile source_profile; | 225 importer::SourceProfile source_profile; |
227 source_profile.importer_type = importer::TYPE_BOOKMARKS_FILE; | 226 source_profile.importer_type = importer::TYPE_BOOKMARKS_FILE; |
228 source_profile.source_path = path; | 227 source_profile.source_path = path; |
(...skipping 19 matching lines...) Expand all Loading... |
248 base::string16(), | 247 base::string16(), |
249 base::FilePath(), | 248 base::FilePath(), |
250 &file_type_info, | 249 &file_type_info, |
251 0, | 250 0, |
252 base::FilePath::StringType(), | 251 base::FilePath::StringType(), |
253 browser->window()->GetNativeWindow(), | 252 browser->window()->GetNativeWindow(), |
254 NULL); | 253 NULL); |
255 } | 254 } |
256 | 255 |
257 } // namespace settings | 256 } // namespace settings |
OLD | NEW |