Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1194)

Unified Diff: components/content_settings/core/browser/content_settings_pref_provider.cc

Issue 2812113004: Write last_modified date to Content Settings in the PrefProvider (Closed)
Patch Set: fix ios Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/content_settings/core/browser/content_settings_pref_provider.cc
diff --git a/components/content_settings/core/browser/content_settings_pref_provider.cc b/components/content_settings/core/browser/content_settings_pref_provider.cc
index 43738618351c6995cda3dc7c58269c655f3fc680..fa0d96591dd5e67358c67c601122bc5dbccf84fd 100644
--- a/components/content_settings/core/browser/content_settings_pref_provider.cc
+++ b/components/content_settings/core/browser/content_settings_pref_provider.cc
@@ -80,9 +80,10 @@ void PrefProvider::RegisterProfilePrefs(
#endif // !defined(OS_IOS)
}
-PrefProvider::PrefProvider(PrefService* prefs, bool incognito)
- : prefs_(prefs),
- is_incognito_(incognito) {
+PrefProvider::PrefProvider(PrefService* prefs,
+ bool incognito,
+ bool store_last_modified)
+ : prefs_(prefs), is_incognito_(incognito) {
DCHECK(prefs_);
// Verify preferences version.
if (!prefs_->HasPrefPath(prefs::kContentSettingsVersion)) {
@@ -105,7 +106,7 @@ PrefProvider::PrefProvider(PrefService* prefs, bool incognito)
info->type(),
base::MakeUnique<ContentSettingsPref>(
info->type(), prefs_, &pref_change_registrar_, info->pref_name(),
- is_incognito_,
+ is_incognito_, store_last_modified,
base::Bind(&PrefProvider::Notify, base::Unretained(this)))));
}
@@ -155,6 +156,20 @@ bool PrefProvider::SetWebsiteSetting(
resource_identifier, in_value);
}
+// Delete a setting if its |last_modified| date is greater or equal to
+// |begin_time|.
raymes 2017/04/24 03:20:23 nit: this is in the header so it's not needed here
dullweber 2017/04/25 10:50:44 Done.
+void PrefProvider::DeleteWebsiteSetting(
+ const ContentSettingsPattern& primary_pattern,
+ const ContentSettingsPattern& secondary_pattern,
+ ContentSettingsType content_type,
+ base::Time begin_time) {
+ DCHECK(CalledOnValidThread());
+ DCHECK(prefs_);
+
+ return GetPref(content_type)
+ ->DeleteWebsiteSetting(primary_pattern, secondary_pattern, begin_time);
+}
+
void PrefProvider::ClearAllContentSettingsRules(
ContentSettingsType content_type) {
DCHECK(CalledOnValidThread());

Powered by Google App Engine
This is Rietveld 408576698