| Index: components/browsing_data/core/browsing_data_utils.cc
|
| diff --git a/components/browsing_data/core/browsing_data_utils.cc b/components/browsing_data/core/browsing_data_utils.cc
|
| index dfd254055927b8c416302e860e7334b12a7a6337..33e03d745efa7ae6e126a5201bb5f5713d503f31 100644
|
| --- a/components/browsing_data/core/browsing_data_utils.cc
|
| +++ b/components/browsing_data/core/browsing_data_utils.cc
|
| @@ -9,6 +9,7 @@
|
| #include "components/browsing_data/core/counters/history_counter.h"
|
| #include "components/browsing_data/core/counters/passwords_counter.h"
|
| #include "components/browsing_data/core/pref_names.h"
|
| +#include "components/prefs/pref_service.h"
|
| #include "grit/components_strings.h"
|
| #include "ui/base/l10n/l10n_util.h"
|
|
|
| @@ -85,7 +86,8 @@ base::string16 GetCounterTextFromResult(
|
| ? IDS_DEL_PASSWORDS_COUNTER
|
| : IDS_DEL_DOWNLOADS_COUNTER,
|
| count);
|
| - } else if (pref_name == browsing_data::prefs::kDeleteBrowsingHistory) {
|
| + } else if (pref_name == browsing_data::prefs::kDeleteBrowsingHistory ||
|
| + pref_name == browsing_data::prefs::kDeleteBrowsingHistoryBasic) {
|
| // History counter.
|
| const browsing_data::HistoryCounter::HistoryResult* history_result =
|
| static_cast<const browsing_data::HistoryCounter::HistoryResult*>(
|
| @@ -169,9 +171,34 @@ base::string16 GetCounterTextFromResult(
|
| return text;
|
| }
|
|
|
| +const char* GetTimePeriodPreferenceName(
|
| + ClearBrowsingDataPreferenceType pref_type) {
|
| + return pref_type == ClearBrowsingDataPreferenceType::BASIC
|
| + ? prefs::kDeleteTimePeriodBasic
|
| + : prefs::kDeleteTimePeriod;
|
| +}
|
| +
|
| bool GetDeletionPreferenceFromDataType(
|
| BrowsingDataType data_type,
|
| + ClearBrowsingDataPreferenceType pref_type,
|
| std::string* out_pref) {
|
| + if (pref_type == ClearBrowsingDataPreferenceType::BASIC) {
|
| + switch (data_type) {
|
| + case HISTORY:
|
| + *out_pref = prefs::kDeleteBrowsingHistoryBasic;
|
| + return true;
|
| + case CACHE:
|
| + *out_pref = prefs::kDeleteCacheBasic;
|
| + return true;
|
| + case COOKIES:
|
| + *out_pref = prefs::kDeleteCookiesBasic;
|
| + return true;
|
| + default:
|
| + // This is not a valid type for the basic tab.
|
| + NOTREACHED();
|
| + return false;
|
| + }
|
| + }
|
| switch (data_type) {
|
| case HISTORY:
|
| *out_pref = prefs::kDeleteBrowsingHistory;
|
| @@ -201,4 +228,18 @@ bool GetDeletionPreferenceFromDataType(
|
| return false;
|
| }
|
|
|
| +void MigratePreferencesToBasic(PrefService* prefs) {
|
| + if (!prefs->GetBoolean(prefs::kPreferencesMigratedToBasic)) {
|
| + prefs->SetBoolean(prefs::kDeleteBrowsingHistoryBasic,
|
| + prefs->GetBoolean(prefs::kDeleteBrowsingHistory));
|
| + prefs->SetBoolean(prefs::kDeleteCacheBasic,
|
| + prefs->GetBoolean(prefs::kDeleteCache));
|
| + prefs->SetBoolean(prefs::kDeleteCookiesBasic,
|
| + prefs->GetBoolean(prefs::kDeleteCookies));
|
| + prefs->SetInteger(prefs::kDeleteTimePeriodBasic,
|
| + prefs->GetInteger(prefs::kDeleteTimePeriod));
|
| + prefs->SetBoolean(prefs::kPreferencesMigratedToBasic, true);
|
| + }
|
| +}
|
| +
|
| } // namespace browsing_data
|
|
|