| 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 "components/search_engines/default_search_manager.h" | 5 #include "components/search_engines/default_search_manager.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 const char DefaultSearchManager::kInstantURLPostParams[] = | 60 const char DefaultSearchManager::kInstantURLPostParams[] = |
| 61 "instant_url_post_params"; | 61 "instant_url_post_params"; |
| 62 const char DefaultSearchManager::kImageURLPostParams[] = | 62 const char DefaultSearchManager::kImageURLPostParams[] = |
| 63 "image_url_post_params"; | 63 "image_url_post_params"; |
| 64 | 64 |
| 65 const char DefaultSearchManager::kSafeForAutoReplace[] = "safe_for_autoreplace"; | 65 const char DefaultSearchManager::kSafeForAutoReplace[] = "safe_for_autoreplace"; |
| 66 const char DefaultSearchManager::kInputEncodings[] = "input_encodings"; | 66 const char DefaultSearchManager::kInputEncodings[] = "input_encodings"; |
| 67 | 67 |
| 68 const char DefaultSearchManager::kDateCreated[] = "date_created"; | 68 const char DefaultSearchManager::kDateCreated[] = "date_created"; |
| 69 const char DefaultSearchManager::kLastModified[] = "last_modified"; | 69 const char DefaultSearchManager::kLastModified[] = "last_modified"; |
| 70 const char DefaultSearchManager::kLastVisited[] = "last_visited"; |
| 70 | 71 |
| 71 const char DefaultSearchManager::kUsageCount[] = "usage_count"; | 72 const char DefaultSearchManager::kUsageCount[] = "usage_count"; |
| 72 const char DefaultSearchManager::kAlternateURLs[] = "alternate_urls"; | 73 const char DefaultSearchManager::kAlternateURLs[] = "alternate_urls"; |
| 73 const char DefaultSearchManager::kSearchTermsReplacementKey[] = | 74 const char DefaultSearchManager::kSearchTermsReplacementKey[] = |
| 74 "search_terms_replacement_key"; | 75 "search_terms_replacement_key"; |
| 75 const char DefaultSearchManager::kCreatedByPolicy[] = "created_by_policy"; | 76 const char DefaultSearchManager::kCreatedByPolicy[] = "created_by_policy"; |
| 76 const char DefaultSearchManager::kDisabledByPolicy[] = "disabled_by_policy"; | 77 const char DefaultSearchManager::kDisabledByPolicy[] = "disabled_by_policy"; |
| 77 | 78 |
| 78 DefaultSearchManager::DefaultSearchManager( | 79 DefaultSearchManager::DefaultSearchManager( |
| 79 PrefService* pref_service, | 80 PrefService* pref_service, |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 data.suggestions_url_post_params); | 180 data.suggestions_url_post_params); |
| 180 url_dict.SetString(kInstantURLPostParams, data.instant_url_post_params); | 181 url_dict.SetString(kInstantURLPostParams, data.instant_url_post_params); |
| 181 url_dict.SetString(kImageURLPostParams, data.image_url_post_params); | 182 url_dict.SetString(kImageURLPostParams, data.image_url_post_params); |
| 182 | 183 |
| 183 url_dict.SetBoolean(kSafeForAutoReplace, data.safe_for_autoreplace); | 184 url_dict.SetBoolean(kSafeForAutoReplace, data.safe_for_autoreplace); |
| 184 | 185 |
| 185 url_dict.SetString(kDateCreated, | 186 url_dict.SetString(kDateCreated, |
| 186 base::Int64ToString(data.date_created.ToInternalValue())); | 187 base::Int64ToString(data.date_created.ToInternalValue())); |
| 187 url_dict.SetString(kLastModified, | 188 url_dict.SetString(kLastModified, |
| 188 base::Int64ToString(data.last_modified.ToInternalValue())); | 189 base::Int64ToString(data.last_modified.ToInternalValue())); |
| 190 url_dict.SetString(kLastVisited, |
| 191 base::Int64ToString(data.last_visited.ToInternalValue())); |
| 189 url_dict.SetInteger(kUsageCount, data.usage_count); | 192 url_dict.SetInteger(kUsageCount, data.usage_count); |
| 190 | 193 |
| 191 std::unique_ptr<base::ListValue> alternate_urls(new base::ListValue); | 194 std::unique_ptr<base::ListValue> alternate_urls(new base::ListValue); |
| 192 for (std::vector<std::string>::const_iterator it = | 195 for (std::vector<std::string>::const_iterator it = |
| 193 data.alternate_urls.begin(); | 196 data.alternate_urls.begin(); |
| 194 it != data.alternate_urls.end(); ++it) { | 197 it != data.alternate_urls.end(); ++it) { |
| 195 alternate_urls->AppendString(*it); | 198 alternate_urls->AppendString(*it); |
| 196 } | 199 } |
| 197 url_dict.Set(kAlternateURLs, alternate_urls.release()); | 200 url_dict.Set(kAlternateURLs, alternate_urls.release()); |
| 198 | 201 |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 | 275 |
| 273 if (!prefs_default_search_->safe_for_autoreplace) { | 276 if (!prefs_default_search_->safe_for_autoreplace) { |
| 274 engine->safe_for_autoreplace = false; | 277 engine->safe_for_autoreplace = false; |
| 275 engine->SetKeyword(prefs_default_search_->keyword()); | 278 engine->SetKeyword(prefs_default_search_->keyword()); |
| 276 engine->SetShortName(prefs_default_search_->short_name()); | 279 engine->SetShortName(prefs_default_search_->short_name()); |
| 277 } | 280 } |
| 278 engine->id = prefs_default_search_->id; | 281 engine->id = prefs_default_search_->id; |
| 279 engine->sync_guid = prefs_default_search_->sync_guid; | 282 engine->sync_guid = prefs_default_search_->sync_guid; |
| 280 engine->date_created = prefs_default_search_->date_created; | 283 engine->date_created = prefs_default_search_->date_created; |
| 281 engine->last_modified = prefs_default_search_->last_modified; | 284 engine->last_modified = prefs_default_search_->last_modified; |
| 285 engine->last_visited = prefs_default_search_->last_visited; |
| 282 | 286 |
| 283 prefs_default_search_ = std::move(engine); | 287 prefs_default_search_ = std::move(engine); |
| 284 return; | 288 return; |
| 285 } | 289 } |
| 286 } | 290 } |
| 287 | 291 |
| 288 void DefaultSearchManager::LoadDefaultSearchEngineFromPrefs() { | 292 void DefaultSearchManager::LoadDefaultSearchEngineFromPrefs() { |
| 289 if (!pref_service_) | 293 if (!pref_service_) |
| 290 return; | 294 return; |
| 291 | 295 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 346 url_dict->GetString(kInstantURLPostParams, | 350 url_dict->GetString(kInstantURLPostParams, |
| 347 &prefs_default_search_->instant_url_post_params); | 351 &prefs_default_search_->instant_url_post_params); |
| 348 url_dict->GetString(kImageURLPostParams, | 352 url_dict->GetString(kImageURLPostParams, |
| 349 &prefs_default_search_->image_url_post_params); | 353 &prefs_default_search_->image_url_post_params); |
| 350 | 354 |
| 351 url_dict->GetBoolean(kSafeForAutoReplace, | 355 url_dict->GetBoolean(kSafeForAutoReplace, |
| 352 &prefs_default_search_->safe_for_autoreplace); | 356 &prefs_default_search_->safe_for_autoreplace); |
| 353 | 357 |
| 354 std::string date_created_str; | 358 std::string date_created_str; |
| 355 std::string last_modified_str; | 359 std::string last_modified_str; |
| 360 std::string last_visited_str; |
| 356 url_dict->GetString(kDateCreated, &date_created_str); | 361 url_dict->GetString(kDateCreated, &date_created_str); |
| 357 url_dict->GetString(kLastModified, &last_modified_str); | 362 url_dict->GetString(kLastModified, &last_modified_str); |
| 363 url_dict->GetString(kLastVisited, &last_visited_str); |
| 358 | 364 |
| 359 int64_t date_created = 0; | 365 int64_t date_created = 0; |
| 360 if (base::StringToInt64(date_created_str, &date_created)) { | 366 if (base::StringToInt64(date_created_str, &date_created)) { |
| 361 prefs_default_search_->date_created = | 367 prefs_default_search_->date_created = |
| 362 base::Time::FromInternalValue(date_created); | 368 base::Time::FromInternalValue(date_created); |
| 363 } | 369 } |
| 364 | 370 |
| 365 int64_t last_modified = 0; | 371 int64_t last_modified = 0; |
| 366 if (base::StringToInt64(date_created_str, &last_modified)) { | 372 if (base::StringToInt64(last_modified_str, &last_modified)) { |
| 367 prefs_default_search_->last_modified = | 373 prefs_default_search_->last_modified = |
| 368 base::Time::FromInternalValue(last_modified); | 374 base::Time::FromInternalValue(last_modified); |
| 369 } | 375 } |
| 370 | 376 |
| 377 int64_t last_visited = 0; |
| 378 if (base::StringToInt64(last_visited_str, &last_visited)) { |
| 379 prefs_default_search_->last_visited = |
| 380 base::Time::FromInternalValue(last_visited); |
| 381 } |
| 382 |
| 371 url_dict->GetInteger(kUsageCount, &prefs_default_search_->usage_count); | 383 url_dict->GetInteger(kUsageCount, &prefs_default_search_->usage_count); |
| 372 | 384 |
| 373 const base::ListValue* alternate_urls = NULL; | 385 const base::ListValue* alternate_urls = NULL; |
| 374 if (url_dict->GetList(kAlternateURLs, &alternate_urls)) { | 386 if (url_dict->GetList(kAlternateURLs, &alternate_urls)) { |
| 375 for (base::ListValue::const_iterator it = alternate_urls->begin(); | 387 for (base::ListValue::const_iterator it = alternate_urls->begin(); |
| 376 it != alternate_urls->end(); | 388 it != alternate_urls->end(); |
| 377 ++it) { | 389 ++it) { |
| 378 std::string alternate_url; | 390 std::string alternate_url; |
| 379 if ((*it)->GetAsString(&alternate_url)) | 391 if ((*it)->GetAsString(&alternate_url)) |
| 380 prefs_default_search_->alternate_urls.push_back(alternate_url); | 392 prefs_default_search_->alternate_urls.push_back(alternate_url); |
| (...skipping 27 matching lines...) Expand all Loading... |
| 408 MergePrefsDataWithPrepopulated(); | 420 MergePrefsDataWithPrepopulated(); |
| 409 } | 421 } |
| 410 | 422 |
| 411 void DefaultSearchManager::NotifyObserver() { | 423 void DefaultSearchManager::NotifyObserver() { |
| 412 if (!change_observer_.is_null()) { | 424 if (!change_observer_.is_null()) { |
| 413 Source source = FROM_FALLBACK; | 425 Source source = FROM_FALLBACK; |
| 414 TemplateURLData* data = GetDefaultSearchEngine(&source); | 426 TemplateURLData* data = GetDefaultSearchEngine(&source); |
| 415 change_observer_.Run(data, source); | 427 change_observer_.Run(data, source); |
| 416 } | 428 } |
| 417 } | 429 } |
| OLD | NEW |