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 |