| 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
 | 
| 
 |